Interview: What’s New in Spring Roo 1.1.1?
JAXenter speaks to Spring Roo project lead Ben Alex.
Spring Roo version 1.1.1 introduced a host of updates:
enhanced support for VMforce, GWT and JSON REST controllers, and an
upgraded version of Data Nucleus. JAXenter spoke to the project
lead Ben Alex, to find out more about these updates….
JAXenter: What advancements has Roo made, in
the area of cloud persistence?
Ben Alex: Spring Roo 1.1.1 has extended our
support for Google App Engine’s DataStore API as well as VMforce.
Both of these cloud database solutions use Data Nucleus, so we’ve
increased Roo’s support for newer versions of Data Nucleus, as well
as each cloud persistence technology API. For Google App Engine
we’ve also introduced transparent persistence for associated
objects. This means Roo’s ITDs automatically manage the storage and
retrieval of the correct identifiers, performing lookups
automatically as accessors are called. This makes it simpler to
write applications that persist to Google App Engine DataStore.
JAXenter: What new features have been added,
for Spring MVC app developers using Spring Roo?
Ben Alex: Several enhancements have been made
to Spring MVC support in Spring Roo 1.1.1. One of these was the
introduction of an application-wide ConversionService. This
represents an improvement over the previous release in which every
Controller had their own Converter. We also extended the REST
support available for JSON payloads. From Roo 1.1.1 there is full
and automatic support for JSON-based PUT, PUT (COLLECTION), DELETE
and GET operations. We also updated our Spring Security support to
the latest release, and made a number of smaller enhancements.
JAXenter: How does Roo 1.1.1 attempt to
indicate which Spring Roo extensions are worth using?
Ben Alex: Spring Roo 1.1.1 helps users
determine add-ons they may like to install in a number of ways. The
first is the new “add-on search” command, which can perform
flexible searches of all publicly available add-ons. Roo also makes
automatic suggestions about add-ons a user may be interested in
based on commands they’re typing, and also drivers they might
require (e.g. if they query a database, Roo will suggest the add-on
which offers the relevant JDBC driver). Roo’s search results also
indicate whether an add-on is compatible with the current version
of Roo, is written by a developer the user has indicated they
trust, and the popularity of the add-on within the overall Roo
JAXenter: What is the ‘Spring User Agent
Analysis,’ included in this release?
Ben Alex: Spring UAA allows us to collect
anonymous usage information if the user has consented. For example,
UAA collects information about the usage of public Roo add-ons.
This allows us to offer higher quality add-on search results,
highlighting those which are most popular in the Roo community.
We also use this information to help guide our roadmap, allowing
us to prioritize the features most valued by the community and
optimize the compatibility of technologies frequently used
together. Of course privacy is very important and UAA is disabled
by default. It will not collect any information without first
obtaining permission and any data it collects is anonymous.
JAXenter: What are the next steps for Spring
Ben Alex: There will be several more Spring Roo
1.1.x series releases over the coming months. While we doubled
performance in Roo 1.1.1, there’s still some scope for further
improvement for very large projects (such as those with many
hundreds of entities). We’ll also be addressing some smaller
improvements, such as enhancements to the Google Web Toolkit (GWT)
add-on. Roo 1.2 won’t be far behind and will include some major new
features sought by the Roo community, including multi-project Maven
support, a Java Server Faces (JSF) add-on, and support for
user-defined DAO and Services Layers.