Spring Roo 1.2.3.RELEASE available

Engineering | Alan Stewart | December 18, 2012 | ...

The Spring Roo team is pleased to announce the availability 1.2.3.RELEASE.  This is the third maintenance release for 1.2 and includes fixes for a number of issues and includes support for Spring Framework 3.2.0. Please see the change log for a list of the bugs and improvements completed.

I hope you enjoy this new release!

Alan

Spring Roo Project Lead

Spring Security 3.2 M1 Highlights, Servlet 3 API Support

Engineering | Rob Winch | December 17, 2012 | ...

Last week I announced the release of Spring Security 3.2 M1 that contains improved Servlet 3 support. In this post, I will introduce some of the more exciting features found in the 3.2 M1 release. Specifically, we will take a look at the following new Spring Security features:

Concurrency Support

You might ask "What is concurrency support doing in a release that has a Servlet 3 focused theme?" The reason is that the concurrency support provides a foundation for all the other features found in this release. While the concurrency support is used by the Servlet 3 integration, it can also serve as building blocks to support concurrency and Spring Security in any application. Let's take a look at Spring Security's concurrency support now.

DelegatingSecurityContextRunnable

One of the most fundamental building blocks within Spring Security's concurrency support is the DelegatingSecurityContextRunnable. It wraps a delegate Runnable in order to initialize the SecurityContextHolder with a specified SecurityContext for the delegate. It then invokes the delegate Runnable ensuring to clear the SecurityContextHolder afterwards. The DelegatingSecurityContextRunnable looks something like this:

public void run() {
  try {
    SecurityContextHolder.setContext(securityContext);
    delegate.run();
  } finally {
    SecurityContextHolder.clearContext();
  }
}

While very simple, it makes it seamless to transfer the SecurityContext from one Thread to another. This is important since, in most cases, the SecurityContextHolder acts on a per Thread basis. For example, you might have used Spring Security's <global-method-security> support to secure one of your services. You can now easily transfer the SecurityContext of the current Thread to the Thread that invokes the secured service. An example of how you might do this can be found below:


Runnable originalRunnable = new Runnable() {
  public void run() {
    // invoke secured service
  }
};

SecurityContext context = SecurityContextHolder.getContext();
DelegatingSecurityContextRunnable wrappedRunnable =
    new DelegatingSecurityContextRunnable(originalRunnable, context);

new Thread(wrappedRunnable).start();

The code above performs the following steps:

  • Creates a Runnable that will be invoking our secured service. Notice that it is not aware of Spring Security
  • Obtains the SecurityContext that we wish to use from the SecurityContextHolder and initializes the DelegatingSecurityContextRunnable
  • Use the DelegatingSecurityContextRunnable to create a Thread
  • Start the Thread we created

Since it is quite common to create a DelegatingSecurityContextRunnable with the SecurityContext from the SecurityContextHolder there is a shortcut constructor for it. The following code is the same as the code above:


