Spring AMQP for Java 1.0 RC2

Releases | Josh Long | June 27, 2011 | ...

We are pleased to announce that Spring AMQP for Java 1.0 RC2 is now available.

For details about the changes since RC1, please review the Release Notes here

In addition to a few bug fixes, this release provides the following:

  • Support for Exchange-to-Exchange bindings as well as custom Exchange types
  • Improved re-connection support
  • Added ChannelListener callback
  • Clarified Binding builder API semantics
  • Added a MessageProperties conversion strategy interface
  • Improved namespace coverage (e.g. <rabbit:template>)
  • Upgraded to RabbitMQ client version 2.5.0

Since this is intended to be our final pre-GA release, please take some time to try it out. In fact if you have a chance, really try to push the limits so that we know we're ready for prime time.

Thanks!
The Spring AMQP Team

Spring Social 1.0.0.RC1 Released

Releases | Craig Walls | June 23, 2011 | ...

Dear Spring Community,

We are pleased to announce that the first release candidate of the Spring Social project is now available!

The Spring Social project allows you to connect your Java applications to Software-as-a-Service (SaaS) providers such as Facebook and Twitter.

This release includes:

  • Additions to the Facebook API binding such as photo and video upload, Facebook page support, and Facebook search.
  • Expansion of the Twitter API binding to include mobile notifications, blocking, and geo location operations.
  • Implicit sign up support enabling automatic sign up of a user from a connection.
  • A new quickstart showing how to get up and running quickly.
  • Numerous bug fixes and other improvements based on user feedback (see the changelog for details).

Also, with this release we have extracted the provider modules (Twitter, Facebook, etc) into their own projects so they can progress at a separate schedule from the main Spring Social project. Coinciding with the release of Spring Social 1.0.0.RC1, Spring Social Twitter and Facebook 1.0.0.RC1 are also now available.

To get the software, download the release distribution (Core | Facebook | Twitter) or simply add the maven artifacts to your project. To see it live, run through the quickstart and spin up the showcase app (recently updated for 1.0.0.RC1). Supplement as you go with information from the reference manual.

Spring Social requires Spring Framework 3.0.5 or > to run. We recommend Spring 3.1 for new applications to take advantage of the latest advances in the core framework. See the reference manual for a full description of dependencies.

It is awesome to see the community interest in extending Spring Social to work with numerous SaaS providers. Check out Matt Wright's work on Instagram and Foursquare and Morten Andersen-Gott's Yammer extension. Work on LinkedIn, Github, TripIt, and Gowalla has also started. We're committed to working with the community to build an ecosystem of quality Spring Social extensions. If you're integrating a SaaS API into your application, consider contributing to the Spring Social project. Have a look at our guide to extending Spring Social and discuss with the development team at our forum.

As we push toward a GA release, we would like to hear you think of the RC1 release. Participate in the forum or, if you have any suggestions or find any bugs, post them in the issue tracker. We hope you enjoy using Spring Social!

This week in Spring: June 21st, 2011

Engineering | Josh Long | June 22, 2011 | ...

Welcome back to yet another This Week in Spring. SpringSource is out in full force at JAX San Jose this week and we will be at OSCON, in July. These events are great avenues for us to connect with the userbase. As usual, we've got a nice complement of stuff to cover this week, so let's get to it!

          <LI>  There has been loads of interest and discussion surrounding last week's <a href="http://blog.springsource.com/2011/06/09/spring-framework-3-1-m2-released/">Spring 3.1 second milestone</a>.  Sam Brannen writes about the <a href="http://blog.springsource.com/2011/06/21/spring-3-1-m…

Spring 3.1 M2: Testing with @Configuration Classes and Profiles

Engineering | Sam Brannen | June 21, 2011 | ...

As Jürgen Höller mentioned in his post announcing the release of Spring 3.1 M2, the Spring TestContext Framework(*) has been overhauled to provide first-class testing support for @Configuration classes and environment profiles.

