Spring Framework 3.2 RC1 released

Engineering | Juergen Hoeller | November 05, 2012 | ...

Dear Spring community,

I'm pleased to announce that the first Spring Framework 3.2 release candidate is now available.

This generation of the core framework is a straightforward next step after last year's Spring Framework 3.1, continuing several well-established themes. Key features in Spring Framework 3.2 include:

  • A new Gradle-based framework build, making it easier than ever to contribute to the Spring Framework project on GitHub
  • Inlined CGLIB 3.0 and ASM 4.0, fully supporting Java 7 byte code and making CGLIB-based functionality available without explicit declaration of a CGLIB dependency
  • Allowing for @Autowired and @Value to be used as meta-annotations, e.g. to build custom injection annotations in combination with specific qualifiers
  • Support for custom @Bean definition annotations in @Configuration classes, e.g. in combination with specific qualifiers, @Lazy, @Primary, etc
  • Asynchronous MVC processing on Servlet 3.0

This Week in Spring - 30 October, 2012

Engineering | Josh Long | October 31, 2012 | ...

Welcome to another installment of This Week in Spring!

  1. Spring Data GemFire 1.2.1 and GemFire 7.0 have been released! The new Spring Data release includes complete Spring XML namespace support for configuration of all GemFire resources, eliminating the need for GemFire's native cache XML (cache XML is also supported), and Spring Data Repositories for GemFire. Also of note, the GemFire shell (gfsh) was built with Spring Shell. For more on the GemFire 7.0 release, be sure to check out the post which in turn links to release notes and documentation.
  2. 					<LI> Michael Isvy  has put together a nice blog <a href=" http://blog.springsource.org/2012/10/30/spring-mvc-from-jsp-and-tiles-to-thymeleaf/">on moving from JSP and Tiles to Thymeleaf</a>, a new view layer that works particularly well with Spring MVC (and that we have talked about quite a bit in this very roundup for the last few years!).</LI>
    <LI>
    	Spring Security lead Rob Winch has done a nice interview with InfoQ on <A href= "http://www.infoq.com/interviews/robert-winch-spring-security-multi-tenant-applications"> Spring Security  in multi-tenant appications on the cloud</a>  </LI…

Spring MVC: from JSP and Tiles to Thymeleaf

Engineering | Michael Isvy | October 30, 2012 | ...

When it comes to the view layer, Spring @MVC gives you a variety of choices. In this article, we will first discuss the way you have most likely used the view layer in the past few years: JSP. We will see the bad and better ways to work with them (plain JSP, JSP with custom tags, Apache Tiles).

We will then discuss a new project called Thymeleaf, which you can use as an alternate approach to JSP.

As usual, you can find all the code samples discussed in the corresponding application on github.

Plain JSP

Let us get started with the below code sample:

<html …> <body>
 <div style="padding-top: 50px;">
   <jsp:include page="../menu.jspx"/>
   <c…

This Week in Spring - 23 October, 2012

Engineering | Josh Long | October 23, 2012 | ...

Welcome to another installment of This Week in Spring! As usual, we've got a lot to cover so let's get to it! A lot of this news come from SpringSource itself, from various projects timed to coincide with SpringOne2GX last week. It's like receiving an early birthday gift! And speaking of gifts, if you missed SpringOne2GX, don't worry! We recorded the SpringOne sessions and they will be posted soon. Also, you can check out the show wrap ups for Day 1, Day 2, and Day 3 on SpringSource.org to get a flavor for the conference.

  1. Costin Leau announced the release of Spring for Apache Hadoop 1.0.RC1 (the first-ever RC of Spring for Apache Hadoop!) featuring a template, exception translation and declarative runner for Pig and Hive scripts, enhanced map/reduce .jar and tool execution, and refined JVM scripting, M/R, and Cascading runners. Don't miss the upcoming webinar on Nov 8th!
  2. <LI>  Peter Bell did a    <A href = "http://www.infoq.com/presentations/Spring-Data-NoSQL">great presentation on Spring Data and the NoSQL </a>  space for QCon. Be sure to check it out!  </LI> 
    
  3. Yusuf has done a nice job introducing Spring's XA support in terms of the open source Bitronix standalone JTA-XA transaction manager. For an alternative guide, might I humbly suggest this blog post?
  4. Oleg Zhurakousky announced the release of Spring Integration 2.1.4 and 2.2.0.RC2 . The new release features pseudo transactions, JPA support, built-in retry support, and a lot more, so be sure to check it out!
  5. Costin Leau announced the release of Spring Data Redis 1.0.2, which features cache expiration and ZSet methods, among other things.
  6. Thomas Risberg announced the availability of the Spring Data JDBC extensions with Oracle database support, version 1.0.0.RC4.
  7. Satish Ab has a nice post on building the web layer with Spring MVC for his sample invoice application.
  8. The Mkyong blog has a nice post on how to autowire dependiecnes into custom JSF validators. Very nice post!
  9. Our friend Krishna Prasad has a nice post on hwo to implement the control bus pattern with Spring Integration and JMS

