Spring LDAP 2.2.0 Released

On behalf of the community, I am pleased to announce the release of Spring LDAP 2.2.0.RELEASE.

What’s New in Spring LDAP 2.2

You can find highlights of what’s new in the What’s New in Spring LDAP 2.2 section of the reference.


Without the community we couldn’t be the successful project we are today. I’d like to thank everyone that created issues & provided feedback.

Feedback Please

If you have feedback on this release, I encourage you to reach out via StackOverflow, GitHub Issues, or via the comments section. You can also ping me @rob_winch or Joe @joe_grandja on Twitter.

Read more

This Week in Spring - October 25, 2016

Welcome to another installment of This Week in Spring! This week I’ll be in Des Moines, Iowa for the Prairie.Code conference. If you’re nearby, stop by and say hi!

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

Read more

Webinar: Bootiful CQRS with Axon - Nov 16

Speakers: Josh Long, Allard Buijze

We get it already! Microservices let you decompose your application into small, singly-focused, reusable and internally consistent bounded contexts - services - deployed over a network.

Great, but that still doesn’t help me get these systems to agree on the worldview of my domain! And that’s because…there is no world view of the model that is correct for all services involved.

Join Axon framework founder and lead, Allard Buijze at Trifork and Spring Developer Advocate Josh Long, for a look at how to integrate different systems with different read and write characteristics using Axon, a CQRS (Command Query Responsibility Segregation) framework that builds on Spring and Spring Boot.

Read more

Spring Cloud Camden SR1 is available

On behalf of the team, I am happy to announce the new service release of the Spring Cloud Camden Release Train. Camden.SR1 can be found in our Spring Release repository or in Maven Central. You can check out the Camden release notes for more information.

Highlights of the Camden SR1 Release Train

The following modules form Camden.SR1:

Module Version
Spring Cloud AWS 1.1.3.RELEASE
Spring Cloud Bus 1.2.1.RELEASE
Spring Cloud Commons 1.1.4.RELEASE
Spring Cloud Contract 1.0.1.RELEASE
Spring Cloud Config 1.2.1.RELEASE
Spring Cloud Netflix 1.2.1.RELEASE
Spring Cloud Security 1.1.3.RELEASE
Spring Cloud Sleuth 1.0.10.RELEASE
Spring Cloud Stream Brooklyn.RELEASE
Spring Cloud Task 1.0.3.RELEASE
Spring Cloud Zookeeper 1.0.3.RELEASE
Read more

Spring Cloud Data Flow 1.1 M2 Released

On behalf of the team, I am pleased to announce the release of the second milestone of Spring Cloud Data Flow 1.1. You can download the local server that is part of this release here.

The 1.1 M2 release includes the following new features and improvements:

  • Builds upon Boot 1.4.1 and Spring Cloud Camden improvements

  • Task application properties can now be referenced using non-prefixed property names

  • Add visual representation for related streams. This representation also includes nested TAPs and the downstream processing nodes in an overall topology view.

Read more

Spring Cloud Pipelines

On behalf of the Spring Cloud team it is my pleasure to announce a new project called Spring Cloud Pipelines. Unlike most of Spring projects this one is not available at any repository since it’s not a library, but instead it is available as a github repo for you to download and use as template for creating a deployment pipeline.

Without any further ado let’s get into some details related to the project.

Problem we’re trying to solve

Spring, Spring Boot and Spring Cloud are tools that allow developers speed up the time of creating new business features. It’s common knowledge however that the feature is only valuable if it’s in production. That’s why companies spend a lot of time and resources on building their own deployment pipelines.

This project tries to solve the following problems:

  • Creation of a common deployment pipeline

  • Propagation of good testing & deployment practices

  • Speed up the time required to deploy a feature to production

A common way of running, configuring and deploying applications lowers support costs and time needed by new developers to blend in when they change projects.

Currently we support the following CI / CD systems out of the box

  • Concourse

  • Jenkins

Read more

This Week in Spring - October 18, 2016

Welcome to another installment of This Week in Spring! It’s been another crazy wonderful week. This week I’m in London and Cambridge, UK visiting with customers and speaking (in particular, at the O’Reilly Software Architecture Conference) If you’re about be sure to say hi! Now then, let’s get to it!

Read more

Webinar Replay: Data Microservices in the Cloud

Speakers: Mark Pollack, Mark Fisher
Spring Cloud Data Flow enables you to create data pipelines for many common use-cases such as data ingestion, real-time analytics and data import/export.
In this webinar, we will introduce Spring Cloud Data Flow’s architecture and walk through the orchestration capabilities of long-running and short-lived data-centric applications on multiple runtime platforms such as Cloud Foundry, Kubernetes, Apache Mesos and Apache YARN.
Spring Cloud Data Flow represents the evolution of Spring XD and retains the DSL to define data pipelines as well as the web based UI designer, but changes the component model from modules that used to run inside a container to standard Spring Boot applications built with Spring Cloud Stream and Spring Cloud Task APIs.

Read more

Java DSL for Spring Integration 1.2 Release is available

Dear Spring Community,

It’s my pleasure to announce that the Java DSL for Spring Integration 1.2 GA is now available.

The artifact org.springframework.integration:spring-integration-java-dsl:1.2.0.RELEASE is available in the Release repo and Maven Central.

Since the previous Release Candidate 1 we have received some feedback and these additional features have been added:

Thread Barrier support

A new .barrier() and its mirror .trigger() EIP-methods have been added to the IntegrationFlow definition:

private static final String BARRIER = "barrier";

public IntegrationFlow barrierFlow() {
    return f -> f
        .barrier(10000, b -> b
                         new HeaderAttributeCorrelationStrategy(BARRIER))
                 .outputProcessor(g ->
         .channel(c -> c.queue("barrierResults"));

public IntegrationFlow releaseBarrierFlow(
                          MessageTriggerAction barrierTriggerAction) {
    return IntegrationFlows.from((Channels c) -> c.queue("releaseChannel"))
            e -> e.poller(p -> p.fixedDelay(100)))
Read more