News and Announcements  

News and announcements

SpringOne 2GX session highlight: What’s new in Spring Framework 3.2

What’s new in Spring Framework 3.2

In this SpringOne 2GX 2012 session Juergen Hoeller will talk about the 3.2 generation of Spring Framework. 3.2 focuses on core features for asynchronous processing and message-oriented architectures, as well as enhancements to its caching support and its multi-language support. If you are looking ahead to see how Spring Framework 3.2 can evolve your application design then this is the session to be at during SpringOne 2GX.

Check out the session on SpringOne2GX.com for more details and register today!

This Week in Spring - September 4th, 2012

Welcome to another installment of This Week in Spring! This week I'm back in India (in Bangalore and in Pune) along with other Cloud Foundry ninjas on the Cloud Foundry Open Tour India! I am looking forward to talking to people about building Spring applications for Cloud Foundry. Also don't miss the Spring, Groovy and Grails event of the year in Washington, DC: SpringOne2GX. If you haven't already registered for these two events, now's the time!

  1. Michael Isvy has a nice post on using Spring MVC and jQuery to handle client-side validation. Nicely done, Michael!
  2. Chris Schaefer has a great post on his Spring Batch AMQP ItemReader and ItemWriter implementations that were just merged into Spring Batch 2.2.0! Congratulations, and thank you, Chris!
  3. Doug Haber put together a really nice post on how those powerful @Enable* annotations in Spring 3.1 Java configuration work. Definitely worth a read if you want to know more.
  4. Neale at the FuzzyDB blog has a only faintly Spring-centric post which might nevertheless be of use to many of you: how to setup desktop icon launchers for SpringSource Tool Suite on Ubuntu!
  5. Andriy Redko has a nice post on using a debugging framework called BTrace to inspect and debug performance of a Spring MongoDB application. Again, this is only faintly useful to a Spring developer by default, but it's nice have tools that much.
  6. One neat little gem inside the Spring framework is the @Required annotation, which checks that all bean properties that have the annotation are configured with a value at runtime. Srinivas Rao has a nice post on using the @Required annotation to defensively check bean configuration at runtime, and how to turn on the processing of the annotation.
  7. The Hitchhiker's Guide to Java blog has an interesting (and strange and appealingly worded!) post on how to setup Hibernate using Spring, and eschew hibernate.cfg.xml.
  8. Blogger Brian has an interesting post on how to set up the Quartz job scheduling engine using Spring. Nicely done, Brian!
  9. The Learning the Code Way blog has a very nice post on how to use Spring's various *Template and *DaoSupport implementations in your data access logic.
  10. The Technical Notes blog has a very simple code walkthroug introducing how to bootstrap Spring MVC by relying @EnableWebMvc Java configuration annotation.

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: CloudFoundry.com, 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.

  1. Oliver Gierke has announced that the Spring Data Release Train has reached the station! This release is an umbrella release of several projects that provides uniformity across the various modules. This release includes Spring Data Commons 1.4.0.RC1, Spring Data JPA 1.2.0.RC1, Spring Data MongoDB 1.1.0.RC1, Spring Data Neo4j 2.1.0.RC3 and Spring Data Gemfire 1.2.0.RC1.
  2. Gunnar Hillert has a nice blog introducing how to bootstrap custom Spring Integration adapter development.
  3. Gary Russel has announced that the latest iteration of Spring Integration, 2.2.0M4, is now available. Gary, a very busy man indeed, has also announced the latest release of Spring AMQP, 1.1.2, has been released
  4. Spring Batch lead Dr. David Syer has announced the latest release of Spring Batch, 2.1.9, is now available.
  5. Greg Case has put together a nice post on how to integrate Spring Data REST-exposed repositories with the jQuery Datatables data grid.
  6. The O'Reilly Spring Data book is under continuous development and is available in early-access release on O'Reilly's website. I want to encourage you to get the book, review it, and feedback as early as possible.
  7. Web ninja Matt Raible has an interesting tweet reminding us of the power of Spring MVC's <default-servlet-handler/>, in 140 chars, to boot!
  8. The second of a series of posts by Oracle JavaFX evangelist Steve Chin introducing Spring with JavaFX is up, check it out!
  9. Nicolas Frankel has an interesting post on how to use Spring Security with the Vaadin web framework. Nicely done, Nicolas!
  10. The jeviathon blog has some interesting posts, of late! The first one introduces how to leverage Spring 3.1's @Cacheable API and the blog even compares it to analagous support in the .NET world. Very cool! Next, the blog shows how to build Spring 3.1 Java configuration-based integration with Lucene 4. Also very cool!
  11. There are some amazing webinars coming up! The first one, on September 6th, Development with Spring Tool Suite will look at how to develop applications for Spring and Cloud Foundry using the Spring Tool Suite. The second webinar, on September 20th, will introduce on Spring Security Fundamentals, which is sure to be of interest for anyone who wants to learn how to use this critical technology.
  12. Tim Spann has put together a compilation of useful links for working with HTML 5, Spring, Spring Flex and Flex. Interesting read!
  13. Trevor Page has a nice post on how to debug in Java using the Spring Tool Suite, complete with a video! Nice job, Trevor!

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.

