This Week in Spring - December 2, 2014

Engineering | Josh Long | December 02, 2014 | ...

Welcome to another installment of This Week in Spring! This week I'm at the Rich Web Experience in Ft. Lauderdale, FL, joining my pal Matt Stine for a workshop on building microservices with Spring Boot, Spring Cloud and Cloud Foundry.

So, without further ado, let's get to it:

Spring Integration Java DSL (pre Java 8): Line by line tutorial

Engineering | Artem Bilan | December 01, 2014 | ...

Dear Spring Community!

Recently we published the Spring Integration Java DSL: Line by line tutorial, which uses Java 8 Lambdas extensively. We received some feedback that this is good introduction to the DSL, but a similar tutorial is needed for those users, who can't move to the Java 8 or aren't yet familiar with Lambdas, but wish to take advantage

So, to help those Spring Integration users who want to moved from XML configuration to Java & Annotation configuration, we provide this line-by-line tutorial to demonstrate that, even without Lambdas, we gain a lot from Spring Integration…

First Milestone of Spring Data Release Train Fowler Available

Releases | Oliver Drotbohm | December 01, 2014 | ...

On behalf of the Spring Data team, I am happy to announce the first milestone of the Spring Data Release train Fowler.

The release ships 170 tickets fixed, 119 of them unique to the Fowler release train. Find a curated changelog here. The highlights of the release include:

  • Upgrades to Spring 4.0.8 and Querydsl 3.6.0.
  • Performance improvements in converter subsystem by using byte-code generation.
  • Out-of-the-box support for JSR-310 date/time types (MongoDB).
  • Various (performance) improvements in the usage of SpEL (JPA).
  • Support for $bit, $mul and $position operators (MongoDB).
  • Improved proxy-id detection for JPA and REST.
  • Introdcution of QueryDslPredicateExceutor.findAll(OrderSpecifier<?>... orders) (Querydsl).
  • CDI repository extension for Cassandra module.
  • Upgrade to Gemfire 8 (Gemfire).
  • Version property based ETag generation (REST).

Spring Roo 1.3.1 RC1 available with important bug fixes

Releases | Pieter Humphrey | November 26, 2014 | ...

Spring Roo 1.3.1 RC1 Release Candidate is available.

Spring Roo jar files have been published to Maven Central. As always, the release is available in the Spring IO repository.

The candidate release fixes serious issues:

  • running reverse engineering.
  • installing third-party addons.

It is highly recommended that all Spring Roo users upgrade to this version.

For full details on the changes made in the release, please refer to the Release Note in Jira.

For more project specific information please see the Project Page and GitHub

Thanks to the awesome users who came up with useful bug reports and suggestions. This is a candidate release, please try out the updates and provide feedback. As always, you'll also find Roo on Twitter - either follow @SpringRoo or just include #SpringRoo in your tweets. Stay tuned!

This Week in Spring - November 25th, 2014

Engineering | Josh Long | November 25, 2014 | ...

Egads! Can you believe it's already almost the end of the year? Time has been screaming fast! It's the week of Thanksgiving for those of us in the United States. This is a wonderful time of year to sit back, find a nice Spring IO guide or blog to read, and then build something awesome.. oh, and it's an ideal time to spend in the company of friends and family and to reflect on those and that for which we're grateful. I'm sure I speak for the Spring team and Pivotal at large when I say that we're grateful for you, our inspiring community, users and customers.

But if you do want something to read…

Spring Cloud 1.0.0.M3 Available Now

Releases | Dave Syer | November 25, 2014 | ...

Spring Cloud 1.0.0.M3 is available now in the repo.spring.io repository. The following projects all had a 1.0.0.M3 release:

  • Spring Cloud Config: centralized key-value (or YAML) configuration management. Now supports the config server being fully embedded in another application.

  • Spring Cloud Netflix. Also has better support for embeddability of the server components. Now also properly records load balancer statistics in Ribbon-enabled Spring RestTemplate.

  • Spring Cloud for Amazon Web Services. Has new Spring Boot integration points, externalizing configuration for AWS metadata.

  • Spring Cloud Security: super simple OAuth2 in a declarative style.

  • Spring Cloud Bus: broadcasts framework-level events to Spring Cloud components. Big news here is that we now have a RabbitMQ-based aggregator for Hystrix metrics (based on Turbine 2), so you don't have to rely on having direct HTTP access to all service instances.

Spring Integration Java DSL: Line by line tutorial

Engineering | Artem Bilan | November 25, 2014 | ...

