The Spring Blog

News and Events

This Week in Spring - December 1, 2015

Wow! Can you believe we’re already staring down 2016? Time sure flies! Remember, This Week in Spring was started the first week of 2011, so we’ll soon mark the fifth anniversairry of TWiS!

This week I’m in Shanghai, China, for the Cloud Foundry Summit Asia and then off to Ft. Lauderdale, Florida, USA, for the Rich Web Experience! If you’re in either place, don’t hesitate to reach me!

As usual, we’ve got a lot to cover so let’s get to it!


Migrating OAuth2 Apps from Spring Boot 1.2 to 1.3

There are some new features in Spring Boot 1.3 to do with OAuth2 clients and servers and Spring Security OAuth2. Some of those features were ported from Spring Cloud Security and hence were in the Angel release train of Spring Cloud, but are not in the Brixton release train. This article helps you navigate the changes and update any existing apps to use the new features.

Dependency Management

If you are not using Spring Cloud you should be able to just change the version number of your Spring Boot dependency. Since some of the OAuth2 features migrated from Spring Cloud Security to Spring Boot in 1.3, it is likely that things are slightly more complicated than that. A separate article deals with upgrading Spring Cloud apps from Spring Boot 1.2 to 1.3. If you are using the Spring Cloud Angel release train then you should consult that article for details of how to manage the dependencies (independent of any specific features).


How not to hate Spring in 2016

Over the Thanksgiving weekend a 2014 article called “Why I hate Spring” by Sam Atkinson started doing the rounds on Twitter. It’s always interesting to listen to criticisms to see what we can do to improve Spring, much of Spring Boot was born out of listening to people talk about the problems that they faced with the framework.

In this blog post, I’ll try to address some of the concerns discussed in Sam’s article, and describe my personal Spring “best practices”. Before we get too much into the details though, it’s worth considering why less than optimal ways of doing things still exist in the framework.


Spring Tool Suite 3.7.2 released

Dear Spring Community,

I am happy to announce the 3.7.2 release of the Spring Tool Suite, our Eclipse-based tooling.

STS 3.7.2 focuses on fixing existing issues and updating STS to work with the latest updates on Cloud Foundry, Spring, and the various Spring projects.

The list of fixed issues include:

  • Spring Boot Dashboard now works with the new Diego runtime on Cloud Foundry
  • Spring Boot 1.3.0 compatibility (due to updated spring components inside)
  • quick text search can now search for escaped * and ? characters
  • preliminary support for Eclipse Buildship (the new Gradle integration for Eclipse from Gradleware)

News for Spring Data JDBC Extensions Project

We are pleased to announce the 1.2 release of the Spring Data JDBC Extensions project. This release updates the Querydsl dependency to 3.6.9 and adds an option to retrieve SearchResults using the QueryDslTemplate. See changelog for 1.2.1.RELEASE.

We are also pleased to announce the first milestone of the 2.0 version of the Spring Data JDBC Extensions project. The big changes for this release are:

  • change to building with Java 7 or later
  • upgrading the Oracle JDBC to version
  • updating any dependencies to follow Spring IO Platform 2.0 including Spring Framework 4.2
  • removing the Querydsl SQL support in this version (see below)

Spring Social 1.1.4 Released

Dear Spring Community,

I’m pleased to announce the availability of Spring Social 1.1.4.RELEASE. This includes the Spring Social Core, Web, Security, and Config modules.

This is a maintenance release, addressing a handful of bugs and introducing a few minor improvements (many of which were submitted as pull requests from our wonderful open-source community…thanks!). View the changelog for full details.

Project Site | Reference | JavaDoc


Migrating Spring Cloud Apps from Spring Boot 1.2 to 1.3

There are some interesting new features in Spring Boot 1.3 that are now available in Spring Cloud in the Brixton release train. The Angel release train of Spring Cloud is partly incompatible with Spring Boot 1.3, so when you upgrade there are some important things to be aware of. This article helps you navigate the changes and update any existing apps to use the new features. It should also be helpful generally when trying to adopt new versions of Spring projects into existing codebases.

TIP: You can use mvn dependency:tree or gradle dependencies to list the dependencies in your project and check the versions.


This Week in Spring - November 23, 2015

Welcome to another installation of This Week in Spring! Here in the US it’s the week of Thanksgiving, where - hopefully - we take a moment to note the many things for which we’re thankful. I’m sure I speak for the whole team here at Pivotal when I say: we’re thankful for you, dear community. Thank you.

And so, as usual, we’ve got a lot to get to it. All the better, in fact, for the lazy hours after turkey!


Spring Statemachine 1.0.1 Released

We’re pleased to announce a first maintenance release of Spring Statemachine 1.0.1. Artifacts are available either from Maven Central or from Spring Repository.

Changes in version 1.0.1 (2015-11-18)

  • autoStart via @EnableStateMachineFactory doesn’t work [#113]
  • Update to framework 4.2.2 [#115]
  • Association with @EnableStateMachine and @WithStateMachine [#116]
  • EnableStateMachineFactory fails when there are 2 state machine configurations [#117]
  • PersistStateMachineHandler returning event outcome [#118]
  • NPE with missing configurer [#119]
  • Context events not working with StateMachineBuilder [#120]

Spring XD 1.3 GA and Flo for Spring XD 1.0 GA released

Today we are pleased to announce the general availability of Spring XD 1.3 and Flo for Spring XD 1.0.

  • Spring XD 1.3 GA: zip, brew and rpm.
  • Flo for Spring XD 1.0 GA: zip.

In addition to bug fixes we have also added several new features in the 1.3 release line

  • Job Composition DSL allows for the creation of a complex graph of job executions.
  • Flo for Spring XD designer supports creating composed jobs.
  • Admin UI supports execution history of composed jobs.
  • Cassandra Sink and Header Enricher Processor
  • Gpfdist sink now supports update operations and full range of control file options
  • Spark 1.3.1 Support
  • A timeout value for flushing writes to HDFS in order to ensure data is persisted on the HDFS DataNode’s disks.
  • General dependency upgrades, Spring Data Gosling, SI 4.2, and Boot 1.2
  • Hadoop distribution version updates to Apache Hadoop 2.7.1 and Hortonworks Data Platform 2.2. Pivotal Hadoop 2.1, 3.0 and Cloudera Hadoop 5.3