SpringOne2GX 2014 - Day 2

Engineering | Josh Long | September 15, 2014 | ...

Day 2's kicked off with a bang! My theory is that by that point people had seen a day's worth of sessions, and so the keynote needed to be full of impactful, big-bang announcements and discussions in order to remain memorable. It needed to raise the bar and demonstrate leadership. And it did.

Spring Framework 4.1

Spring framework lead Juergen Hoeller kicked things off with an introduction to the new featues in the recently-released Spring 4.1.

Spring Framework 4.1 provides annotated JMS listener methods, comprehensive for the final JSR 107 specification, flexible resolution and transformation of static web resources, additional MVC views (like Groovy Server Pages), websocket-support improvements, and many more new features.

Spring XD

Spring XD co-lead Mark Fisher took the stage to introduce the project as it stands now, a year after its debut last year at SpringOne2GX 2013. Mark invited us to consider how far things have come since the early days of Spring, and to consider how interesting the opportunity continues to be today. Then... he told a joke: "the past, the present and the future walk into a bar. It was tense."

It took a moment, but the room recovered. Reluctantly. Mark offered to continue as a full time developer and not switch to comedy.

Mark showed us how Spring XD a looks at the future. It is built on top of first-class components like Spring Batch, Spring Integration, Spring Data, Redis, RabbitMQ, Zookeeper, and Netflix's Zookeeper-addition Curator. It offers a simple, linux like domain-specific language (DSL) that requires no compliation, making Hadoop more approachable to beginners and experts alike. Extending Spring XD is done in Spring/Java, often in Spring Integration to adapt to customer's unique systems as Spring XD sources and sinks.

It provides powerful data-integration and stream processing capabilities in an operator- and developer-familiar package. Mark introduces a demonstration that analyses the resource consumption of a smart power grid and then, using PMML machine-learning support in Spring XD, predicts future consumption levels. The example uses numerous nodes deployed across multiple cluster nodes, but the assembly and description of the solution in Spring XD itself is really simple! (The crowd seemed to think so, too!)

Microservices

* Dr. Dave Syer* (co-founder of Spring Batch, co-lead of Spring Security OAuth and Spring Boot) rejoined the stage to follow up on his day 2 update on Spring Boot with some news about, and an introduction to, the new Spring Cloud umbrella project. Spring Cloud has historically contained Platform-as-a-Service connectors that let you consume services - databases, message queues, etc. - from within a PaaS environment. Spring Cloud now has an expanded scope to define and provide software to better enable modern, cloud-y architectures, like the microservices that Netflix builds atop Spring Boot and their own, open-source stack.

Spring Cloud aims to provide solutions for emergent patterns in large scale, often cloud-based applications:

The new Spring Cloud project, in fact, integrates popular Netflix OSS components like Hystrix (which provides implementations of their famous reliability patterns) and Eureka (which provides service discovery and location).

Dr. Syer introduced a simple microservice that demonstrated two services, one that provided a customers repository and another that provided access to merchants (stores). The customer service returned information about the nearby stores. This information came from the stores service. If the stores service were taken offline, the customers service continued to function.

This effort builds upon Spring Boot with an eye towards simplifying the development of microservices. This message seems to have resonated well, and we think that the combination of Spring Boot, Spring Cloud and CloudFoundry will make a killer combination for JVM apps that need to start life as a monolith, but then need to distrubute and decentralize in order to scale. Adrian Cockcroft explains why distribution and decentralization are so important extremely well in an interview on InfoQ.

Reactor

Reactor Project lead *Jon Brisbin * took the stage to then update us on the state of the Reactor project. Reactor has made great strides since we saw it debut last year. It's since become part of a the Reactive Streams effort jointly led by teams at Netflix, Typesafe, Red Hat, Twitter, Oracle, and Pivotal, among others.

It provided the definition for the LocationProcessor service in the microservices segment. (The LocationProcessor is a nice example of the easy-to-use Java 8 DSL, too!) Reactor is a natural fit for microservices:

