Point of Sale Application on the NetBeans Platform
Mopis in Brazil is a new and promising company that provides a nice commercial solution for mobile payment services. It offers an exclusive system that allows electronic payments, as debit, credit, or by cell phone.
Anyone can be a customer of Mopis. If you have the application in your mobile (J2ME app), you can use it as a credit card to make a payment, you then simply need to generate a 2D barcode with your cell phone and provide it to the shopkeeper. The shopkeeper has another J2ME application in a mobile phone to receive the barcode. Alternatively, the shopkeeper can use a desktop application, which is developed on the NetBeans Platform:
If everything is OK, you then pay the bill and check-out.
We are using Java EE 6 (EJB 3.1, CDI, JPA 2.0, Servlets 3.0) and Glassfish V3 to develop the Credit Platform, J2ME to both mobile applications (customer and shopkeeper application) and NetBeans Platform to develop our PoS (Point Of Sale) application.
I am the solutions architect and developer of the credit platform and the PoS application, based on NetBeans Platform.
Why NetBeans Platform?
Well I've used the NetBeans IDE since version 4 as my primary tool. In that time, in Brazil, a well known training company called Globalcode was running the "Desafio NetBeans", a NetBeans plug-in writing contest, which was my first contact with the NetBeans Platform, through a workshop with Tim Boudreau and Charlie Hunt.
For the contest, I created a plug-in to Hibernate, a module that provides basic support for generating Hibernate mappings. It was quite cool, I enjoyed the experience, and since then I've made some other plugins, such as CodeGen, a plugin that overrides equals and hashcode methods, as well as Diamond Powder, and others.
In short, I chose the NetBeans Platform because it saved me a lot of energy and development time and I love the modular nature of it all, the Window System, Actions, Lookups, and so on!
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)