Welcome!

Java IoT Authors: Liz McMillan, Elizabeth White, Yeshim Deniz, Zakia Bouachraoui, Pat Romanski

Related Topics: Java IoT

Java IoT: Press Release

OpenXava 5.0 Released

Rapid Development for Java

OpenXava is an Java Framework for Rapid Development of Enterprise Web Applications. In OpenXava you only have to write the domain classes in plain Java to get a web application ready for production.
This 5.0 release has a new look & feel, includes module navigation, user login/logout (so you do not need Liferay anymore), inline editable collections (just like a spreadsheet), a new editor to attach files to your entity, and many many more things.

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

New look & feel

Just have a look at the demo to see the new look & feel.

Module navigation

At last, your OpenXava applications will include menus to access the modules:


So, you do not need use Liferay for providing module navigation to your application, a simple Tomcat is enough. Anyways, you can still deploy your application on Liferay where these new menus are not shown.

User login

Now your application will ask your user to sign in:

So, you do not need to use Liferay to provide user login/logout. Anyways, If you deploy on Liferay this login/logout mechanism will not be used. Moreover, you can disable it if you wish, for testing or for public applications.

Editable collections

In OpenXava 5.0 you can have collections like this one:

Where the user can modify any property of any element in any moment, and where all collection elements are saved at once when the main entity is saved.
These collections are defined using @ElementCollection, a new annotation of JPA 2 specification. These are collections of embeddable object (not entities).
For defining an element collection just use @ElementCollection instead of @OneToMany: Download OpenXava 5.0

@ElementCollection
@ListProperties("product.number, product.description," +
    "product.unitPrice, quantity, " +
    "amount[invoice.sum, invoice.vat, invoice.total]")
private Collection<InvoiceDetail> details;

And define the class for the element collection as @Embeddable instead of @Entity:

@Embeddable
public class InvoiceDetail {

The generated user interface for this code will be:


You can see how these collections support calculated properties, references, totals, etc.

Editor to attach files

Until now to attach files to your entities you should create your own editor. That is no longer needed, now you can use the new FILE stereotype, thus:

@Stereotype("FILE")
@Column(length=32)
private String trailer;

To get this:

It can be configured to store the files in the database or the file system.

Others improvements

We have done a lot of improvements in other areas:

  • New renderer engine to layout the user interface.
  • Look and feel of date editor improved.
  • Several reports in one PDF with the new JasperConcatReportBaseAction.
  • @Collapsed annotation to initiate collections and references with the frame closed. Also allowed in XML components.
  • New NoCustomizeList controller for disabling list customization to a specific module.
  • The user can share a report of 'My reports' with all other users.
  • New Addons project added to distribution to contain extended features outside of the OpenXava core.
  • New InvoiceDemo project added to distribution.
  • Groovy upgraded to 2.2.2.
  • JasperReports upgraded to 5.5.1.
  • DWR upgraded to 2.0.10.
  • JSTL upgraded to 1.2 using Apache Standard Taglibs 1.2.1.
  • JavaMail upgraded to 1.5.1.
  • Upgrade of commons libraries to: beanutils 1.8.0, logging 1.1.1, digester 2.1, codec 1.9, fileupload 1.3.1, io 2.4, lang 2.6, validator 1.4.0.
  • Upgrade to Servlet 2.5 and JSP 2.1.
  • Added Commons Lang3 3.2.1 library.
  • Tomcat 7 included in distribution.
  • Dropped IE6, IE7 and IE8 support.
  • Using module.jsp to execute modules from browser is no longer supported.
  • Dropped Java 5 support, from now on Java 6 or better is required.
  • Dropped WebSphere 6.1 and WebSphere Portal 6.1 support.
  • Dropped Tomcat 5.5 support.
  • Removed jakarta-oro library, only used by older commons-validator.
  • ejb.jar and jpa.jar added to WEB-INF/lib to facilitate deploying in Tomcat.
  • MiEscuela project removed from distribution.
  • AccessTracking removed from OpenXava distribution.
  • Objects class from org.openxava.util removed, you can use XObjects instead.
  • New is/setCollapsed() methods in View to close a frame of a reference or collection programmatically.
  • Added validateMinimum() and validateMaximum() to CollectionElementViewBaseAction.
  • New getPopupPDFPageCount() method in ModuleTestBase.
  • New methods setValueInCollection(), assertEditableInCollection() and assertEditableInCollection() in ModuleTestBase.
  • New method noFirstTokenWithoutFirstDelim() in Strings.
  • When @Digits is specified default scale is ignored even if fraction is not specified.
  • Performance of delete action in detail mode action improved.
  • Improved behavior with READ COMMITED isolation level.
  • New commit() and rollback() methods in BaseAction.
  • Methods Is.emptyString() and Is.emptyStringAll() allow infinite number of arguments.
  • clearCondition() method removed from ModuleTestBase.

Bug fixes

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

