Normally, talk of Java development technologies doesn't make anybody think of "Winnie the Pooh" characters or the land Down Under, even if the founder of the popular Spring Framework for Java, Rod Johnson, is himself Australian. But that could change this week at the JavaOne conference in San Francisco.
Johnson, CEO of SpringSource, will detail a new project, Spring Roo, which shares a name with a kangaroo from the Winnie the Pooh series. He also plans to discuss the upcoming Spring Framework 3.0.
Emerging from the Australia branch of SpringSource, Roo aids in development and enhancement of Spring applications with minimal hand-coding, Johnson, said. "Roo is essentially a round-tripping code generator," Johnson said. "What it is does is it gives you a kind of high-level syntax that enables you to create an application and also add functionality to an existing application."
Originally an acronym for "Real Object Oriented," Roo can generate Java code, servlets, deployment descriptors, and JavaServer Pages. Originally discussed at the recent SpringOne Europe 2009 conference in Amsterdam, SpringSource was set to put out the first stable release of Roo last week.
"Roo is actually pretty interesting for a couple of reasons," said analyst Kirk Knoernschild, of Burton Group. "One, it allows you to generate a skeleton Spring 3.0-based application using code generation capabilities and out of the box, when using Roo, you get a few nice things. It creates the directory structure, it can set up the login and configuration files, database configuration details."
But Roo probably will not be of interest to shops not using the Maven build manager for Java, which is leveraged by Roo, Knoernschild said.
Spring 3.0, due in the August time frame, will introduce Spring Expression Language, allowing a way of expressing values in Java code or an XML configuration. "It's a way of writing expressions that very easily make available values that you might want to see," Johnson said.
Also highlighted is enhanced REST support for Spring's MVC framework and component model. "We see that REST is really getting a groundswell of developer adoption," Johnson said.
"REST is dramatically simpler" than traditional, SOAP-base Web services, he said.
Spring 3.0 also leverages language features in Java 5, such as annotations, generics, and parameterization of types, which involves building object collections. "[Parameterization] enables you to write code that's more concise," Johnson said.
Spring 3.0 also will prune some features, such as TopLink object-relational mapping integration. Oracle, which owns the TopLink technology, has been moving away from it in favor of EclipseLink, Johnson said. Support also will be removed for some open source projects no longer in development, Johnson said.
Users interested in TopLink could continue to use Spring 2.5 with version 3.0, Johnson said.
Despite the deprecation of some features, Johnson believes upgrading will be similar to moving to previous versions of Spring. "It's going to be a pretty easy upgrade for the vast majority of users," he said.
Various editions of the Spring Framework have been downloaded more than 6 million times since 2003, Johnson said.