Dear Spring Community!

Just after the Spring Integration Java DSL 1.0 GA release announcement I want to introduce the Spring Integration Java DSL to you as a line by line tutorial based on the classic Cafe Demo integration sample. We describe here Spring Boot support, Spring Framework Java and Annotation configuration, the IntegrationFlow feature and pay tribute to Java 8 Lambda support which was an inspiration for the DSL style. Of course, it is all backed by the Spring Integration Core project.

For those, who are not interested in Java 8 yet, we provide similar tutorial without Lambdas: Spring Integration Java DSL (pre Java 8): Line by line tutorial

Spring Integration Java DSL 1.0 GA Released

Releases | Artem Bilan | November 24, 2014 | ...

Dear Spring community,

As we promised in the Release Candidate blog post, we are pleased to announce that the Spring Integration Java DSL 1.0 GA is now available. As usual, use the Release Repository with Maven or Gradle, or download a distribution archive, to give it a spin.

See the project home page for more information.

First of all, we are glad to share with you that on Nov 12, 2014, DZone research recognized Spring Integration as the leader in the ESB / Integration framework space, leading with 42% marketshare, in a publication of their recent survey results. And the report is…

SpringOne2GX 2014 Replay: Running Your Spring Apps in the Cloud

News | Pieter Humphrey | November 24, 2014 | ...

Recorded at SpringOne2GX 2014.

Speaker: Cornelia Davis

Slides: http://www.slideshare.net/SpringCentral/running-your-spring-apps-in-the-cloud

The Spring Trader application was debuted at SpringOne 2GX in 2012 and presented an application that demonstrates a multitude of Pivotal Application Fabric components working together – tcServer, RabbitMQ, SQLFire and Gemfire. In this session we will take that application and make (a few) modifications (mostly to config) to get it running on the same components in the cloud, specifically on the Cloud Foundry PaaS. We’ll show you how to use the Spring Cloud project to configure the deployment, how to leverage a cloud services catalog, how to implement a cross-site scripting solution (and why), how to do session state caching and we’ll discuss (the dangers of) auto reconfiguration. If you bring a laptop you can have your own instance of the app running by the end of the session.

!{iframe width="560" height="315" src="//www.youtube.com/embed/nuiNvI5HYkU" frameborder="0" allowfullscreen}{/iframe}

SpringOne2GX 2014 Replay: Developing Microservices for PaaS with Spring and Cloud Foundry

News | Pieter Humphrey | November 24, 2014 | ...

Recorded at SpringOne2GX 2014.

Speaker: Matt Stine

Slides: http://www.slideshare.net/SpringCentral/developing-microservices-for-paas-with-spring-and-cloud-foundry

Marc Andressen has famously said "Software is eating the world." What does that mean? We take it to mean that multiple industries with historically entrenched leaders are being disrupted by businesses built around a software core. These software factories are characterized by: tight feedback loops rapid iteration horizontal scaling mobile-first UX continuous delivery These factors have contributed to drive a change in how we approach infrastructure, which has taken the lead in adapting to meet these needs with the move to the cloud, and Platform as a Service (PaaS) offerings like Cloud Foundry have raised the level of abstraction to a focus on an ecosystem of applications and services. However, most applications are still developed as if we're living in the previous generation of both business and infrastructure: the monolithic application. Microservices - small, loosely coupled applications that follow the Unix philosophy of ""doing one thing well"" - represent the application development side of enabling rapid, iterative development, horizontal scale, polyglot clients, and continuous delivery. They also enable us to scale application development and eliminate long term commitments to a single technology stack. While microservices are simple, they are certainly not easy. It's recently been said that "microservices are not a free lunch." Interestingly enough, if you look at the concerns typically expressed about microservices, you'll find that they are exactly the challenges that a PaaS is intended to address. So while microservices do not necessarily imply cloud (and vice versa), there is in fact a symbiotic relationship between the two, with each approach somehow compensating for the limitations of the other, much like the practices of eXtreme Programming do the same. This session will describe architectural patterns for developing microservices:

  • Service Decomposition
  • API Gateways
  • Stateless / Shared-Nothing
  • Apps Configuration and Backing Service
  • Consumption
  • Fault Tolerance

Along the way we'll see how to leverage technologies such as Spring Boot and Reactor to develop microservices targeted at Cloud Foundry.

!{iframe width="560" height="315" src="//www.youtube.com/embed/iMvCOEsSuAc" frameborder="0" allowfullscreen}{/iframe}

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