This Week in Spring - February 16th, 2016

Welcome to another installment of This Week in Spring! It’s been a busy week for all of us on the Spring team, as you’re about to see! I’ve just finished my presentation at the epic DevNexus show and now I’m off to visit customers in Hartford and Los Angeles before making my way to the epic ConFoo conference in Montreal, Canada. If you’re in the area, be sure to ping me and say hi!

We’ve got a lot to cover, so let’s get to it!


Webinar: Up and Running with Spring Boot in NetBeans IDE

Guest Speaker: Geertjan Wielenga, Principal Product Manager, Oracle

NetBeans IDE is the official IDE of the Java platform. Focused on rapid out-of-the-box development of all kinds of Java applications, NetBeans is comprehensive and easy to use. In particular, its free and open source tooling for end-to-end development is much admired.
Over recent years, many developers have added NetBeans to their toolbox because of its intuitive and powerful integration with Maven and Gradle. During this session you will see how NetBeans is well suited for setting up and developing applications that make use of Spring Boot.
You will also learn about the many new features that have been added in NetBeans IDE 8.0 and 8.1, helping you working quickly and effectively with Java and Maven in the context of Spring Boot. By the end of this session, you’ll have a better grasp of Spring Boot, as well as a thorough understanding of the range of features that NetBeans provides for working with it!


Webinar: Spring Boot Authentication... and More!

Guest Speaker: Micah Silverman, Java Developer Evangelist, Stormpath

Join Stormpath Java Developer Evangelist Micah Silverman for a technical overview of the common pain points with Java authentication. We'll cover how to solve them with Stormpath in a Spring Boot application, and demonstrate how to quickly add a complete user management system to your Spring Boot app. By the end of this webinar, you’ll be on your way to a fully functioning Spring Boot app backed by Stormpath. Topics Covered: Authentication Pain Points in Java Stormpath, Spring Boot, and Your Architecture Demo: Auth in Spring Boot, with these features: A complete user registration and login system Pre-built login screens Password reset workflows Group-based authorization Advanced user features: API authentication, Single Sign-On, social login, and more Technical Q&A


Spring AMQP 1.6.0 Milestone 1 (and 1.5.4) Available

We are pleased to announce the availability of the first milestone of the 1.6 version of Spring AMQP.

Some highlights of this release:

  • A new jar spring-rabbit-test containing a test harness to help with testing @RabbitListener methods; see the testing chapter.

  • Multiple @RabbitListener annotations on a method (when using Java 8) and the @RabbitListeners annotation (for pre-Java 8), each allowing the same method to be the listener method for multiple listener containers.

  • Full support for the Delayed Message Exchange RabbitMQ plugin.

  • An AsyncRabbitTemplate returning ListenableFuture<?> for request/reply messaging.

  • An option to publish ApplicationEvents when listener containers go idle.


SpringOne2GX 2015 replay: Federated Queries with HAWQ - SQL on Hadoop and Beyond

Recorded at SpringOne2GX 2015
Presenter: Christian Tzolov
Big Data Track

In the space of Big Data, Pivotal offers two powerful data processing tools namely HAWQ and GemFire. HAWQ is a scalable OLAP SQL-on-Hadoop system, while GemFire is OLTP like, in-memory data grid and event processing system. This presentation will show different integration approaches that allow integration and data exchange between HAWQ and GemFire. The practical experience in applying Spring Boot and Spring XD for some of the use cases will be shared while walking you through the implementation of the different Integration strategies. Amongst other we will show an integration path that leverages SpringXD to ingest GemFire data and store it in HDFS as well as the benefits of using Spring Boot to implement REStful proxy for the HAWQ Web Table integration scenario.


SpringOne2GX 2015 replay: Intro to Spring Boot for the Web Teir

Recorded at SpringOne2GX
Presenters: Stephané Nicoll & Brian Clozel
Web / Javascript Track

Only 2 years after its inception, Spring Boot is already very popular amongst Spring developers. If you’re familiar with Spring MVC, you may wonder how Spring Boot can improve your web development experience and how its internals work.

First we’ll go over the basics of a REST service powered by Boot. We’ll then gradually add more features that are typical to modern web applications. Along the way, we’ll see how Boot is helping us with front-end resources, security, error customization, template engines, embedded container configuration and devops features.


SpringOne2GX 2015 replay: Behind the OSS curtain - How we manage Spring

Recorded at SpringOne2GX 2015
Presenters: Baruch Sadogursky & Phil Webb
Core Spring Track

How is the open source you use published actually managed? What techniques and tools do successful open source projects use? How are open source projects able to lever the community that they build? This talk will take you behind the scenes of the Spring Framework to show you how we manage code, issues and releases. We’ll talk about the tools that we use, how we keep code clean and consistent, and how we use Artifactory/Bintray to manage the bits.


SpringOne2GX 2015 replay: Developing cloud-native applications with the Spring Tool Suite

Recorded At SpringOne2GX 2015
Presenters: Kris De Volder & Martin Lippert
Core Spring Track

In this session we will demonstrate how to work effectively with Spring projects in Eclipse and the Spring Tool Suite (STS). We will demo all the latest enhancements in the tools including features like much smarter property file editing. We will also demonstrate new features in the Eclipse 4.5 (Mars) platform. Going beyond basic application development we will look at how to build and work with systems composed of individual Spring applications that represent microservices. How to easily exploit Spring Cloud to address some common infrastructure issues that come up with this architecture, and we’ll show how to deploy these applications both locally and then remotely to Cloud Foundry, all from Eclipse. We’ll show off the new features of the Cloud Foundry Eclipse plugin including better support for Spring Boot apps, improved performance and full remote debugging for apps running on CF from your desktop Eclipse. For more rapid development of your cloud native applications in a ‘Cloud Foundry like’ environment on your local machine we will demonstrate deploying to Lattice from STS. Lattice ( is an open source project for running containerized workloads. Note: is being discontinued and is being replaced with MicroPCF


Spring REST Docs 1.1.0.M1

It’s my pleasure to announce that the first milestone of Spring REST Docs 1.1 has been released. 1.1.0.M1 is available from

What’s new?

REST Assured

As an alternative to the lightweight server-less documentation generation offered by Spring Framework’s MockMvc, you can now use REST Assured to test and document your RESTful services. This opens up Spring REST Docs to all four corners of the JVM and beyond, allowing you to document anything that you can access via HTTP.


Reactor 2.5 : A Second Generation Reactive Foundation for the JVM

Entering Reactive Streams Era

Reactor 2.0 development started by the end of 2014, around the same time as Reactive Streams. We were keen on joining the effort and early adopt a backpressure protocol to mitigate our main message-passing limitation: bounded capacity. We delivered in Reactor 2.0 the first attempt to make Reactive Streams implementations of RingBuffer-based schedulers and derived an increasingly popular reactive pattern: Reactive Extensions.

Meanwhile, Reactive Streams started getting traction and an entire ecosystem of libraries discussed this transition. The regular concern ? Implementing Reactive Streams semantics is all but an easy task. We observed an increasing need for a reactive foundation to solve message-passing and implement common streaming operators. We therefore created a dedicated project space for Reactor Core and started a focused effort with Spring Framework team.