Blogs

SpringSource Blog

Web Development Evolved: Grails 2.0 Released!

grocher

After nearly a year in development, we are extremely excited to announce the GA release of Grails 2.0 – the second major revision of the web framework that is changing the face of web development on the JVM.

This release brings a greatly enhanced user experience. Everything from the command line, to the test reports, to the UIs that Grails generates for you have been rethought and reinvented. Some of the exciting features available in Grails 2.0 include:

  • A new console UI incorporating tab completion and coloured output
  • A better and more reliable reloading mechanism, resulting in far fewer server restarts
  • Enhanced error reporting and problem diagnosis
  • The latest and greatest libraries: Groovy 1.8, Spring 3.1, Hibernate 3.6 and Servlet 3.0
  • A powerful framework for static resources (CSS, Javascript, etc.)
  • New APIs for link generation and page rendering
  • New GORM features: detached criteria, Where queries, multiple data sources, and more
  • Standard plugins for database migrations and reverse engineering
  • New unit testing API with full GORM emulation
  • … plus hundreds of smaller improvements

All of these new features are covered in great detail in the “What’s new in Grails 2.0?” section of the user guide. Also be sure to check out the Grails 2.0 webinar and the “Countdown to Grails 2.0” blog series by Peter Ledbrook:

As well as all of these new features, during the development of Grails 2.0 the Grails team has fixed over 900 issues and continued to evolve the plugin ecosystem around Grails.

During the course of the development of Grails 2.0 the source code has evolved in a number of significant ways. We modularized the source code by shifting to Gradle as a build tool; we now use Artifactory for repository management; Spock has become our defacto testing tool; and we rewrote the internals to take advantage of Groovy AST transformations. Grails is significantly better off with all these changes and users will see the benefit in Grails 2.0.

In addition to the release of Grails 2.0, we have a number of other exciting announcements to make starting with the Cloud.

Grails 2.0 in the Cloud

For those following the Cloud space (and who isn’t!) you’ll be pleased to know that Grails 2.0 is already Cloud ready. Cloud Foundry – the open PaaS by VMware – supports Grails 2.0 out of the box and we have already been working towards migrating the Grails website to cloudfoundry.com!

Checkout this excellent blog post by Peter Ledbrook on One-step deployment with Grails and Cloud Foundry, which shows how to get started with Cloud Foundry Deployment using the Cloud Foundry plugin for Grails.

The Heroku guys have also announced Grails support – enabling the continuous deployment of Grails apps to Heroku’s cloud platform. Grails applications can be deployed with a simple “git push” which triggers a complete build and deployment workflow.

To get started with Grails on Heroku, follow this Grails quick start guide. Grails deployment to Heroku is currently in public beta.

Cloud will continue to be a huge theme in 2012 with the emergence of more Cloud platforms that support Grails, many of which will be based on Open Source Cloud Foundry.

Grails 2.0 in Your IDE

For Eclipse users, SpringSource Tool Suite (STS) version 2.9.0.M1 (available December 2011) provides the best support for Grails 2.0. STS version 2.8.1 provides much of the basic support for those not ready to rely on a milestone release.
STS releases are available here:
http://www.springsource.com/downloads/sts

The most recent New and Noteworthy for STS is available here:
http://download.springsource.com/release/STS/doc/STS-new_and_noteworthy.pdf
It describes all the latest enhancements for Groovy and Grails development.

The support forum for any issues with STS you might have is here:
http://forum.springsource.org/forumdisplay.php?32-SpringSource-Tool-Suite

For Intellij IDEA users, JetBrains have been busy working on the development of Intellij IDEA 11 which was released last week. Intellij IDEA 11 contains a bunch of new features to support Grails 2.0 so make sure you upgrade before getting started with Grails 2.0 and Intellij IDEA.

Grails 2.0 and NoSQL

Grails 2.0 is the first release of Grails that truly abstracts the GORM layer so that new implementations of GORM can be used.

With the release of Grails 2.0 we are also pleased to announce the release of a number of Grails 2.0 compatible plugins for NoSQL data stores:

