You are previewing Beginning Groovy, Grails and Griffon.
O'Reilly logo
Beginning Groovy, Grails and Griffon

Book Description

Web frameworks are playing a major role in the creation of today's most compelling web applications, because they automate many of the tedious tasks, allowing developers to instead focus on providing users with creative and powerful features. Java developers have been particularly fortunate in this area, having been able to take advantage of Grails, an open source framework that supercharges productivity when building Java–driven web sites. Grails is based on Groovy, which is a very popular and growing dynamic scripting language for Java developers and was inspired by Python, Ruby, and Smalltalk.

Beginning Groovy, Grails and Griffon is the first introductory book on the Groovy language and its primary web framework, Grails. Griffon is also covered. While Grails is the Web framework for building Groovy Web applications, Griffon is the deskop framework for building desktop Groovy applications. Could Groovy be the new Java? It's light, fast and free (open source).

This book gets you started with Groovy, Grails and Griffon, and culminates in the example and possible application of some real–world projects. You follow along with the development of each project, implementing and running each application while learning new features along the way.

What you'll learn

  • Understand the fundamentals of the open source, dynamic Groovy scripting language and the Grails web framework.

  • Capitalize upon Grails' well–defined framework architecture to build web applications faster than ever before.

  • Improve your web application with cutting–edge interface enhancements using Ajax.

  • Use Grails' object–relational mapping solution, GORM, to manage your data store more effectively than ever before.

  • Take advantage of Groovy to create reporting services, implement batch processing, and create alternative client interfaces.

  • Deploy and upgrade your Grails–driven applications with expertise and ease.

  • Discover an alternative client in Groovy as well.

  • Explore the Griffon framework for creating Groovy-based desktop applications.

Who this book is for

Java and web developers looking to learn and embrace the power and flexibility offered by the more agile, lightweight Groovy scripting language and its Grails and Griffon frameworks.

Table of Contents

  1. Title Page
  2. Contents at a Glance
  3. Contents
  4. About the Authors
  5. About the Technical Reviewer
  6. Acknowledgments
  7. Chapter 1: Introduction to Groovy
    1. Installation
    2. Groovy by Example
    3. Groovy Language Key Features
    4. Summary
  8. Chapter 2: Groovy Basics
    1. Scripts
    2. Assertions
    3. Strings
    4. Regular Expressions
    5. Collective Datatypes
    6. Control Structure
    7. Methods
    8. Closures
    9. Operators
    10. Summary
  9. Chapter 3: More Advanced Groovy
    1. Object Orientation in Groovy
    2. Groovy Unit Testing
    3. Working with XML
    4. Native JSON support
    5. Generating Text with Templates
    6. Runtime Metaprogramming
    7. Compile-time Metaprogramming
    8. Domain-Specific Languages
    9. Summary
  10. Chapter 4: Introduction to Grails
    1. What Is Grails?
    2. Grails Architecture
    3. Installing Grails
    4. Collab-Todo Application
    5. Scaffolding
    6. H2 Console
    7. Grails Plugins
    8. Grails Interactive Mode
    9. Summary
  11. Chapter 5: Building the User Interface
    1. Starting with the End in Mind
    2. Making the Topbar Functional
    3. Externalizing Strings
    4. Errors and Validation
    5. Flash and Flash Messages
    6. Creating an Audit Log Using Action Interceptors
    7. Using Filters
    8. Summary
  12. Chapter 6: Building Domains and Services
    1. GORM
    2. Collab-Todo’s Domain
    3. Creating Domain Objects
    4. Overwriting Default Settings
    5. Validation
    6. Querying the Database
    7. Services
    8. Summary
  13. Chapter 7: Security in Grails
    1. What Is Security?
    2. An Overview of Grails Security Solutions
    3. Custom Security Implementation
    4. Registering a User
    5. CAS
    6. Spring Security
    7. Summary
  14. Chapter 8: Web 2.0—Ajax and Friends
    1. Advanced Presentation Components
    2. Tag Libraries
    3. Ajax in Grails
    4. RSS Feeds
    5. Summary
  15. Chapter 9: Web Services
    1. RESTful Web Services
    2. RESTful in Grails
    3. Summary
  16. Chapter 10: Reporting
    1. The Report
    2. Reporting Tools
    3. Creating the Todo Report
    4. The Report Tag
    5. The ReportController and the ReportService
    6. Tying It All Together
    7. The Report List
    8. An Alternate Approach
    9. Summary
  17. Chapter 11: Batch Processing
    1. Installing the Quartz Plugin
    2. Creating a Job
    3. Building a Batch-Reporting Facility
    4. Summary
  18. Chapter 12: Deploying and Upgrading Grails Applications
    1. Deploying Grails Applications
    2. Upgrading Grails Applications
    3. Summary
  19. Chapter 13: Introduction to Griffon
    1. Installing Griffon
    2. Creating Your First Application
    3. Directory Structure
    4. Griffon Application Life Cycle
    5. Views
    6. Models and Bindings
    7. Controllers
    8. Summary
  20. Index