InfoQ

Minibook

Getting Started with Grails

Posted by Jason Rudolph on Jan 17, 2007

Community
Java
Topics
Web Frameworks ,
Dynamic Languages
Tags
Groovy ,
Grails


Grails is an open-source, rapid web application development framework that provides a super-productive full-stack programming model based on the Groovy scripting language and built on top of Spring, Hibernate, and other standard Java frameworks.

Ruby on Rails pioneered the innovative coupling of a powerful programming language and an opinionated framework that favors sensible defaults over complex configuration, but many organizations aren't yet ready to stray from the safety of Java or forgo their current Java investments. Grails makes it possible to achieve equivalent productivity in a Java-centric environment.

131 pages, 6"x9", ISBN 978-1-4303-0782-2

Free download, buy the print version for $19.95

If you enjoyed reading the free downloadable version, please support the author as well as future InfoQ books by purchasing the print copy for only $19.95, or: Login to download this book FREE (PDF)

 

Accompanying Source Code

This ZIP file includes the complete source code for all the examples in this book, with each folder containing a snapshot of the source as it exists at the end of a particular chapter: gswg_source_v1_4.zip
 

Table of contents

1.    INTRODUCTION
Learning by Example
The RaceTrack Application 

2.    LACING UP
Installing a JDK
Installing Grails
Installing a Database

3.    HELLO, GRAILS!   
Creating Your First Grails Application   
What’s Inside?   
Establishing Your Domain   
Taking Control  
Where’s My Data? 
Building Better Scaffolding 
Understanding URLs and Controllers 

4.    IMPROVING THE USER EXPERIENCE  
Customizing Error Messages  
Adding Warning Messages  
Implementing Confirmation Messages  
Removing Record IDs  
Formatting Data  

5.    GET DYNAMIC  
Dynamic Finders  
Build Your Own Criteria  

6.    NOT JUST FOR INTRANET APPS  
Beyond CRUD  
Implementing User Authentication   
UI Makeover: Layouts and CSS  

7.    PUTTING IT TO THE TEST 
Unit Testing  
Functional Testing 

8.    THE FINISH LINE 
Logging  
Deploying  

9.    TIPS AND TRICKS FOR MOVING FORWARD  
Defining Your Own Database Tables  
Working with a Legacy Database Schema 
ORM Troubleshooting  
Upgrading Grails
 

Author Bio

Jason Rudolph is an Application Architect at Railinc, where he develops software that helps keep trains moving efficiently throughout North America. He recently delivered an industry-wide inspection reporting and management system relied on for operational safety by Fortune 500 railroads, equipment leasing companies, and the Federal Railroad Administration. You can find Jason online at http://jasonrudolph.com.

About the InfoQ Enterprise Software Development Series

Books on InfoQ are intentionally short and attempt to address important, timely issues in as concise a way as possible. The book's writing is intended for the Senior Architect/team lead audience.  Ever thought of writing a book? Our series is a great way to start. InfoQ offers abnormally high royalties and also contract writing opportunities. Email books AT c4media.com for opportunities.

Educational Content

Reformulating the Product Delivery Process

Israel Gat, Erik Huddleston and Stephen Chin present how Inovis realized a higher product throughput by using three unconventional Kanban practices and a Lean Release Management tool called APROPOS.

Enterprise Mashups: Why Do I Care?

Ross Mason discusses how to use enterprise mashups by applying a number of patterns, such as FeedFactory, Super Search, and Pipeline, in order to find new ways to benefit from existing enterprise data

Command-Query Responsibility Segregation

Udi Dahan discusses the Command Query Responsibility Segregation (CQRS) pattern, detailing on queries and commands, what they are and how they should be used in an asynchronous programming environment

The Story of a Project

Olivier Mallassi shares a story of a typical software development project, some typical problems and what he learned from Tom Demarco about addressing those problems, and an alternative story.

Living and Working with Aging Software

Ralph Johnson discusses principles, practices and tools relating to software development starting from already existing code which needs refactoring, maintenance, and sometimes architectural change.

IIBA Debate on the Role of the Analyst in Agile Projects

At a recent IIBA New Zealand members event Shane and Pete debated the role of the business analyst on Agile projects. They looked at the importance of analysis on projects and how the role changes.

The Craftsman Learns ... or Learning the Craft

Pete Goodliffe provokes his listeners to keep learning, offering advice on how to approach learning, what is valuable and what can be ignored, how to deal with new things, having a healthy attitude.

Finding an Agile Employer

If you want a job in Agile software development, using a framework like Scrum, you need a plan of action that spans all three phases of your job search: preparation, interviewing, and assessment.