-
Notifications
You must be signed in to change notification settings - Fork 6
ClearJS Benefits
ClearJS has three primary benefits:
- support of the JEE transactions during Ext JS store sync,
- annotation driven code generation of Java and Ext JS classes for data access
- Wizard-based creation of JEE-ExtJS Eclipse projects with Spring, Hibernate and MyBatis support
ClearJS enables transactional sync of it's clear.data.DirectStore with the Java implementation of the Ext.Direct - DirectJNgine.
Native Ext.data.DirectStore is not transactional. When you sync it, it issues three POST requests to the server, assuming the you deleted some items in the store and also modified some and added a few. The first POST will commit all deletes, the second - all updates and the third one - all inserts. That's not an atomic operation.
ClearJS provides clear.data.DirectStore class to use instead of Ext.data.DirectStore. It supports true atomic transactions: you either commit all changes or rollback entire operation.
ClearJS allows you to reduce or completely eliminate writing of your Java and JavaScript classes related to data access.
ClearJS contains two code-generator engines. The first generates code for Java data access services, while the second one generates ExtJS model classes based on the Java DTO or Hibernate entities.
The Java services code generator expects specially annotated Java interfaces. In case of MyBatis development you will extend a class generated from the interface and use your manually created DTO and mappers. In case of Hibernate you literally write nothing except of interfaces.
The Java-to-ExtJS code generator automates creation of the ExtJS model classes based on the annotations you place in the Java DTO or Hibernate entities.
ClearJS boosts development productivity via it's setup Eclipse Wizard. You can create an Eclipse Ext JS/JEE project, complete with DirectJNgine, Spring and/or Hibernate in just a few seconds
When you step through the Wizard dialogs ClearJS performs the deployment and configuration automatically. It adds the DirectJNgine jars along with the few custom classes extending it to accomodate transactional store sync on the Java side. If you are a Hibernate fan, you are checkbox away from making your datasources Hibernate-based. If you need to use Spring ClearJS will deploy Spring jars and change the web-application configuration to be Spring compliant.