The MongoDB plugin is at final release candidate stage and is based on the excellent Spring Data MongoDB project which is also available in RC form.

In addition, we have put together a developer guide on how to go about building an implementation of GORM for folks who wish to participate in the project.

Grails users can look forward to more exciting NoSQL announcements in 2012 with upcoming  future releases of GORM for Neo4j, Amazon SimpleDB and Cassandra in the works.

Acknowledgements

Beyond the hard work of the Grails team at SpringSource I wish to extend a special thanks to our awesome external contributors. In no particular order:

  • Lari Hotari – for his tireless work optimizing Grails performance that has resulted in significant performance gains for Grails 2.0 over 1.3.x
  • Marc “Grails Rocks” Palmer – for his dedication to the development of the simply outstanding resources plugin, which is bundled with Grails 2.0, that allows the management of static resources (bundling, caching, gzipping, deferred loading etc.) without the pain
  • Rob Fletcher – for the awesome update to HTML5 in Grails 2.0’s default scaffolding templates
  • Luke Daley – for continuing to contribute to making Grails’ existing build system and dependency management as good as it can be prior to our eventual migration to Gradle.
  • Stephane Maldini – for making a significant contribution to the work to migrate Grails configuration model from runtime metaprogramming to AST transformation-based approach.
  • … and last, but not least, all those who have submitted Github pull requests during the course of the development of Grails 2.0

Also a special thanks to the JFrog team for providing us with a hosted Artifactory Online instance to manage Grails’ dependencies and to the Gradleware team for making the migration of our Ant build system to Gradle completely pain-free. Gradle has significantly streamlined our build process without sacrificing any flexibility and I would recommend it to any project that requires modularization.

Useful Links

Similar Posts

Share this Post
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • DZone
  • LinkedIn
  • Slashdot
  • Technorati
  • Twitter
 

21 responses


  1. Sweet! Good job!


  2. Congrats guys! A lot of great stuff in this release.


  3. Congrats on the great work!


  4. Congrats, guys. Looking forward to using this for new projects very soon.


  5. Congratulations — we're eager to put these enhancements into live applications.

    Thanks for your support!


  6. Fantastic news!

    Congratulations! I can't wait to try it out and migrate our existing applications!

    Great work!
    Burt


  7. First and foremost, hearty congratulations. When you consider the scope of Grails, it's an incredible achievement for such a small team.

    However, I have to take issue with your promottion of Cloud Foundry as the recommended cloud solution for Grails: I've been using the service just for demo purposes recently and the reliability is awful. More often than not, when I try to load the app the request times out. Also, the plugin frequently fails to update the app and I have to delete and re-deploy instead. Also CF lacks services that most/many apps will require e.g. custom domain name, persistent file storage, SMTP, etc.

    I'm going to try out CloudBees as an alternative, but would be interested to hear what others are using.


  8. Cool ! can't wait to begin the development of the next project with Grails 2.0


  9. Major accomplishment – congratulations!


  10. You rock guys. Excellent job. Congrats and thank you. :)


  11. Awesome, great work….keep it up. Love Grails !


  12. Congratulations, Great job guys!. Grails is the best, The search is over!.


  13. Great news. I've been waiting on this final release for a long time. Time to get my hands dirty :)


  14. ghj


  15. Wow. Awesome!! i was waiting to test this final release.
    Congratulations


  16. Simply fantastic , I am going to try it.


  17. We were waiting for it, thanks guys, this is a very good job, we will use Grails 2 in our production env.


  18. Grails and soapUI, all I'll ever need to succeed! Congrats, looking forward to playing with it.


  19. Thanks for all the effort in bringing this together guys. From those of us building apps for startups to enterprises, we recognize there we're standing on the shoulders of giants.

    As a 15 yr java vet and burned out enterprise architect, you have made writing code fun again. Ring me up if you are ever in Austin, TX and I'll buy the first round.


  20. Awesome work guys will soon develop a Grails 2.0 app and deploy on cloudfoundry


  21. Wow, Superb upgrade. Now the Grails 2.1.0 Upgrade is also available.

25 trackbacks

Leave a Reply