It's a foundational piece or well integrated with Spring Framework 4.0's websocket support, Spring XD, Spring Integration, the upcoming Grails 3.0's event system, and much more. In fact, we saw Reactor in action earlier in the evening's keynote!

For More...

...stay tuned to this blog and This Week in Spring every Tuesday!

SpringOne2GX 2014 - Day 1

Engineering | Josh Long | September 10, 2014 | ...

SpringOne2GX kicked off with a bang on Monday night!

"The Ebb and Flow" of Development

The keynote kicked off with Pivotal's own SVP of R&D, Hugh Williams (formerly of e-Bay and Microsoft research) who talked about the ebb (the awkward interruptions in momentum) and flow of software development. Hugh touched on his prior lives at Microsoft (where he helped develop the Bing search engine) and at eBay (a huge Spring user, we learned!) and spoke about what Spring brings to the table: the ability to be nimble, agile.

Spring IO Platform

Next up was Spring framework lead [Juergen Hoeller](Spring Juergen) who revisited the Spring IO platform story originally introduced at SpringOne2GX 2013. He introduced the "tree." Third-party dependencies form the roots of the Spring IO platform. Spring Boot, Spring Foundation (the Spring framework and other projects) and the Spring IO Platform distribution

Spring Data Release Train Evans Goes GA

Releases | Oliver Drotbohm | September 09, 2014 | ...

On behalf of the entire Spring Data team, I'd like to announce the general availability of the Spring Data release train iteration called Evans. The release ships 11 modules to help you build sophisticated data access layers on top of relational and non-relational data stores.

The major themes of this iteration were:

  • Upgrade Spring baseline to 4.0
  • Support for top and first as keywords in derived queries
  • Support for MongoDB 2.6 features like text search
  • SpEL support for Spring Data JPA (Spring Security integration)
  • Redis Sentinel support
  • ALPS and excerpt projections for Spring Data REST
  • Support for custom implementations in the CDI extension
  • Improved multi-store configuration
  • Asciidoctor for reference documentation

This Week in Spring (SpringOne2GX 2014 edition!) - September 9, 2014

Engineering | Josh Long | September 09, 2014 | ...

Welcome to another installment of This Week in Spring, live from SpringOne2GX 2014! This year's show is something to behold! We kicked off the show yesterday with one amazing keynote here in the "lone-star state" featuring Pivotal SVP of engineering Hugh Williams, the Spring team leads Juergen Hoeller, Dave Syer, Graeme Rocher and and Netflix's Andy Glover.

We'll do some recap blogs, of course, so stay tuned. Before we get started with this week's roundup, check out this video of the SpringOne2GX 2014 logo being projected onto the Dallas Omni hotel!

!{iframe width="420" height="315" src="//www.youtube.com/embed/9sQZItUcokA" frameborder="0" allowfullscreen}{/iframe}