This Week in Spring - 16 October, 2012

Engineering | Josh Long | October 17, 2012 | ...

Welcome to This Week in Spring, SpringOne2GX 2012 edition! I'm putting this together from day 2 of the SpringOne2GX conference in Washington D.C.!

Last night, we kicked off the event with a great keynote by Juergen Hoeller (pictured above), Dr. Mark Pollack, Graeme Rocher, and Adrian Colyer, some amazing break dancing by international dancer Agame, and a mysterious kangaroo (see below)!

This is the premier event for JVM developers, featuring great speakers from VMWare, SpringSource, TypeSafe, Neo4j, and many others speaking on all manner of topics. The week is just kicking off. While the conference is running, there's also going to be a contest to find the best applications built using SpringSource technologies (Spring, Grails) and deployed to Cloud Foundry. I've seen the prizes (above), and I would enter too if I could!

<P> If you're at the show, be sure to stop by the SpringSource and Cloud Foundry booths in the expo hall and pick up shwag and answers to your lingering questions. I'll be there tomorrow, in the evening.</p><P> Anyway, I won't linger <EM>too</EM> much on what you're missing! Let's move on to this week's roundup because, as usual, there's a lot to cover! </p> 
	
	<OL> 
		<LI>Want to learn about what else has happened at SpringOne2GX? Check <a href= "http://www.springsource.org/node/3704">out this fantastic wrap up of day 1</a></LI>
		<LI> The Spring Data release train has finally arrived…

Spring Data release train arrived

Engineering | Oliver Drotbohm | October 15, 2012 | ...

It's a pleasure to announce that we have just released the GA versions of a variety of Spring Data modules. With this release we continue to manifest the commitment of SpringSource to provide Java developers with tools to work with state-of-the-art persistence technologies. In this blog post I'd like to give you detailed insight into what the release includes, why we decided for a release train and a brief outlook into what the next steps on the Spring Data roadmap are.

The release train

Looking back at the way Spring Data modules were developed, release cycles were usually managed by the individual module leads. Given the different pace and maturity of the modules this caused some issues when trying to work with multiple modules at once. Especially the projects depending on Spring Data Commons were suffering from this problem.

We were working hard on minimizing these issues but eventually came to the conclusion that it makes sense to coordinate the…

Scripted: A JavaScript editor from VMware

Engineering | Andy Clement | October 11, 2012 | ...

The first version of the Scripted code editor has been released this week on github: https://github.com/scripted-editor/scripted.

Although Scripted is a general purpose code editor, the initial focus is building a great JavaScript editing experience. Scripted itself is built entirely in JavaScript and HTML/CSS. It is a browser-based editor that runs locally on a developer's machine with a Node.js instance being used to serve the editor code and perform the editor operations. The only pre-req for running Scripted is that you have a recent version of Node.js installed (we are testing with Node 0.8.11 right now). Scripted reuses the editor component from Eclipse Orion

This Week in Spring - 9th October, 2012

Engineering | Josh Long | October 10, 2012 | ...

