Welcome to another installation of This Week in Spring! This week’s already off to a crazy start. Sunday evening I returned from Kiev, Ukraine, where I spoke at JEEConf. Yesterday, Monday, I gave a talk with my friend Baruch from JFrog at yesterday’s JFrog Swampup conference event in Napa, California. Today I’m off to Denver, Colorado for Gluecon, and then off to GOTO Chicago in Chicago, Illinois and I’ll finish out the week in Washington DC for customer visits. I can’t wait to see you all along the way!
The Spring Blog
Speakers: Adrian Cole & Marcin Grzejszczak, Pivotal
Latency analysis is the act of blaming components for causing user perceptible delay. In today’s world of microservices, this can be tricky as requests can fan out across polyglot components and even data-centers. In many cases, the root source of latency isn’t a component, but rather a link between components. This session will overview how to debug latency problems, using call graphs created by Zipkin. We’ll use trace zipkin itself, setting up from scratch using docker.
On behalf on the Spring Roo team at DISID Corporation, I’m pleased to announce that Spring Roo 2.0.0.M2 has been released!
The main goal of this Spring Roo version was to update code generation to use latest Spring technologies:
- Use Spring IO Platform to manage dependency versions and be able to use latest Spring technologies.
- Update code generation to use the latest Spring framework versions (4.x)
- Update code generation to include Spring Boot on generated projects.
- Remove all generated configuration based on XML files and use Spring Boot auto-configuration.
- Remove Active Record data model in favor of the Repository (Spring Data) based one.
- Generate application architecture based on service layer pattern by default
Welcome to another installment of This Week in Spring! As I write this, I’m in Chennai, India, en route to Bangalore, India for a day of exciting customer meetings and then I’m off to sunny Barcelona, Spain, for the epic Spring IO event! Then, this Friday, I’m off to Kiev, Ukraine, for JEEConf. If you’re around, as always, don’t be shy and say hi!. That said, let’s get into it!
- The BIG news: Spring Cloud Brixton is now available! Get the bits from the Spring Initializr. If you’ll permit a little back-patting, I submit that you might get a good feel for what concerns a technology like Spring Cloud addresses by reading this article I wrote and you’ll learn how Spring Boot and Spring Cloud are used in this video. That said, grab the bits and go!
- Spring Cloud Stream 1.0.0 is here, at long last! Spring Cloud stream makes it simple to build collaborating messaging-based microservices.
- Spring Boot co-lead Phil Webb just announced that Spring Boot 1.4.0.M3 is now available, just in time for the Spring I/O event in Barcelona! There are a lot of great new features in 1.4, so make sure to try the bits early and often.
- Spring Security and Spring Session lead Rob Winch has just announced Spring Session 1.2.0.RELEASE. This release includes loads of cool stuff.
- Spring Integration lead Gary Russell just announced Spring Integration 4.3.0.RC1 (the last RC! so get the bits and kick the tires!)
- Spring IO Platform lead Andy Wilkinson has just announced Spring IO Platform 2.0.5. This release includes a few interesting library updates, including Spring Boot 1.3.5.RELEASE and Spring AMQP 1.5.6.RELEASE.
- Not one to rest on their laurels, the Spring Security team just announced Spring LDAP 2.1.0.
- I really enjoyed this blog on using Pivotal’s Concourse CI pipeline tool with Cloud Foundry
- Pivotal’s very own Richard Seroter did a nice (albeit .NET-colored) comparison of messaging technologies RabbitMQ, NATS, and Apache Kafka
- This post on using the Groovy-language Spock with Spring Boot 1.4’s new testing features is boss-sauce!
- The folks at Takipi released an interesting post wherein they compared and discovered the top 100 most widely used Java projects. Naturally, Spring and the various Spring modules featured very prominently, accounting for 44 of the top 100!
- Lots of bug fixes and improvements over M2 (thanks to everyone for trying the milestones).
- Convention based error pages (want a custom 404, just add
- Improved ErrorPage registration support.
- Support for pluggable OAuth2 Principal extraction.
On behalf of the community, I’m pleased to announce the release of Spring LDAP 2.1.0.RELEASE. The highlights of this release include:
- #380 - Support for Spring Data Hopper
- #384 - Early support for Spring IO Platform 2.1
- #351 - Support for commons-pool2
- #370 - Support property placeholders in XML Namespace
- #392 - Document Testing Support
- Migrated from JIRA to GitHub Issues
- Added Gitter Chat
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 (our latest full time Spring Security team member) @joe_grandja on Twitter.
This maintenance release upgrades the versions of a number of the projects in the Platform to pick up their latest maintenance releases:
- Spring AMQP 1.5.6.RELEASE
- Spring Boot 1.3.5.RELEASE
I am pleased to announce the availability of Spring Integration 4.3.0.RC1 - the first (and final) release candidate; it is available from the spring milestone repo The GA release should follow shortly after the GA release of Spring Framework 4.3.
4.3 is only a minor release with a few new features and improvements over 4.2 and will close out the 4.x line. Meanwhile we are looking forward to embrace the Reactive Foundation for the JVM in Spring Integration 5.0. We have yet to determine exactly what that means, so stay tuned! In addition, 5.0 (2017) will include the (currently separate) Spring Integration Java DSL.
On behalf of the community, I’m pleased to announce the release of Spring Session 1.2.0.RELEASE. This release evolved through 1.2.0 RC1, 1.2.0.RC2, 1.2.0.RC3, and 1.2.0.RELEASE closing over 60 issues.
You can find highlights of what’s new in the What’s New in Spring Session 1.2.0 section of the reference. For details refer to the changlog links above.
Without the community we couldn’t be the successful project we are today. I’d like to thank everyone that created issues & provided feedback.
On behalf of the team, I am pleased to announce that the Spring Cloud Brixton Release Train has reached General Availability. The release is available today and can be found in our Spring Release repository and Maven Central.
We would like to thank many community contributors and testers for their help. There have been many pull requests, issues and conversations that have made Spring Cloud Brixton better.
Some of the highlights of the Brixton Release Train are:
- Spring Boot 1.3.x and Spring Framework 4.2.x support
- Hashicorp Consul support for service registration/discovery & configuration via Spring Cloud Consul
- Apache Zookeeper support for service registration/discovery, configuration via Spring Cloud Zookeeper and leader election in Spring Cloud Cluster
- Distributed tracing through the Spring Cloud Sleuth abstraction with two out of the box implementations: one supporting logging (ideal for log collectors and multiplexers like Logstash and Loggregator) and one supporting Twitter’s Zipkin
- Netflix Atlas Telemetry System, the next generation Spectator Metrics library and recent versions of Eureka, Ribbon, Hystrix and Feign are available in Spring Cloud Netflix
- Spring Cloud Bus is now powered by the recently released Spring Cloud Stream
- Cluster Leadership election and locks via Spring Cloud Cluster
- Export of Spring Boot metrics to Amazon Cloudwatch, and native support for Amazon RDS