Last updated by 11 months ago

Page: 2.2.2 Release Notes, Version:1

Grails 2.2.2 Release Notes

Grails is a dynamic web application framework built on Java and Groovy, leveraging best of breed APIs 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.

Upgrade Notes

If upgrading from 2.2.0, there are a couple of changes introduced 2.2.1 that may require changes to your application:

Location of stacktrace.log

See GRAILS-2730 - The location of stacktrace.log now defaults to either the Tomcat logs directory when deploying on Tomcat or the location specified by the java.io.tmpdir system property. It is recommended that you override the stacktrace logger and provide an appropriate location, for example via

log4j = {
    appenders {
        file name: "stacktrace", append: true,
             file: "/var/tmp/logs/${appName}_stacktrace.log"
    }
    …
}

See the user guide on logging configuration for more details.

Behaviour of @Mock in unit tests

See GRAILS-9637 - Due to a performance issue, @Mock no longer mocks associated entities of the mocked entity. These have to be manually specified. For example the following test will fail in 2.1.4 and above:

@Mock(Author)
void testAddToBooks() {
    def a = new Author()
    a.addToBooks(new Book())
}

To correct the above test you need to mock both Author and Book:

@Mock([Author, Book])
void testAddToBooks() {
    def a = new Author()
    a.addToBooks(new Book())
}

Release Information