In this post I'll first walk you through some examples that demonstrate these new testing features. I'll then cover some of the new extension points in the TestContext framework that make these new features possible.

      Please note: this is a cross post from my company blog www.swiftmind.com.

Background

In Spring 2.5 we introduced the Spring TestContext Framework which provides annotation-driven integration testing support that can be used with JUnit or TestNG. The examples in this blog will focus on JUnit-based tests, but all features used here apply to TestNG as well.

At its core, the TestContext framework allows you to annotate test classes with @ContextConfiguration to specify which configuration files to use to load the ApplicationContext for your test. By default the ApplicationContext is loaded using the GenericXmlContextLoader which loads a context from XML Spring configuration files. You can then access beans from the ApplicationContext by annotating fields in your test class with @Autowired, @Resource, or @Inject

Spring Data Graph 1.1.0.M1 with Neo4j support Released

Releases | Thomas Risberg | June 14, 2011 | ...

Dear Spring Community,

We are pleased to announce that a new milestone release (1.1.0.M1) of the Spring Data Graph project with Neo4j support is now available!

The primary goal of the Spring Data project is to make it easier to build Spring-powered applications that use new data access technologies such as non-relational databases, map-reduce frameworks, and cloud based data services.

The Graph Neo4j module provides integration with the Neo4j graph database. Back in 2010, Rod Johnson and Emil Eifrem started brainstorming about Spring and Neo4j integration including transparent persistence and…

Defining the Future for Virtualized and Cloud Java

Engineering | Rod Johnson | June 14, 2011 | ...

Today I am proud to announce version 5 of our VMware vFabric™ application platform defining the future of enterprise Java for cloud and virtualized execution environments. vFabric blazes the path to new and modern cloud architectures by providing a modern programming model paired with next-generation platform services. A path that is not overgrown with the cruft and complexity of prior-generation technologies. With vFabric 5, VMware is ensuring that enterprise Java is ready to meet the challenges of tomorrow’s demanding, data-intensive, massively scalable applications.

vFabric 5 continues to provide the best place to run your Spring applications with vFabric tc Server and the ability to monitor and manage those production solutions with incredible intelligence via vFabric Hyperic. The platform also addresses the technical challenges of cloud computing head on, supporting new approaches to data management that enable applications to scale across elastic, geographically distributed cloud architectures with our vFabric GemFire and RabbitMQ

This week in Spring: June 14th, 2011

Engineering | Josh Long | June 14, 2011 | ...

