Newest Post

Integrating Spring MVC with jQuery for validation rules

Read more

This Week in Spring - August 28th, 2012

Welcome back to another installment of This Week in Spring,
VMWorld edition! We’re at the VMWorld event, talking to developers about Spring and Cloud Foundry.
There’s been a lot of exciting news coming out of this event, including some interesting updates around vFabric and updates regarding the timelines for Cloud Foundry itself:, the hosted PaaS from VMware, will be GA by end-of-year, and next year will see the availability of a private on-premise Cloud Foundry. Both vFabric and Cloud Foundry are ideal environments for your Spring applications, and it’s nice to see these platforms evolve.

Read more

Spring Batch 2.1.9.RELEASE is available

spring #batch 2.1.9.RELEASE is available (download github or Maven central). Thanks to all contributors!

It’s mostly bugfixes for 2.1.8, plus a few interesting additions (e.g. nested tasklets from any namespace to support Spring Hadoop):

The first real commit for 2.2 came in as a pull request. Nice work! Please keep them coming.

Read more

Spring Data release train reaches RC station

Dear Spring community, I am pleased to announce the next Spring Data release train stop, including Spring Data JPA, MongoDB, Neo4j, Gemfire as well as its foundation Spring Data Commons. The release is the final one before bringing all the modules into GA state of their next major version. Here are the highlights:

All modules
- Depend on Spring 3.1.2 by default. The modules are still fully compatible with Spring 3.0.7 but users have to manually declare Spring dependencies in they Maven pom.xml files if they’d like to use the older version. Note that some of the features included in this release (e.g. the usage of @EnableRepositories) require Spring 3.1.0 at least.

Read more

Community-Driven Spring Integration Extensions

The Spring Integration team proudly announces the availability of the Spring Integration Extensions repository. The main goal for this new GitHub-based repository is to promote a vibrant community of adapter and extension developers, and to encourage a broader segment of the community to contribute to the project. The Spring Integration Extensions project is hosted at:

This new repository will give us the flexibility to incorporate new contributions much more rapidly, without having to go through the core Spring Integration framework’s stricter vetting process. Since each community contributed extension is a separate project in the Spring Integration Extensions repository, it will have its own release life-cycle independent from the one that governs the core Spring Integration framework. As a result, this will allow for more frequent releases.

Read more

This Week in Spring - August 21, 2012

Welcome to another installment of This Week in Spring!
This roundup is put together by aggregating lots of great content from all around the web. If you have content suggestions, or if you simply want a direct line to some of the content that we post, check us out on Twitter, and Google+.
As usual, we’ve got a lot to go over, so let’s dive into it.

  1. Up first this week, there is a lot of new content available
    on the SpringSource Dev YouTube channel.

        The video from  Spring Data Neo4J lead Michael Hunger's excellent webinar <a href = "">introducing Spring Data Neo4j</a> is also available. 

    The video from VMWare engineer Jerry Kuch’s webinar providing an update on the new features in RabbitMQ is also available.
    Finally, the video from the webinar that Ken Rimple, Srini Penchikala, and I did introducing how to more fully exploit Spring Roo’s interactive add-on mechanism is available.

  2. Spring Security OAuth lead Dr. David Syer has announced that
    Spring Security OAuth 1.0.0.RC2 is now available.
  3.     <LI> Remember our pal Tobias Trelle? He's got another fantastic article that's been published on InfoQ called <a href = ""><EM>Spring Data - One API to Rule Them All?</EM></a></LI>

  4. Stephen Chin, the Oracle JavaFX evangelist, has posted an initial blog and a slide deck on the work he’s done to integrate Spring and Java FX based on a talk he’s done at the Dallas Spring User Group. Nice work, Stephen! I’m looking forward to the subsequent blog posts he’s promised us!

  5. Zemian Deng has a nice post on how to use the TimeMachine scheduler with Spring.

  6. The Java Code Geeks blog is at it again, this time with a post on how to measure the execution time of a method call using the Spring StopWatch class.

     Note that  this sort of code is ideal for delivery as a AOP Aspect. 

  7. René van Wijk has a nice post on how to integrate Spring’s Hibernate support with the JBoss AS 7-specific integration for Hibernate.
  8. This blog looks at how to use the HibernateTemplate to work
    with Hibernate’s lazy initialization feature
    . It’s a nice post, but it’s worth mentioning that the HibernateTemplate’s no longer the preferred way of working with Hibernate. Instead, simply create a HibernateTransactionManager instance, and build a SessionFactory using the LocalSessionFactoryBean (available for both Hibernate 3 and Hibernate 4) and then you’re done. For a good example,
    check out this sample application
    which demonstrates Hibernate 4. You can use the Hibernate thread-local session API (which has been available since later iterations of Hibernate 3.x). To specifically handle lazy initialization, look at Hibernate.initialize(Object).

  9. Spring’s configuration support is very rich, and
    handily supports declaring many convenience objects. This blog introduces
    how to configure lists and maps using the Spring XML namespace support. Convenient!

  10. The Pables64 blog has a nice post on how to use the SpringSource Tool Suite Spring MVC template to build a Spring MVC-based web application in no time flat.

  11. This post enumerates some of the open source projects that themselves embed or rely on the Spring framework. This list is by no means comprehensive, but it is very interesting!
  12. Blogger zws1987211 has an interesting post on how to use Spring with ActiveMQ. A lot of the confusion comes from reading the ActiveMQ documentation and articles. Using Spring with JMS (and ActiveMQ in particular) is quite straight forward. JmsTemplate makes it quite simple to send and receive messages using JMS. If you want to asynchronously receive messages, then you should consider the MessageListenerContainer implementations. If you’re going to use JmsTemplate to receive messages outside of a Java EE application server (which typically provide connection factory pooling), consider using the CachingConnectionFactory implementations to wrap the raw JMS connection factories. By default the JmsTemplate handles all the tedious resource acquisition and destruction logic involved in working with the JMS API. This includes shutting down connection factories and sessions, which can be expensive if the resources are actually closed, and not simply returned to a pool where they’re subsequently reused.

     You know what I love the most about this post, though? Not only does the post articulate the correct strategies for working with Spring, but the blogger even went to the Apache Wiki's and corrected them where appropriate! Nice job, great post, and even greater initiative!

  13. Boris Lam has a nice post on using the Spring Expression language for convenient, annotation-driven security constraint declarations in Spring Security. Nice job!
  14. Blogger Brian has an introduction to building RESTful web services with Spring MVC. The post introduces how Spring’s REST support builds on top of core Spring MVC.
  15. Want to see one possible approach for building a complete, secured, Spring and Struts web application, complete with objects exposed over JavaScript for asynchronous, Ajax-client-enabled communication using DWR? That blog’s short on narrative, but jam-packed with code! Definitely worth a look. You’re bound to find something of interest!
Read more

Video: Spring Roo—Not Just another RAD Tool!

Most of you probably know Spring Roo as the Java-based rapid application development tool that uses AspectJ and a command-line shell to build Spring applications. But underneath those slick commands that set up your application components lurks an even more powerful and extensible platform, one that you can use to build anything you want.

In this presentation, SpringSource's Josh Long and Spring Roo in Action authors Ken Rimple and Srini Penchikala introduce Spring Roo 1.2, and then go further, exposing Roo's powerful addon-based underbelly. They introduce Roo's OSGi bundle support, and introduce how add-ons can be used to generate code, install templates, respond to addition / removal of annotations, and expose both open-source and internal-company libraries for use by your developers. Finally, they wrap up by discussing the recently developed Tailor add-on, and will show how it can be used to completely customize your developers' shell environment.

Read more