The Spring Blog

Engineering
Releases
News and Events

This Week in Spring - January 30th, 2018

Hi Spring fans! Welcome to another installment of This Week in Spring! This week I was in Los Angeles and Chicago and now I’m in San Francisco, taking meetings with Pivotal ecosystem folks and customers. We’ve got an incredibly busy week’s worth of stuff ahead of us, so let’s get to it!

Read more...

Reactor Bismuth-SR5 is out!

Improvements, new features, and fixes have landed in a Maven Central mirror near you under Bismuth-SR5 Bill Of Material. This version is now used by Spring Framework 5.0.3 and the upcoming Spring Boot 2.0.RC1! Our site projectreactor.io has been updated with the latest versions.

Reactor-Core 3.1.3

release notes

A quality update including more than a dozen fixes and just a couple new features: new Flux#delaySequence and Signal#getContext access to the current flow Context.

reactor-test also welcomed new features including Context verification facilities and a StepVerifier#toString implementation.

Read more...

Next Generation OAuth 2.0 Support with Spring Security

Current State

The current state of OAuth 2.0 Support, within the Spring projects portfolio, is spread out between Spring Security OAuth, Spring Cloud Security, Spring Boot 1.5.x, and the new support introduced in Spring Security 5. As a user of OAuth, you may be asking, "Which project(s) do I use? And why has Spring Security 5 introduced new support into the mix?"

To put it simply, there was a need to unify the OAuth 2.0 support into one project in order to provide a clear choice to the user and to avoid any potential confusion. In addition, the OAuth 2.0 support needed to take the next level and provide more extensive support for OAuth 2.0 and OpenID Connect 1.0. Also, based on community feedback, documentation needed to be re-vamped in order to allow for ease of use and promote developer productivity. Based on all these factors, we decided to start afresh and build the next generation of OAuth 2.0 support in Spring Security 5.

Read more...

This Week in Spring - January 23rd, 2018

Hi Spring fans! Welcome to another installment of This Week In Spring. This week I’m in Los Angeles (warm!) talking to customers and then it’s off to Chicago (not warm!). There’s so much good stuff to cover this week so let’s get to it!

Read more...

This Week in Spring - January 16th, 2018

Aloha! This week I’m in sunny Honolulu for the first annual LavaOne conference. If you’re not here, you should be! The show is amazing, enjoys 50% female to male audience attendance, the speakers are world-class (well, except yours truly, but don’t tell them that..) and the location is pretty hard to beat!

That said, nothing gives me more pleasure than saddling up to a table with a laptop, some green tea, sunglasses and sunscreen lotion and checking in on the community. This week’s been a heckuva week indeed! Lot’s of great stuff so let’s get to it!

Read more...

Building richer hypermedia with Spring HATEOAS

Greetings Spring community,

As previously announced, we have released a new Affordances API in 1.0.0.BUILD-SNAPSHOT. In this blog post, we’ll take a peek at exactly what this feature lets you do.

History of Affordances

For starters, what is an affordance? Doing a little archeology, Mike Admundsen, a REST advocate, has an article detailing the word’s origins, going back at least to 1986:

The affordances of the environment are what it offers …​ what it provides or furnishes, either for good or ill. The verb 'to afford' is found in the dictionary, but the noun 'affordance' is not. I have made it up (page 126).
— The Ecological Approach to Visual Perception (Gibson)

It then appeared in a psychology paper in 1988:

…​the term affordance refers to the perceived and actual properties of the thing, primarily those fundamental properties that determine just how the thing could possibly be used. (pg 9)
— The Design|Psychology of Everyday Things (Norman)

Finally, it can be found in none other than one of Roy Fielding’s presentations on hypermedia in 2008:

When I say Hypertext, I mean the simultaneous presentation of information and controls such that the information becomes the affordance through which the user obtains choices and selects actions (slide #50).
— Slide presention on REST (Fielding)

In all these situations, "affordance" refers to the available actions provided by the surrounding environment. In the context of REST, these are actions detailed by the hypermedia.

In the past, when people moved away from SOAP and its action-based tactics, they have struggled to document their APIs, many unaware that Roy Fielding built hypermedia into REST for this very purpose. By including data along with the controls to not just find related data, but to also use the data is key.

With a HAL document, clients are provided very simple affordances. The links are shown but nothing else about them. What you can do with the links and what it takes to interact with them is not detailed.

Read more...

This Week in Spring - January 9th, 2017

Hi Spring fans! Welcome to another installment of This Week in Spring! This week I’m off to Germany where I’ll be speaking at the Java User Group in Münster on Wednesday night. Then, it’s off to Solingen for a Cloud Native day on the 12th (this Friday) where I’ll be presenting all afternoon - register now! And, if you’re closer to the Pacific ocean than the Atlantic ocean, join me next Monday in Hawaii and we’ll talk about all things Spring at the very promising LavaOne conference.

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

Read more...

This Week in Spring (7th Anniversary Edition) - January 2nd, 2017

Hi Spring fans! Welcome to another installment of This Week in Spring! I hope you had a wonderful, safe and fruitful new year celebration.

This is the first roundup of the new year and so it is also the 7th year anniversary of my starting this column. Every Tuesday, without fail (come holiday, sick-day, flights or frights!), since the first week of January 2011, I’ve put together this roundup and it has been, and continues to be, an honor. As usual, I’m always happy to have feedback and suggestions from you, the most amazing community ever! Don’t hesitate to reach me on Twitter (@starbuxman) or by email.

Read more...

This Year in Spring - 2017

Hi Spring fans! Welcome to another, albeit very special, installment of This Week in Spring! This is the last installment before 2018 and so we’ll take the opportunity to review, as we always do in the last installment of the year, this very exciting year in Spring and its ecosystem.

Let me, on behalf of the Spring and larger Pivotal team, to be the first to wish you and yours a heartfelt happy and safe New Year! Let’s first look at some of the major trends that defined 2017. We’ve got a lot to cover!

Read more...

Spring Tool Suite 3.9.2 released

Dear Spring Community,

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

Highlights from this release include:

  • updated to Eclipse Oxygen.2 release (https://www.eclipse.org/oxygen/noteworthy/)
  • includes updated support for JDK9 and JUnit 5
  • allows to install Spring Tools 4 Public Beta features as early-access add-ons

To download the distributions, please go visit:

Detailed new and noteworthy notes can be found here: STS 3.9.2 New & Noteworthy.

Read more...