Spring Data Book
We're currently working on a Spring Data book with O'Reilly, which is available free for public review. If you would like to help shaping the book or maybe point people to a general introduction into Spring Data, feel free to spread the link.

Spring Data Commons - 1.4.0.RC1
- Improvements in mapping metadata API
Maven artifacts - JavaDocs - Reference documentation - Changelog

Spring Data JPA - 1.2.0.RC1
- General fixes and improvements
Maven artifacts - JavaDocs - Reference documentation - Changelog

Spring Data MongoDB - 1.1.0.RC1
- Improved query mapping regarding @DBRef mapped properties
- AbstractMongoConfiguration.getMappingBasePackage() defaults to config class' package
Maven artifacts - JavaDocs - Reference documentation - Changelog

Spring Data Neo4j - 2.1.0.RC3
- Updates to stable versions of Neo4j 1.8.M07, transaction manager compatibility (1.7 - 1.8)
- Added support for @EnableNeo4jRepositories
Maven artifacts - JavaDocs - Reference documentation - Changelog

Spring Data Gemfire - 1.2.0.RC1
- Project renamed to Spring Data Gemfire to align with other Spring Data projects.
- Spring namespace support on par with cache.xml
- Support for @EnableGemfireRepositories
Maven artifacts - JavaDocs - Reference documentation - Changelog

The Spring data team is currently working on a book with O'Reilly. It is due to be released in autumn and can currently be reviewed at OFPS. So if you'd like to get a general introduction to the project or even help shaping the book, give it a spin.

Along side the release candidates we released bugfix releases for Spring Data JPA (1.1.2.RELEASE) as well as MongoDB (1.0.4.RELEASE). Looking forward to your feedback in the forums or the bug tracker.

Spring AMQP 1.1.2 Released

Spring AMQP provides the familiar benefits of the Spring programming model to AMQP and, specifically, Rabbit MQ.

We are pleased to announce the availability of the 1.1.2 maintenance release of spring-amqp for Java, which includes a number of important bug fixes.

For more information, refer to the project home page.

Spring Integration 2.2.0.M4 is Released!

Spring Integration 2.2.0.M4 - the fourth and final milestone release of the 2.2 stream, including a number of important features and improvements, is now available.

More information is available on the project's home page.

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 introducing Spring Data Neo4j 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. Remember our pal Tobias Trelle? He's got another fantastic article that's been published on InfoQ called Spring Data - One API to Rule Them All?
  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!

Promotion: Save 30% on Spring classes in Belgium, Ireland and UK

SpringSource/vFabric Education has launched several new Hot Seat promotions for professional Spring training classes in Belgium, Ireland and UK. If you register now, you can SAVE 30% on the following professional Spring classes:

Core Spring

Rich Web Applications with Spring

Please use the following discount code in the referral code field during the registration process: SPLPROMOCLS

To view more training locations please visit our vFabric Education page

Spring Security OAuth 1.0.0.RC2 released

#spring #security #oauth 1.0.0.RC2 is released today http://bit.ly/xfE5PM. Download via github or Maven (SpringSource milestone repository).

Highlights:

* Better error responses from the framework endpoints
* Fixed some issues with validation and enhancement of token contents

Enjoy!

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.

Presenters: Ken Rimple, Srini Penchikala, and Josh Long

Be sure to thumbs up the presentation if you find it useful and subscribe to the SpringSourceDev channel to see other recordings and screencasts.

 

Newsletter Subscription

Our monthly newsletter is packed full of techniques, tutorials, tips and tricks to get you on your way to Spring nirvana. View Archive


Upcoming Events

Upcoming Training

Syndicate content