Monday, December 14, 2009

Spring Roo, SpringOne 2009, Spring by Example

I haven't been active on my blog or Spring by Example for a long time. I was just really busy. In that time I've been working with Flex, Spring BlazeDS Integration, Spring MVC, Spring Web Flow, Spring Roo, and other things.

Spring Roo was very useful. I made my own add-ons that generated web services based on a JPA bean and even the matching ActionScript class. I'm going to try working on a better version based on the new Spring Roo add-on format when I have time. What I did so far is checked into subversion. It was developed against Spring Roo 1.0.0.RC1 before there was standardized add-on format. I was very rushed when I did this, so it's functional but very basic and needs to be redone.

SpringOne 2009 in New Orleans was good. A lot of interesting presentations and nice getting to see different people again. The cloud presentation in the keynote was very interesting. Some of the improvements in Spring MVC that are in Spring 3.0 are quite nice. There is JSR-303 (Bean Validation) support, Type Conversion and Validation (blog by Keith Donald), REST support, and an MVC namespace for reduced configuration. Some of the SpEL (Spring EL) integration with other projects like Spring Integration and Spring Security look really useful. SpringOne is a really good conference and I'm glad I went.

I've been working for over a week on upgrading Spring by Example's projects to Spring 3.0.0.RC3. Most have upgraded without any issues, although I'm having trouble upgrading the GWT ones. I'm going to probably leave them and the dm Server (OSGi) examples as they are for now and finalize the other examples, double check everything is working, and update the documentation so I'll be ready for a release for the Spring 3.0 final release. The webapps (other than GWT & dm Server ones) have not only been upgraded to Spring 3.0, but have also been upgraded to JPA and following Spring MVC best practices as much as possible if they weren't already. All of them were changed to use the Spring MVC namespace which reduced their configuration slighlty. Also the applications with security had their login/logout pages changed to be served through Tiles and support i18n. When I have time I'd like to change the webapps to use jspx and use RESTful URLs.

I'm hoping to get a release of Spring by Example out in the next few days. Then continue working on everything else and possibly have another release before the end of the year. I'd also like to get a SpEL and Spring MVC REST examples added to the site.

2 comments:

khawaldar said...

I downloaded the springindepth from the repository. But can not compile .
I get this error:
The project org.springbyexample.springindepth:chapter02-basic-bean-creation:${project.parent.version} (G:\work-eclipse\spring\springindepth\core\chapter02-basic-bean-creation\pom.xml) has 1 error
[ERROR] Non-resolvable parent POM: Failure to find org.springbyexample.springindepth:core-spring:pom:1.0 in http://repo1.maven.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM @ line 11, column 13 -> [Help 2]

Any help to resolve it ?

-Kph

David Winterfeldt said...

Sorry, I haven't worked on 'Spring In-depth, In Content' (http://springindepth.com/) for almost 4 years. It looks like the current Maven config needs to be updated. It doesn't work for me either. Currently I try to actively maintain the Spring by Example (http://springbyexample.org/) site and the projects it references. I left all the 'Spring In-depth, In Content' examples because it seemed like they could still be useful for reference. I know this is a late response, but I still wanted to give you an answer.