Runnable originalRunnable = new Runnable() {
  public void run() {
    // invoke secured…

Spring Security 3.2.0.M1 Released

Releases | Rob Winch | December 13, 2012 | ...

The first milestone release toward Spring Security 3.2 is now available from the SpringSource repository at http://repo.springsource.org. See here for a quick tutorial on resolving these artifacts via Maven.

The highlights of this release include:

  • Concurency Support
  • Servlet 3, Async Support
  • Spring MVC Async Integration
  • Servlet 3 API Integration
  • New Servlet API Sample Application
Stay tuned to the SpringSource Blog over the coming week for information on what's new in 3.2.0.M1.

Changelog | Download | Reference Manual | FAQ

Spring Framework 3.2 goes GA

Engineering | Juergen Hoeller | December 13, 2012 | ...

Dear Spring community,

Exactly one year after the Spring Framework 3.1 release, I'm pleased to announce that Spring Framework 3.2 is generally available now!

We recommend an upgrade from all previous Spring releases, in particular from Spring Framework 3.1.x which this is a direct successor for.

As previously discussed, key features in Spring Framework 3.2 include:

  • Refined Java SE 7 support within the framework as well as through upgrades to CGLIB 3.0, ASM 4.0 (both of which we're inlining now) and AspectJ 1.7
  • Concurrency refinements across the framework, avoiding the use of synchronization wherever possible - in particular for scoped/prototype beans
  • 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

Spring Social Yammer 1.0.0 Released

Releases | Craig Walls | December 12, 2012 | ...

Dear Spring Community,

I'm happy to share the news that Morten Andersen-Gott (aka, @mortenag on Twitter or magott on GitHub) has released Spring Social Yammer 1.0.0. Spring Social Yammer is one of over 25 community-led extension to Spring Social. It brings Spring Social-style connection and API binding support to applications needing to connect with Yammer.

Spring Social Yammer can be found at the following links:

Spring Social Yammer is also available in the Maven Central repository for inclusion as a dependency in your Maven or Gradle builds.

Morten announced the release via Twitter at http://twitter.com/mortenag/status/278794566755299328. Please join me in congratulating him on his…

This Week in Spring - 11 December, 2012

Engineering | Josh Long | December 11, 2012 | ...

Welcome to another installment of This Week in Spring! We finished SpringOne China over the weekend and are today at the first of two events for SpringOne India in Bangalore and SpringOne in Hyderabad. The shows have been really amazing! In particular, we've enjoyed the food, the sites and the amazing community that have turned up in droves!

An attendee took a shot of me as I was giving a talk on Spring on Cloud Foundry Dr. Mark Pollack, myself, Gary Russell and Chris Richardson at a restaurant in Beijing
I gave a talk in Bangalore and people deluged the stage with questions and greetings. I asked the last wave of people to take a photo with me. LtoR: Gary Russel, Josh Long, Jennifer Hickey, Jeremy Grelle, Oliver Gierke, Chris Richardson -- the whole SpringOne India lineup

 

    <LI> Roy Clarkson has announced <a href = "http://www.springsource.org/spring-android/news/1.0.1-released">Spring for Android 1.0</a>, which     adds support for Jackson 2.x in <code>RestTemplate</code> through the new <code>MappingJackson2HttpMessageConverter</code>. It also addresses several bugs and compatibility issues with <code>RestTemplate</code> and Android Jelly Bean.</LI>
    <LI>The <a href="http://www.tomcatexpert.com">TomcatExpert.com portal</a> has a nice post on Spring Insight Developer to analyze code, <a href="http://www.springsource.org/node/3761">install it with Tomcat, and…

    Introducing Spring Scala

    Engineering | Arjen Poutsma | December 10, 2012 | ...

    Last October, at SpringOne2GX, I introduced the Spring Scala project to the world. Since then, I've also presented this project at Devoxx. In this blog post, I would like to give further details about this project and how you can use it in your Scala projects.

    Why Spring Scala?

    The goal of the Spring Scala project is simply to make it easier to use the Spring framework in Scala. We believe that there are many Spring users out there who want to try Scala out, but do not want to leave their experience with Spring behind. This project is meant for those people.

    Obviously, you can use the (Java) Spring Framework in Scala today, without Spring Scala. But doing so will be awkward in certain places. Just like any programming language, Scala has its own, different way of doing things, and using a pure Java framework like Spring in Scala will just feel "too Java-esque". Spring Scala tries to fix…

    IOC + Javascript at SpringOne 2GX

    Engineering | John Hann | December 06, 2012 | ...

    by Brian CavalierJohn Hann

    We gave a talk on IOC + Javascript at SpringOne 2GX. Front-end web application architecture seemed to be quite a hot topic at the conference, in general, and our talk seemed to be very well received. Here are the video and slides from the talk.

    We'll also be starting a blog series about architectural patterns for modern Javascript web apps, featuring posts from members of SpringSource's new front-end architecture team, S2JS. The posts will expand on the concepts presented in our talk, as well as those presented by Scott Andrews and Jeremy Grelle in their talks.

    The first post in the series is coming next week. Until then, we hope you enjoy the video and the slides.  If you'd like to get a head start, you can browse the demo app's source code

    Spring for Android 1.0.1 Released

    Releases | Roy Clarkson | December 06, 2012 | ...

    Dear Spring Community,

    We are happy to announce the release of Spring for Android 1.0.1!

    Spring for Android is an extension of the Spring Framework that aims to simplify the development of native Android applications.

    This release adds support for Jackson 2.x in RestTemplate through the new MappingJackson2HttpMessageConverter. It also addresses several bugs and compatibility issues with RestTemplate and Android Jelly Bean. See the changelog and reference manual for more information.

    To retrieve the software, download the release distribution, or add the maven artifacts to your project. Sample apps are available at github.com/SpringSource/spring-android-samples

    If you are building an Android app, we encourage you try out Spring for Android 1.0.1 and collaborate with us on the next iteration of the project.

    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