And, while this is nothing like what the recording (which'll be available soon, anyway..) or even a well-written recap (stay tuned! Also coming..) would be, here are some choice tweets from last night's keynote to whet your appetite:

Indeed, even the week leading up to SpringOne2GX has been epic as the team's busily been releasing new, exciting bits for us to use! This week's roundup is packed with good stuff.

  1. Just in time for SpringOne2GX, Spring lead Juergen Hoeller has just announced that Spring 4.1 is now available! The new release is packed with great stuff including JMS annotations, comprehensive JCache (JSR 107) support, new Spring MVC views, websocket refinements, improved performance, and much more!
  2. Spring Boot co-lead Phil Webb has just announced Spring Boot 1.2.0.M1, hot on the heals of Spring Boot 1.1.6. 1.1.6 is a bug-fix that's highly recommended. 1.2.0.M1, on the other hand, is the first milestone of the very exciting 1.2 Spring Boot release. It's packed with new features: JTA support, easier consumption of JNDI-bound resources (a nice feature in its own right, but especially convenient in light JTA!), auto-configuration for the Spring Cloud PaaS connectors, easy SSL termination with Tomcat and Jetty, and improved metrics for DataSources and health indicators.
  3. Spring Data lead Oliver Gierke has just announced that Spring Data Evans has gone GA! The new release is crammed full of features! Redis Sentinel, ALPS and excerpt projections, multi-store configuration, a baseline of Spring 4.0, support for top and first as keywords in derived queries, MongoDB 2.6 full text, and much more.
  4. Continuing the data theme, Spring for Apache Hadoop ninja Thomas Risberg has just been released. The new release adds support for append-mode store writers, kerberos configuration for secured clusters, container grouping and clustering in Spring YARN, and it remains compatible with Hadoop 2.0+, Pivotal HD 2.0, Cloudera CDH5, and Hortonworks 2.1.
  5. I'll be giving two webinars soon: one on building microservices with Spring on September 16th, and the other on using the Activiti workflow engine with Spring on September 23rd. Register now and bring your questions, comments and more! We'll have lots to talk about and it should be a lot of fun!
  6. One of my heroes, Spring Integration ninja Artem Bilan has just announced the Spring Integration Java configuration DSL milestone 3. The blog has a list of the (many) new features and supporting code. I couldn't do it justice here, just check it out.
  7. Spring ninja and all-around-nice guy Andy Wilkinson has just announced the release of the Spring IO platform 1.0.2 release. The new release incorporates many new projects, so be sure to check it out. The Spring IO platform is an attempt at harmonizing dependencies across the many Spring projects so that, from the perspective of the dependency consumer, there's never any conflicts with common libraries.
  8. Spring Integration lead Gary Russell has just announced Spring AMQP (for Java) 1.4 milestone 1. The new release includes annotation support (@EnableRabbit) and annotation-driven message listeners (@RabbitListener). Huzzah! This mirrors the similar support for JMS in Spring 4.1.
  9. Artem is not here this week at SpringOne2GX for sad, complicated reasons (we miss you Artem!), but that didn't stop him from making quite a splash this last week first with the Spring Integration Java configuration DSL release (see above) and now the Spring Integration 4.1 Milestone 1 release. The Spring Integration release includes a lot of cool features, including the migration of common types to Spring 4 itself, performance improvements, the introduction of the Spring 4.1 SpEL compiler, web socket adapters (yes, web socket adapters!), http://github.com/projectreactor, a Boon-powered JSON mapper, an implementation of the EIP splitter pattern that can return an Iterator for results (and, thus, can stream them).
  10. Our pal Matt Raible took a look at using the Spring Boot-powered JHipster project. He hit some rough patches, but the blog provides all sorts of good information on how he got around it so that you can avoid them and really fly!
  11. The Blog4Java blog (run by our pal Javier Barquero) has a follow up post to his look at using Spring Batch
  12. And, of course, what SpringOne2GX would be complete without the annual press-release?
  13. There's an interesting post on the Chariot Solutions blog on converting a Spring Boot application from Java to Scala - definitely worth a look. Interestingly, it doesn't seem like you gain all that much over just using Java 8 in this particular example...
  14. Are you in the Dallas Fort Worth area? Since we're throwing SpringOne2GX 2014 in Dallas, we thought we'd take a moment to round up some.. ok a lot.. of the Spring team and head on over to the local Java user group (called the "Java Metroplex Users Group," or Java MUG for short) and say hi. I hope you'll consider joining us for what promises to be a really fun night!

Spring Boot 1.2.0.M1 Available Now

Releases | Phil Webb | September 08, 2014 | ...

I am pleased to announce that Spring Boot 1.2.0.M1 is available now in the Spring milestone repository. This release builds on Spring Framework 4.1 and provides a number of improvements and new features. Highlights include:

  • Support for distributed JTA transactions across multiple XA resources using either an Atomkos or Bitronix embedded transaction manager or a full Java EE Application Server.
  • Easier configuration of JNDI bound DataSource and ConnectionFactory beans.
  • Improved JMS support, including auto-configuration for the Spring Framework 4.1 @EnableJms annotation.
  • Auto-configuration support for spring-cloud.
  • Easier SSL configuration for both Tomcat and Jetty.
  • Improved DataSource Metrics and Health Indicators.

Spring for Apache Hadoop 2.1.0.M1 Released

Engineering | Thomas Risberg | September 08, 2014 | ...

One year ago we released the first milestone release of the Spring for Apache Hadoop version 2.0 project, just in time for SpringOne 2GX 2013. To keep up the tradition, we are pleased to announce the first milestone release of Spring for Apache Hadoop 2.1, just in time for SpringOne 2GX 2014 in Dallas, TX. The release is now available in the Spring IO repository

Main changes for the 2.1.0.M1 release:

  • Added support for append mode in store writers
  • Enhancements for kerberos configuration for secured cluster access
  • Support for container grouping and clustering in Spring YARN, which brings functionality for running multiple container types, a new REST API and an improved application model with new client side commands and a command line shell.
  • Starting with this version we support Hadoop 2.0 APIs but no longer provide backwards compatibility with older Hadoop v1 distributions.

Spring IO Platform 1.0.2 released

Releases | Andy Wilkinson | September 07, 2014 | ...

We are pleased to announce the latest maintenance release of Spring IO Platform is now available from both repo.spring.io and Maven Central.

This release upgrades the versions of a number of the projects in the Platform to pick up their latest maintenance releases:

  • Reactor 1.1.4
  • Reactor Spring 1.1.3
  • Spring AMQP 1.3.6
  • Spring Boot 1.1.6
  • Spring Data Dijkstra SR4
  • Spring Framework 4.0.7
  • Spring Integration 4.0.4
  • Spring Security 3.2.5
  • Spring Security OAuth 2.0.3
  • Spring Web Flow 2.4.1

The versions of many third-party dependencies have also been updated.

Project Page | GitHub | Issues | Documentation

Spring Integration Java DSL 1.0 Milestone 3 Available

Releases | Artem Bilan | September 07, 2014 | ...

We are pleased to announce that the Java DSL for Spring Integration 1.0 Milestone 3 has been released. Please use the Milestone Repository with Maven or Gradle, download a distribution archive, or see the project home page for more information.

Since the last Milestone 2, some new features and further improvements, as well as a number of bug fixes have been included to this Milestone, with the GA release due around the end of October.

First of all thanks for all who are interested in this Spring Integration Extension, provide feedback, share their thoughts and even contribute.

Here is…

Join us at the Spring Data birds-of-a-feather session @springone2gx #s2gx

Engineering | Greg L. Turnquist | September 05, 2014 | ...

Are you ready for SpringOne? It's almost here!

A popular part of SpringOne are the birds-of-a-feather sessions. Different groups get together to talk about different aspects of Spring, Groovy, and Grails. This year, they are scheduled for Tuesday night, September 9th, starting at 9pm. (When do they end? When everyone finally leaves!)

They are indeed popular. Last year I sat in on the Spring Framework one and enjoyed the close, unscripted discussions (not lectures). You should think about carving out some time for that!

This year, we have a new session planned: Spring Data.

If you aren't aware…

Spring AMQP (for Java) 1.4 Milestone 1 Available

Releases | Gary Russell | September 05, 2014 | ...

We are pleased to announce that the first milestone of Spring AMQP 1.4 is now available.

##Key Features

  • Annotation-based message listeners (@RabbitListener), enabled with either @EnableRabbit or <rabbit:annotation-driven /> (see below for an example).
  • RabbitMessagingTemplate allowing interaction with RabbitMQ using spring-messaging Message objects.
  • A new factory bean to ease the configuration of SSL with the RabbitConnectionFactory
  • Log4j Appender now supports configuration of message persistence.

Here is a simple example for a POJO service using the new annotations:

public static class…

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