Welcome back to another installation of This week in Spring!. There's been a flurry of activity this week at SpringSource as we begin the final leg of the march to SpringOne! We're just a week away, and the show is shaping up every day to be the best show ever! We hope to see you there! Don't miss the day 1 and 2 keynotes from Adrian Colyer, Jurgen Hoeller, Mark Pollack, Graeme Rocher, as well as exciting sessions we've highlighted on SpringSource.org in the last 4 weeks: Going Async - Push Notifications, Client-Side UI Smackdown, Decomposing Applications for Deployability and Scalability, How to build Big Data Pipelines for Hadoop using OSS.

  1. Alvin J Rayes put together a nice post on using Spring MVC 3 with Apache Tiles, the templating engine.
  2. Tool Suites lead Martin Lippert has announced that Spring Tool Suite and Groovy/Grails Tool Suite 3.1.0 have been released! Nice job, Martin!
  3. Spring Security lead Rob Winch has announced that Spring Security 2.0.8, 3.0.8, and 3.1.3 have been released! This brings the total number of outstanding bugs down to 0. Excellent work, Rob!
  4. Have you been following the exciting new blogs from the Spring Integration team on the upcoming Spring Integration 2.2 release's new features?
    	 <A href = "http://blog.springsource.org/2012/10/09/spring-integration-2-2-retry-and-more/">Gary Russell has put together a nice blog on the new support for retry in Spring Integration</A>.  The support for retry capabilities originally comes from Spring Batch's support for retrying  
    	 operations, and was then factored out to the <a href="http://www.github.com/springsource/spring-retry">Spring Retry</A> project. Now, you can take advantage of it in Spring Integration flows!
    
  5. Gunnar Hillert has a nice post on how to use the new adapters in Spring Integration 2.2 to work with JPA.
  6. Learning OAuth? Want to know about the scenarios in which OAuth can help better secure your RESTful APIs? Join Spring ninja Dr. David Syer for his article introducing OAuth, in terms of how Cloud Foundry uses it for the UAA service.
  7. 	<LI> Krishna Prasad has put together some very cool posts recently.  I liked his post on connecting systems using…

What's New in Spring Integration 2.2 (Part 4 - Retry and More)

Engineering | Gary Russell | October 09, 2012 | ...

Introduction

This is the fourth part in a series of blog posts highlighting some of the new features available in Spring Integration 2.2 following the recent release of Release Candidate 1. The first part talks about the MongoDB adapters, the second part talks about transaction synchronization; the third part talks about JPA support.

Spring Integration 2.2 introduces the ability to apply one or more localized AOP Advice elements to a message handler. A number of standard Advice classes has also been provided as well as a sample application that explores the features they provide.

Background

For a general introduction to Aspect Oriented Programming (AOP), see the Spring Documentation

With Spring Integration, to-date, it has been possible to apply an <advice-chain/> to a poller. Assuming Direct channels are being used, an AOP Advice in such a chain applies to the entire flow, encompassing all downstream components. There are times, however, when it would be advantageous to advise just an individual endpoint to, say, retry an…

What's New in Spring Integration 2.2 (Part 3 – JPA Support)

Engineering | Gunnar Hillert | October 05, 2012 | ...

This is the third part in a series of blog posts highlighting some of the new features available in Spring Integration 2.2 following the recent release of Release Candidate 1. The first part described the new set of MongoDB adapters. In part two we highlighted the new extended support for synchronizing non-transactional resources with transactions.

In this third part today, we would like to introduce the new Java Persistence API (JPA) support that is provided starting with Spring Integration 2.2. The JPA module is persistence-provider-agnostic and has been tested using:

As part of the new JPA module, we provide several components for retrieving and persisting JPA entity objects:
  • JPA Inbound Channel Adapter
  • JPA Outbound Channel Adapter
  • JPA Updating Outbound Gateway
  • JPA Retrieving Outbound Gateway
Using these components, you can select, create, update and delete entities in your database. Besides persisting data using the entity classes directly, you can also execute queries using the Java Persistence Query Language (JPQL) as well as using native SQL queries. Additionally, named queries are supported as well.

The JPA Sample

In our Spring Integration Samples repository, we provide a sample application demonstrating the JPA support, which we want to use in this blog post to show you how to easily get started.

The provided sample is using an embedded H2 database which contains a single table called PEOPLE. This table is mapped to the Person entity class in package org.springframework.integration.samples.jpa

Get the Spring newsletter

Stay connected with the Spring newsletter

Subscribe

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Tanzu Spring offers support and binaries for OpenJDK™, Spring, and Apache Tomcat® in one simple subscription.

Learn more

Upcoming events

Check out all the upcoming events in the Spring community.

View all