Last updated by 1 year ago

Page: 1.2-M1 Release Notes, Version:5

Grails 1.2-M1 Release Notes

29th of June 2009

SpringSource are pleased to announce the 1.2 Milestone 1 release of the Grails web application development framework.

Grails is a dynamic web application framework built on Java and Groovy, leveraging best of breed APIs from the Java EE sphere including Spring, Hibernate and SiteMesh. Grails brings to Java and Groovy developers the joys of convention-based rapid development while allowing them to leverage their existing knowledge and capitalize on the proven and performant APIs Java developers have been using for years.

Further information about the release can be obtained using the links below:

New features in 1.2 Milestone 1 are described below. The objectives for Milestone 2 are standalone GSP, the upgrade to Spring 3 and continued incremental improvements to core.

New Features

Precompilation of Groovy Server Pages in WAR deployment

GSPs are now pre-compiled when producing a WAR file meaning less permgen space is used at deployment time for Grails applications.

Named URL Mappings

Grails now supports named URL mappings and associated dynamic tags for view layer URL rewriting. For example:

name productDetail: "/showProduct/$productName/$flavor?" {
   controller = "product"
   action = "show"

The above creates a named URL mapping called "productDetail" this can be linked to from the view with:

<link:productDetail productName="licorice" flavor="strawberry">
Strawberry Licorice

Project Documentation Engine

The same documentation engine that powers the Grails reference documentation is now available in your projects. Simply create your documentation inside the src/doc/ref and src/doc/guide directories of your project. See the Grails documentation source for an example.

Plugin Metadata Generator

When releasing a plugin into the Grails central repository metadata is generated about the methods and properties added to Grails classes at runtime.

This metadata is put into the plugin.xml descriptor and can be read by IDEs and documentation engines.

If your plugin doesn't add methods at runtime you can skip the metadata generation process by doing:

grails release-plugin --skipMetadata