Thursday, September 15, 2011

List of recipes in Spring roo cookbook


Chapter 1: Getting started with Spring Roo
1.       Setting up Roo
2.       Getting help and hints from Roo
3.       Creating a Roo project
4.       Configuring logging
5.       Importing Roo project into Eclipse/IntelliJ IDEA IDE
6.       Viewing properties defined in a properties file
7.       Managing properties defined in a properties file
8.       Creating a  Java class
9.       Adding attributes to a Java class
10.   Creating a Java interface
11.   Referring to a type from Roo shell
12.   Creating application artifacts from Roo script

Chapter 2: Persisting objects using JPA
1.       Setting up a JPA provider for your project
2.       Viewing database configuration properties
3.       Managing database configuration properties
4.       Creating persistent entities
5.       Adding JSR 303 constraints to persistent fields
6.       Creating integration tests for persistent entities
7.       Creating new ‘data on demand’ for testing entities
8.       Creating mock tests for persistent entities
9.       Executing persistent entities tests
10.   Controlling auto-generated methods of persistent entities
11.   Creating applications that interact with multiple databases
12.   Packaging your Roo project

Chapter 3: Advanced JPA support in Spring Roo
1.       Viewing candidate dynamic finder methods
2.       Adding dynamic finder methods to an entity
3.       Creating many-to-one (or one-to-one) relationship between entities
4.       Creating one-to-many (or many-to-many) relationship between entities
5.       Creating a mapped superclass
6.       Customizing Roo-generated identifier definition
7.       Generating database metadata
8.       Creating entities from database

Chapter 4: Web application development with Spring Web MVC
1.       Auto-generating Spring MVC controllers and JSPX views from JPA entities
2.       Packaging, deploying and using Roo-generated Spring MVC application
3.       Modifying Roo-generated views
4.       Round-tripping support in Spring Roo for web controllers and views
5.       Creating a Spring MVC controller for a specific JPA entity
6.       Manually creating a Spring MVC controller for a JPA entity
7.       Adding static views to Roo-generated web application
8.       Internationalizing Roo-generated web applications
9.       Adding or modifying themes generated by Roo
10.   Adding JSON support to domain objects and controllers
11.   Creating and executing selenium tests for web controllers

Chapter 5: Web application development with GWT, Flex and Spring Web Flow
1.       Scaffolding GWT application from JPA entities
2.       Getting started with Flex application development
3.       Scaffolding Flex application from JPA entities
4.       Getting started with Spring Web Flow

Chapter 6: Emailing, Messaging, Spring Security, Solr and GAE
1.       Sending emails using JavaMail API
2.       Sending and receiving JMS messages
3.       Configuring Spring security for your application
4.       Using Spring Security with Apache Directory Server
5.       Deploying a GWT application on GAE
6.       Deploying a Spring Web MVC application on GAE
7.       Adding search capability to your domain model with Solr

Chapter 7: Developing add-ons and removing Roo from projects
1.       Setting up GnuPG for add-on development
2.       Installing an installable add-on
3.       Developing a simple add-on
4.       Developing an advanced add-on
5.       Converting non-OSGi JDBC drivers into OSGi-compliant bundles
6.       Removing Roo with push-in refactoring
7.       Adding Roo to a project using pull-out refactoring
8.       Upgrading to latest version of Roo

Wednesday, September 14, 2011

Spring Roo Cookbook status

Spring Roo Cookbook is now complete and is scheduled to go into print next week.

Monday, August 1, 2011

Status of Spring Roo Cookbook

The book has now entered production and I'm currently doing pre-final review of Chapter 4. I think starting next week, I'll start receiving comments from copy-editor and technical editor of the book. I expect that the book will be published as per the revised date of 31st September. I'll publish a revised list of recipes sometime towards the end of August to reflect the recipes that will be in the printed book.

Monday, June 27, 2011

Spring roo cookbook review by Alex

Thanks to Alex McLintock for writing the first review of Spring Roo Cookbook.
The review is available here: http://www.owal.co.uk/a/springroocookbook

Sunday, June 12, 2011

Roo is for developers

Since Spring Roo 1.0 I've used it in implementing multiple PoC (Proof of Concepts) and applications. I've found it most useful when you understand the underlying Spring and related frameworks, that form part of your application. Roo only generates CRUD operations and UIs, which is not necessarily the case in most real-world applications. Also, you may not use JPA to implement your persistence layer (though Roo is making big leaps towards incorporating support for NoSQL and graph databases). Still, in its current form, it does a lot of heavy lifting to save time in implementing any PoC or application in which Spring plays an important role in the middle-tier.

In many many cases, I used Roo to generate a Spring Web MVC application against a throw-away JPA layer and I moved out of Roo, and  modified the roo-generated application as described here:
1. Deleted the JPA layer, and instead used an in-memory cache or a NoSQL database. Added my own DAO layer for interaction with the cache or NoSQL database.
2. Deleted UI layer of the application, as it was not required in some cases.
3. Modified roo-generated web-tier controllers as per the application requirements. The controllers were accessed via Spring remoting or via HttpClient for sending/receiving JSON objects.
4. Created service layer of the application.
5. Modified pom.xml to not use compile-time weaving and removed or added maven plugins that I needed in the application.
 
It's amazing how fast you can go about developing applications if the boilerplate code and configurations are generated by a tool like Spring Roo, and all you need to do is to tweak the code/configuration to quickly get started with doing what is important, and this is - writing business logic.

Saturday, June 11, 2011

Spring Roo Cookbook source code

Source code of Spring Roo Cookbook is now available for download from here: http://code.google.com/p/spring-roo-cookbook/downloads/list

If you any questions, concerns and feedback please post it here: http://groups.google.com/group/spring-roo-cookbook

Monday, May 16, 2011

Chapter 5 coming soon

I'm in the process of completing Chapter 5 - Web application development with GWT, Flex and Spring Web Flow. This is a long chapter, close to 56 pages and covers details of how you can scaffold GWT and Flex applications from JPA entities and the support provided for Spring Web Flow.


Following are the recipes covered in this chapter:

1. Scaffolding GWT application from JPA entities
2. Getting started with Flex application development
3. Scaffolding Flex application from JPA entities
4. Getting started with Spring Web Flow