Grails Diary - Week 10 in 2014

10 March 2014

This week has offered both a new Grails release, of version 2.3.7, a bugfix release of version 2.2.5, and the first milestone release of Grails 2.4.0, which uses Groovy 2.2 and Spring-framework 4. The 2.3.7 version has issues with the Hibernate plugin it ships with, for multiple datasources and providers like Mongo, so it is recommended to upgrade it to":hibernate:3.6.10.10"

Cédric Champeau is working on Traits for Groovy, and you are encouraged to test and review, on the open pull request

Peter Ledbrook promotes a discussion on the mailing list, about correct use of HTTP status codes: http://grails.1312388.n4.nabble.com/REST-status-codes-td4654080.html

The description of the bug in the resources plugin, which causes information disclosure, is updated with more information on mitigation strategies: CVE-2014-0053

Should blocks in Spock tests be indented? Zan Trash started an interesting discussion on twitter.

In another twitter thread, Ted Naleid has started working on a pre-built way to compile js files with replaceable values for the asset-pipeline plugin. He has recently submitted the groovy-template-grails-asset-pipeline plugin.

I'll be at Greach in the end of March. Catch me if you have comments or suggestions for the Grails Diary, or just wish to chat :)

Videos of presentations

Blogs, articles, etc.

New Plugins

  • Spring Websocket Plugin Spring Websocket Plugin
  • CDN Asset Pipeline Plugin Provides Gant scripts to automatically upload Grails app static assets to CDNs. Those scripts can easily be integrated to a build pipeline for continuous delivery/deployment. It uses Asset Pipeline Grails Plugin to precompile assets and Karman Grails Plugin to upload files to various Cloud Storage Services.

Updated Plugins

  • Vaadin 7 Plugin Grails plugin integrating Vaadin 7 into the Grails project.
  • Segment.io Plugin The Segment.io Plugin allows your Grails application to use Segment.io. Segment.io lets you send your analytics data to any service you want, without you having to integrate with each one individually.
  • Provides Mail support to a running Grails application This plug-in provides a MailService class as well as configuring the necessary beans within the Spring Applicatio
  • Apache Camel Plugin Provides message routing capabilities using Apache Camel
  • Grails Scaffolding Plugin Handles the configuration of dynamic scaffolding
  • Dailymotion for Spring Security OAuth plugin Integrate Dailymotion to Spring Security OAuth plugin.
  • Redis Flexible Cache Plugin This plugin is an alternative to redis-cache-plugin. It gives the possibility to set the expire time in seconds for every cached key, and provides a service, annotations and injected methods to perform entry caching and eviction. The redis-plugin plugin also provides the possibility to set a TTL for a cached entry (using the provided @Memoize annotation), but it lacks the option to serialize any kind of Serializable objects (only object ids are cached and then hydrated from main DB). This means ...
  • Hibernate 3 for Grails Provides integration between Grails and Hibernate 3 through GORM
  • Caching Headers Plugin Improve your application performance with browser caching, with easy ways to set caching headers in controller responses
  • Akka Integration Akka actors integration from Groovy and Java, in a Servlet 3.x environment
  • Ehcache Cache Plugin An Ehcache-based implementation of the Cache plugin
  • Hibernate 4 for Grails Provides integration between Grails and Hibernate 4 through GORM
  • Build Test Data Plugin Enables the easy creation of test data by automatic inspection of constraints. Any properties that are required have their constraints examined and a value is automatically provided for them.
  • Grails Phonenumbers Plugin Adds support for using Google's libphonenumber library to validate phone numbers
  • Ember.js Asset-Pipeline Plugin Provides Ember.js integration with asset-pipeline. Allows for handlebars precompilation as well as scaffolding for building an emberjs application.
  • Handlebars Asset-Pipeline Plugin Provides Handlebars precompiler support for the asset-pipeline static asset management plugin.
  • Grails Mandrill Plugin This is a simple wrapper for the Mandrill REST API (http://www.mandrillapp.com)
  • Spring Security REST Plugin Implements authentication for REST APIs based on Spring Security. It uses a token-based workflow
  • Apache Tomcat plugin for Grails Makes Tomcat 7.0 the default servlet container for Grails at development time.
  • Asset Pipeline Plugin The Asset-Pipeline is a plugin used for managing and processing static assets in Grails applications. Asset-Pipeline functions include processing and minification of both CSS and JavaScript files. It is also capable of being extended to compile custom static assets, such as CoffeeScript.
  • AngularJS Resources Plugin Angular JS resources plugin
  • Cookie Session Plugin The Cookie Session plugin enables grails applications to store session data in http cookies between requests instead of in memory on the server. This allows application deployments to be more stateless which supports simplified scaling architectures and fault tolerance.

Interesting Tweets

Conferences and meetups

G48, global, TBD
Greach, Madrid - Spain, March 28th -29th, 2014.
GR8conf Europe, Copenhagen - Denmark, June 2nd -4th, 2014.
SOTR - Scotch on the Rocks, Edinburg, June 5th - 6th, 2014
GR8conf US, Minneapolis - USA, July 28th-29th, 2014.
SpringOne 2GX 2014, Dallas - USA, September 8th - 11th, 2014 (CFP, until April 30th).
Groovy Grails Exchange, London - GB, December 12th - 13th, 2014