Free Sample
+ Collection

Grails 1.1 Web Application Development

Jon Dickinson

Reclaiming Productivity for faster Java Web Development
RRP $23.99
RRP $39.99
Print + eBook

Want this title & more?

$12.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781847196682
Paperback328 pages

About This Book

  • Ideal for Java developers new to Groovy and Grails—this book will teach you all you need to create web applications with Grails
  • Create, develop, test, and deploy a web application in Grails
  • Take a step further into Web 2.0 using AJAX and the RichUI plug-in in Grails
  • Packed with examples and clear instructions to lead you through the development and deployment of a Grails web application

Who This Book Is For

This book is aimed at Java web developers looking for ways to build web applications quickly, and wanting to find out how it's done quickly. If you are frustrated with integrating the many different frameworks that are available for web development and want to get on with building slick web applications for your users, then this book is for you. Grails is built on the Groovy language, but experience in Groovy is not required, as you will learn enough about Groovy to understand how to use Grails.

Table of Contents

Chapter 1: Getting Started with Grails
Why Grails?
Installing Grails
Build a team communication portal
Chapter 2: Managing Users with Scaffolding
What is scaffolding?
Create the domain classes
Creating controllers to enable scaffolding
Control through constraints
Meeting the relations
Bootstrapping demo data
Chapter 3: Posting Messages
Message domain class
Rendering a form
Handling user input
Create a home page
Styles and navigation
Tidying up
Chapter 4: Introduction to Groovy
What is Groovy?
Why Groovy?
Running Groovy
Groovy features
Chapter 5: Authentication with JSecurity Plug-in
Where to find plug-ins
Installing a plug-in
Configuring JSecurity plug-in
Add the missing pieces
JSecurity tags
Who posted that?
Chapter 6: Testing
Writing unit tests
JUnit refresher
Unit tests in Grails
Integration testing
Integration tests in Grails
Functional testing
Functional testing In Grails
Testing guidance
Chapter 7: File Sharing
File domain object
File Upload GSP
Saving the file
Viewing files
Modeling for efficiency
Downloading files
Chapter 8: More GORM and Criteria
More GORM relationships
Querying with criteria
Updating FileController
Render file versions
Fix file download
Chapter 9: Services
Introducing services
Implementing FileService
Chapter 10: Managing Content through Tagging
Add basic tagging
Customize the home page
All Messages and Files
Chapter 11: AJAX and RIA Frameworks
Edit tags inline
Auto-complete tags
Introducing tag clouds
Chapter 12: Searching, RSS, and REST Services
REST services
Chapter 13: Build your own Plug-in
The tagger plug-in
Using plug-in events
Chapter 14: Deployment and the Real World
Set up the environment
Configure Grails
Hosting options
Next steps

What You Will Learn

  • Understand the relationship between Grails and the Groovy scripting language
  • Learn enough about Groovy to get you writing your first Grails applications
  • Use the built-in AJAX support to enhance user interaction and create slick user interfaces with the RichUI plug-in
  • Develop and use a REST service interface and provide an API through REST
  • Handle file upload and versioning allowing users to share files
  • Use Grails scaffolding to generate a user interface to allow management of users and roles within the application.
  • Secure your application with the JSecurity plug-in and use plug-ins to solve common problems
  • Reduce object persistence issues using Grails Object-Relational Mapper
  • Create your own Grails plug-in for tagging to limit the amount of data that is displayed on your home page
  • Get to grips with automated testing to write functional tests that drive the application
  • Expose your application to other developers with a RESTful API

In Detail

Web development is tricky—even a simple web application has a number of context changes ready to trip up the unwary. Grails takes the everyday pain out of web application development, allowing us to focus on delivering real application logic and create seamless experiences that will address the needs of our users. This book will take the pain out of Grails by showing you exactly how to build a web application with a minimum of fuss.

With this book, even if you are new to Grails, you will be up and running before you know it. You will be able to code faster and your code will be better. This clear and concise book is packed with examples and clear instructions to help you build your first Grails application and gives you the skills to speed up your application development by adding a different angle for learning about the topic. After a brief introduction to the dynamic JVM-based Groovy programming language, which teaches you enough about Groovy to understand the relationship between Grails and the Groovy scripting language, it shows how to use Grails and a number of key plug-ins to deliver valuable web applications. It also takes you through creating, developing, testing, and deploying an example team collaboration application in Grails.

Using an incremental and iterative approach you will learn how to build a basic web application with secure authentication and different levels of authorization. You will learn how to handle file upload allowing users to share files. Some advanced features of object-oriented persistence will be introduced through adding tags for messages and files to giving users a robust categorization system.

You will then build on the basic application to enhance the user experience through AJAX and the RichUI plug-in. You will take a further step into the world of Web 2.0 by adding an RSS feed and a REST service to the application. Once the entire application is up and running, you will learn how to create your own plug-in for tagging. Finally, you will learn how to deploy this application to a production environment.


Read More