  • Fix: Double border when using .ox-frame in the CSS with new renderer.
  • Fix: Totals in collections frames are not shown with the new renderer.
  • Fix: assertListRowCount() method from ModuleTestBase fails when the value of summationInList property is false.
  • Fix: Subcontrollers fails in split mode.
  • Fix: Incorrect encoding in emails sent by Emails class.
  • Fix: Members inside @NoFrame are not aligned with the outside members.
  • Fix: Incorrect default size for java.lang.Boolean.
  • Fix: View broken on reload if the module is inside a HTML table.
  • Fix: Simple property after group without ; does not layout correctly.
  • Fix: A reference with @NoFrame inside a group produces an ugly layout.
  • Fix: Error messages for @Size in collections show 'Element' in English always, even if English is not used.
  • Fix: Top field with little margin on top with the new renderer.
  • Fix: Html id for frames not correct for references with new renderer.
  • Fix: Properties aligned by column when it should not in the new renderer.
  • Fix: Property icons are not aligned correctly with the new renderer.
  • Fix: Scale defined in default-size.xml is ignored when formatting.
  • Fix: Scale definition from @Column and @Digits is ignored when formatting.
  • Fix: The @LabelStyle annotation is not supported with the new renderer.

Download OpenXava 5.0

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.

IoT & Smart Cities Stories
The deluge of IoT sensor data collected from connected devices and the powerful AI required to make that data actionable are giving rise to a hybrid ecosystem in which cloud, on-prem and edge processes become interweaved. Attendees will learn how emerging composable infrastructure solutions deliver the adaptive architecture needed to manage this new data reality. Machine learning algorithms can better anticipate data storms and automate resources to support surges, including fully scalable GPU-c...
Machine learning has taken residence at our cities' cores and now we can finally have "smart cities." Cities are a collection of buildings made to provide the structure and safety necessary for people to function, create and survive. Buildings are a pool of ever-changing performance data from large automated systems such as heating and cooling to the people that live and work within them. Through machine learning, buildings can optimize performance, reduce costs, and improve occupant comfort by ...
The explosion of new web/cloud/IoT-based applications and the data they generate are transforming our world right before our eyes. In this rush to adopt these new technologies, organizations are often ignoring fundamental questions concerning who owns the data and failing to ask for permission to conduct invasive surveillance of their customers. Organizations that are not transparent about how their systems gather data telemetry without offering shared data ownership risk product rejection, regu...
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
Poor data quality and analytics drive down business value. In fact, Gartner estimated that the average financial impact of poor data quality on organizations is $9.7 million per year. But bad data is much more than a cost center. By eroding trust in information, analytics and the business decisions based on these, it is a serious impediment to digital transformation.
Digital Transformation: Preparing Cloud & IoT Security for the Age of Artificial Intelligence. As automation and artificial intelligence (AI) power solution development and delivery, many businesses need to build backend cloud capabilities. Well-poised organizations, marketing smart devices with AI and BlockChain capabilities prepare to refine compliance and regulatory capabilities in 2018. Volumes of health, financial, technical and privacy data, along with tightening compliance requirements by...
Predicting the future has never been more challenging - not because of the lack of data but because of the flood of ungoverned and risk laden information. Microsoft states that 2.5 exabytes of data are created every day. Expectations and reliance on data are being pushed to the limits, as demands around hybrid options continue to grow.
Digital Transformation and Disruption, Amazon Style - What You Can Learn. Chris Kocher is a co-founder of Grey Heron, a management and strategic marketing consulting firm. He has 25+ years in both strategic and hands-on operating experience helping executives and investors build revenues and shareholder value. He has consulted with over 130 companies on innovating with new business models, product strategies and monetization. Chris has held management positions at HP and Symantec in addition to ...
Enterprises have taken advantage of IoT to achieve important revenue and cost advantages. What is less apparent is how incumbent enterprises operating at scale have, following success with IoT, built analytic, operations management and software development capabilities - ranging from autonomous vehicles to manageable robotics installations. They have embraced these capabilities as if they were Silicon Valley startups.
As IoT continues to increase momentum, so does the associated risk. Secure Device Lifecycle Management (DLM) is ranked as one of the most important technology areas of IoT. Driving this trend is the realization that secure support for IoT devices provides companies the ability to deliver high-quality, reliable, secure offerings faster, create new revenue streams, and reduce support costs, all while building a competitive advantage in their markets. In this session, we will use customer use cases...