Breaking news, industry blogs and live commentary

IBM News on Ulitzer

Subscribe to IBM News on Ulitzer: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get IBM News on Ulitzer: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


IBM Journal Authors: Yeshim Deniz, Elizabeth White, Liz McMillan, Janakiram MSV, Jason Bloomberg

Related Topics: IBM Journal

IBM Journal: Article

OpenXava 5.3: Open Source Tool for Developing WebSphere Applications

OpenXava 5.3: Open Source Tool for Developing WebSphere Applications

OpenXava is an Open Source Tool for Rapid Development of WebSphere Applications.
In OpenXava you only have to write the domain classes in plain Java to get a web application ready to be deployed on WebSphere Application Server or WebSphere Portal.
OpenXava 5.3 has charts automatically generated form list data, sortable lists with drag & drop, upgrade to JPA 2.1 and Bean Validation 1.1, and many more things.

We invite you to download it and upgrade your OpenXava applications. Look at the migration instructions.

Charts

In the list mode of all your OpenXava modules now you have a new action, Charts:

When you click on this action a dialog like this is shown:

It allows you to generate several type of charts from the data of your list.
Try it yourself.

Sortable lists with drag & drop

Now you can have a collection that your user can order using drag & drop and keeps the order of the elements in the database. You only have to use java.util.List instead of java.util.Collection and to annotate the collection with @OrderColumn:

@OneToMany(mappedBy="project", cascade=CascadeType.ALL)
@OrderColumn
private List<ProjectTask> tasks;


From the above code OpenXava 5.3 generates the next user interface:

Where the user can order the rows with drag & drop and the order is persisted.
Try it yourself.

JPA 2.1 and Bean Validation 1.1

OpenXava 5.3 supports latest JPA specification, Java Persistence 2.1, with  the next new features:

  • Converters allowing custom code conversions between database and object types.
  • Criteria Update/Delete allows bulk updates and deletes through the Criteria API.
  • Stored Procedures allows queries to be defined for database stored procedures.
  • ConstructorResult support for SQLResultSetMapping.
  • Runtime creation of named queries.
  • Injectable EntityListeners.
  • Unsynchronized persistence contexts.
  • DDL generation automatic table, index and schema generation.
  • Entity Graphs allow partial or specified fetching or merging of objects.
  • JPQL/Criteria enhancements, such as arithmetic sub-queries, generic database functions, join ON clause, TREAT option.

Bean Validation has been upgraded to 1.1, the main practical benefit of it is that now you have many more validation annotations. Look at the list of built-in constraints of Bean Validation 1.1.


Other improvements

We have done a lot of improvements in other areas:

  • Combo has no blank option in enum properties with @Required.
  • @RemoveSelectedAction available for @ElementCollection.
  • New properties startInLastVisitedModule and rememberVisitedModules in naviox.properties.
  • Hibernate upgraded to 4.3.9.
  • Hibernate Validator upgraded to 5.1.3.
  • Classic Hibernate Validator (3.1) dropped.
  • New projects include a controllers.xml file by default.
  • New method assertValidValueExists() in ModuleTestBase.
  • Ant target updateSchema no longer supported for XML components.
  • Automated Business Logic (ABL) library dropped.
  • HSQLDB used in sample projects upgraded to 2.3.2.

Bug fixes

Though this is not a maintenance version we have done some fixes:

  • Fix: Creating a new element in a collection with @OrderColumn fails.
  • Fix: Obsolete hibernate namespace.
  • Fix: Disabled dialogs using Liferay 5.1 style.
  • Fix: Apostrophes in messages missing sometimes.

Download OpenXava 5.3

More Stories By Javier Paniza

Javier Paniza is the project lead for OpenXava project. He works as software developer at Gestión 400, a software company for public administration in Spain. He has been developing with Java Enterprise since 1998. Also he has been J2EE mentor for development teams in banking projects.