Check out Dave Syer's \"Spring Security and AngularJS\" blog series converted to tutorial

Engineering | Greg L. Turnquist | April 02, 2015 | ...

Greetings Spring community,

Dave Syer's six-part blog series on Spring Security and AngularJS has been a smash hit! It has echoed across the twittersphere, torn up DZone, and drawn people far and wide.

Did you miss any of it? Perhaps you've heard of it and found it too difficult to track down the first post. No more.

Please navigate to our newly minted Spring Security and AngularJS tutorial and enjoy all that solid gold. We migrated 100% of it into that tutorial, made slight edits to the links, and polished it up just for you.

Share and enjoy!

Ongoing support for Java 7 (and even Java 6)

Engineering | Juergen Hoeller | April 01, 2015 | ...

You might have heard about the end of public updates for Java 7, coming up in just a few days with the release of Java 7 update 80. See the following Oracle pages for a reference:

Let's clarify what it really is: the end of public updates, and by no means an end of life (EOL). With the second link above, scroll down to the "Oracle Java SE Support Roadmap" section and you'll find the actual EOL dates: Dec 2018 for Java 6 and Jul 2022 for Java 7. Yes, that's another…

This Week in Spring - March 31, 2015

Engineering | Josh Long | March 31, 2015 | ...

Welcome to another installment of This Week in Spring! As usual, we've got a lot to cover so let's get to it!

  • Spring Security lead Rob Winch just announced the amazing Spring Security 4.0 release! This one is packed with amazing features including websocket support, Spring Data integration, enhanced testing support, and much improved defaults
  • The Cloud Foundry Java buildpack now supports overriding inbuilt configuration through the use of well-named environment variables! This means you can tweak all manner of the default behavior without needing to fork the buildpack!
  • Good news! Spring XD 1.1.1 is released! It includes improved performance and offset management when using Kafka message bus, support for Spark's streaming reliable receiver, Kryo serialization improvements, RabbitMQ auto-cleanup options and a Sqoop…

SpringOne2GX 2014 Replay: GORM inside and out

Engineering | Pieter Humphrey | March 31, 2015 | ...

Recorded at SpringOne2GX 2014.

Speaker: Jeff Scott Brown

More Groovy Track


GORM is a super powerful ORM tool that makes ORM simple by leveraging the flexibility and expressiveness of a dynamic language like Groovy. With GORM developers get access to all of the power and flexibility of an ORM tool like Hibernate without any of the complexity.

Looking ahead to Spring Roo 2.0

Engineering | Pieter Humphrey | March 30, 2015 | ...

Original author: DISID Corporation

Dear Spring community,

The DISID Spring Roo team is busily working towards the 2.0 release. With Spring Roo 2.0 we would like recover the essence that defines the Roo project:

  • Be a rapid application development tool, Roo isn't either a framework nor Maven plugins.
  • Intelligent code generation to provide improved productivity.
    • Developers often are forced to spend too much of their time doing things that add too little value, Spring Roo's code generation helps them stay focused.
  • Create applications based on the extensive set of Spring technologies: Spring Boot, Spring Data, Spring MVC, Spring Security, etc.
  • Generate applications based on best architecture practices like: Service Layer, Repository Layer
  • New scaffolding model that generates a fully functional responsive UI based on jQuery and Bootstrap.
  • Improve extensibility and increase the collaboration of the Spring Roo project:
    • We will create the “Roo Marketplace”: the alternative to Roobot, easier to maintain and available for everyone, a place to find and keep track on third party addons and Roo Addon Suites.
    • A “Roo Addon Suite” is a great way to package and distribute a set of add-ons together, for example if you want to distribute Roo custom distributions. Roo Addon Suite is based on OSGi R5 Subsystems that provides a really convenient deployment model, without compromising the modularity of Roo.

The new Roo 2.0 is a beginning, in future versions we would like to design a new way to define the view layer components to get a true independence from view layer technologies letting the developers to try the technology that better adjust to their requirements: JSP, Thymeleaf, etc. without losing any benefit.

We have scheduled the work of the relase 2.0 in 3 main milestones:

Milestone 1: Create a smaller and easier to maintain Spring Roo distribution. From 2.0, Roo will contain the runtime and the main addons only, so new versions could be released more frequently and being kept up to date with latest Spring projects:

  • Make a better separation between the Spring Roo runtime and the core addons. The Roo runtime APIs (classpath, metadata, support, etc.) must be kept as stable and backwards compatible as possible.
  • Move the addons not classified as ”core addon” (GWT, JSF, ...) to their own projects to be maintained by Roo community. If your organization would like to contribute to Roo project by maintaining these addons please contact to: [email protected]
  • Migrate current user guide from docbook to ASCIIdoc.

Milestone 2: Update code generation to use latest Spring technologies

  • Update code generation to use the latest Spring framework versions (4.x)
    • Move from Spring framework dependencies to Spring IO Platform
  • User Managed POM (ROO-3465, ROO-3478)
  • Spring Profiles support
  • Annotation based configuration:
    • Move to class configuration in spite of XML configuration
    • Improve application maintanability by using Spring Boot annotations
  • Remove Active Record data model in favor of the Repository (Spring Data) based one.
  • Generate application arquitecture based on service layer pattern by default

Milestone 3: Move web layer to HTML5

  • Responsive UI – View layer based on jQuery, Bootstrap and CSS3

Important: Roo 2.0 might contain API changes and less add-ons than previous version so this release probably won't be backward compatible with 1.3. You can see a more specific roadmap in the SpringRoo JIRA:

As always, you’ll also find Roo on Twitter - either follow @SpringRoo or just include #SpringRoo in your tweets. Stay tuned to Spring Roo news!

What's new in Spring Data Fowler?

Engineering | Thomas Darimont | March 26, 2015 | ...

The GA release of Spring Data release train Fowler marks the finishing line of 6 month of development. It's time to give you an impression of the content of this release and a brief overview about individual features. The major themes of the Fowler release train were performance improvements and enhanced Java 8 support that are mainly reflected in the Spring Data JPA and MongoDB modules but a lot of other ones have seen significant improvements, too.

The easiest way to upgrade to the Spring Data Fowler release train is by using Spring Boot and configuring the spring-data-releasetrain.version property to Fowler-RELEASE. If you're not using Spring Boot yet, add the Spring Data BOM to your <dependencyManagement />

This Week in Spring - March 24th, 2015

Engineering | Josh Long | March 24, 2015 | ...

Welcome to another installment of This Week in Spring! This week, I'm in São Paulo, Brazil, where I presented a workshop on building cloud-native applications - specifically microservices - with Spring Boot, Spring Cloud and Cloud Foundry (via Pivotal Web Services).

Multiple UI Applications and a Gateway: Single Page Application with Spring and Angular JS Part VI

Engineering | Dave Syer | March 23, 2015 | ...

Note: the source code and test for this blog continue to evolve, but the changes to the text are not being maintained here. Please see the tutorial version for the most up to date content.

In this article we continue our discussion of how to use Spring Security with Angular JS in a "single page application". Here we show how to use Spring Session together with Spring Cloud to combine the features of the systems we built in parts II and IV, and actually end up building 3 single page applications with quite different responsibilities. The aim is to build a Gateway (like in part IV) that is used not only for API resources but also to load the UI from a backend server. We simplify the token-wrangling bits of part II by using the Gateway to pass through the authentication to the backends. Then we extend the system to show how we can make local, granular access decisions in the backends, while still controlling identity and authentication at the Gateway. This is a very powerful model for building…

Using Google Protocol Buffers with Spring MVC-based REST Services

Engineering | Josh Long | March 22, 2015 | ...

This week I'm in São Paulo, Brazil presenting at QCon SP. I had an interesting discussion with someone who loves Spring's REST stack, but wondered if there was something more efficient than plain-ol' JSON. Indeed, there is! I often get asked about Spring's support for high-speed binary based encoding of messages. Spring's long supported RPC encoding with the likes of Hessian, Burlap, etc., and Spring Framework 4.1 introduced support for Google Protocol Buffers which can be used with REST services as well.

From the Google Protocol Buffer website:

Protocol buffers are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data – think XML, but smaller, faster, and simpler. You define how you want your data to be structured once, then you can use special generated source code to easily write and read your structured data to and from a variety of data streams and using a variety of languages...

Get the Spring newsletter

Thank you!

Get ahead

VMware offers training and certification to turbo-charge your progress.

Learn more

Get support

Spring Runtime 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