SpringSource, which is now a division of VMware, released on Wednesday the 1.2 version of the Grails dynamic language framework for the Java Virtual Machine.
The general release follows the December 16 general availability of Spring Framework 3.0 for Java application development. Accessible at this Web page, Grails 1.2 offers significant new features, said Graeme Rocher, head of Grails development at SpringSource, in a blog post. Grails was built on the Groovy language.
[ The JVM is beecoming a popular spot for dynamic languages. ]
"Representing the most stable and performant Grails release yet, Grails 1.2 is a significant new release of the premier dynamic language framework for the JVM," Rocher said
In addition to supporting Spring 3.0, Grails 1.2 has dependency resolution offering full control over JAR (Java Archive) dependencies. Improved Spring integration is featured along with named query support. A named URL capability allows developers to create more explicit and expressive links inside GSPs (GrooverServer Pages).
Version 1.2 also offers a refactored testing infrastructure, which is pluggable to new providers. Pluggable Web containers allow different development time containers to be installed. Plugins are available for Apache Tomcat and Jetty Web servers.
Hundreds of bug fixes and small improvements also are featured in Grails 1.2, Rocher said.
Spring 3.0 had been available in a release candidate stage -- the stage at which the project is considered feature-complete enough to be considered for general release - since early this fall.
Spring 3.0 features capabilities such as simplifications in the Spring MVC (Model View Controller) framework and support for RESTful applications. "REST is becoming much more popular as part of a remoting philosophy," said Rod Johnson, general manager of SpringSource.
Other features include SpEL (Spring expression language), featuring a core expression parser for use in bean definitions. Also, extended support is offered for annotation-based components. Spring 3.0 has full support for dependency injection in Java based on Java Specification Request 330.
Next-generation scheduling capabilities are featured as is Object/XML mapping. The framework is downloadable from this Web page.