Welcome back to another installment of "This Week in Spring," and what a week it's been! This last week saw the release of the Spring 3.1 M2 and vFabric 5! Lots of exciting stuff to talk about there, as well as general community news, so let's get to it!

  1. Today VMware announced the release of VMware vFabric 5, the application platform that defines the future of enterprise Java for cloud and virtualized execution environments. vFabric 5 contains many of the technologies that the Spring community is already familiar with including tc Server, Hyperic, GemFire, and RabbitMQ, but now adds some new technology.
    • Elastic Memory for Java (EM4J): a new capability for tc Server that provides a completely new level of coordination between the application server and the underlying virtual machine. EM4J uses the underlying vSphere virtualization to overcome some of the limitations of the Java's static memory heap.
    • Spring Insight Operations: leverages the same code-level tracing technology from the Spring Insight project but pulls together information from multiple application servers into a single console with roll-up views, drill downs, and historical comparisons ready for production systems.
    • SQLFire: vFabric SQLFire leverages the time-tested vFabric GemFire underpinnings providing data at memory speed and horizontal scale but vFabric SQLFire adds familiar and standard SQL and JDBC interfaces to the service.

    Rod Johnson discusses all the details of the release in his latest blog. Be sure to check out the latest release and try it out.

  2. Spring core lead Juergen Hoeller has announced that Spring 3.1.0 M2 has been released! At long last, the next step on the steady march to Spring 3.1 GA! The new release is as feature-packed as the last one, with a long list of major new features including (but definitely not limited to!) improved Java configuration support, XML-free and hassle-free Servlet 3.0-based Spring MVC application bootstrapping, new Builder APIs for JPA and Hibernate, and much, much more! Check out the release announcement here and get the bits from your build dependency management tool of choice or the download page
  3. <LI> Hot on the heels of the Spring 3.1 release announcement, <a href="http://blog.springsource.com/2011/06/10/spring-3-1-m2-configuration-enhancements/">Chris Beams chimes in</a> on the much-improved Java-centric configuration model in Spring 3.1, M2, even as compared to M1! The features are really starting to come together to make this one of the smoothest, well arranged releases, yet! </LI> 
    
    <lI> 
    

    Spring 3.1 M2 represents a marked improvement in core Spring, as well as Spring MVC! Rossen Stoyanchev chimes in to introduce the numerous (truly, you'll need to read the detailed blog to…

Spring 3.1 M2: Spring MVC Enhancements

Engineering | Rossen Stoyanchev | June 13, 2011 | ...

This post focuses on what's new for Spring MVC in Spring 3.1 M2. Here are the topics:

  • Code-based equivalent for the MVC namespace.
  • Customizable @MVC processing.
  • Programming model improvements.

A brief reminder that the features discussed here are in action at the Greenhouse project.

Code-based Configuration For Spring MVC

As Chris pointed out in his blog post last Friday, XML namespaces cut down configuration dramatically but also reduce transparency and sometimes flexibility. This holds true for the MVC namespace, which supports a number of customizations but not everything that's available. That means you are either able to use it or otherwise leave it. We believe code-based configuration has a solution for that and a path from simple to advanced.

Let's begin with this simple, familiar snippet:


<mvc:annotation-driven />

Although not required for using annotated controllers, <mvc:annotation-driven> does a number of useful things -- it detects the presence of a JSR-303 (Bean Validation) implementation and configures data binding with it, it adds a JSON message converter if Jackson JSON library is available, and a few other things that can save quite a bit of configuration.

Now let's match that with code-based configuration:


@Configuration
@EnableWebMvc
public class WebConfig {
}

Here @EnableWebMvc imports an @Configuration class that matches the goodness of <mvc:annotation-driven>. As simple as that.

The next step is to use an attribute in <mvc:annotation-driven> perhaps to provide a FormattingConversionService, or to add a sub-element perhaps configuring message converters, or to use other MVC namespace elements like <mvc:interceptors>, <mvc:resources>, etc.

Let's see how to do all of that in code-based configuration:


@Configuration
@EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter {

    @Override
    public void addFormatters(FormatterRegistry registry) {
        // register converters and formatters...
    }

    @Override
    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
        // add message converters...
    }

    @Override
    public void configureInterceptors(InterceptorConfigurer configurer) {
        configurer.addInterceptor(new…

SpringSource Tool Suite 2.7.0.M2 Released

Releases | Martin Lippert | June 13, 2011 | ...

Dear Spring Community,

I'm pleased to announce that we just released the second milestone build for the next release of the SpringSource Tool Suite (STS).

This milestone brings mostly new features for the Cloud Foundry support and Groovy&Grails developers, including:

  • Improved Cloud Foundry support
  • Support for Grails 1.4
  • Grails aware Rename Type Refactoring
  • Improved content assist for GSPs
  • Improved Gradle support

More details can be found in the New and Noteworthy for 2.7.0.M2 document. Detailed installation instructions are also available, please look at the installation from the milestone update sites.

As always downloads are available from the STS download page, check "Other Downloads".

The release is planned for the beginning of July…

Spring 3.1 M2: Configuration Enhancements

Engineering | Chris Beams | June 10, 2011 | ...

As Juergen mentioned in his post yesterday, and as I've mentioned in my previous posts on 3.1 M1, one of the major themes of Spring 3.1 is completing our vision for code-based configuration in Spring. We think a modern enterprise Java application should have a choice between Java and XML as first class options for its configuration. In this post we'll see how Spring 3.1 M2 helps make this a reality.

Note that although Java-based configuration has been available since Spring 3.0, with this release it is now on par with many more of the XML-based features that have been developed over the…

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