This Week in Spring - July 23, 2013

Engineering | Josh Long | July 24, 2013 | ...

Hey everyone! Remember that SpringOne 2GX 2013 early bird expires August 9th, so hurry to secure the discounted rate! Also, make sure to check the agenda as new sessions have been added. This week I'm at OSCON talking to developers in the wonderful city of Portland, OR about Spring 4, REST and joining my colleagues at Pivotal to talk about Cloud Foundry, big data, and much more! If you'd like to chat, I hope you'll come to the talks that we're putting on and visit us at the Pivotal booth in the exhibition hall! It's been a big week for both Spring and Pivotal:

  1. Pivotal HD 1.0, the world's fastest Hadoop distribution, was released in two flavors - Community Edition, and a Pivotal Single Node Edition (VM), a Virtual Machine download. Head over to gopivotal.com and give it a test drive - Community Edition deploys up to a 50 node cluster!
  2. We're celebrating Project Reactor's initial milestone release - 1.0.0M1 - which already benchmarked TCP on Netty at 300% faster than Netty alone! When integrated into key Spring technologies, the possibilities of Fast Data are going to blow people's hair back. Congrats to Jon Brisbin!
  3. Spring Data Arora Service Release 2 is available for download.
  4. Martin Lippert published an excellent blog on Annotations and Java Config support that are available in Spring Tool Suite 3.3.0. Support of JavaConfig as an XML alternative across the Spring ecosystem is nearing a pervasive level.
  5. Join Hemant Joshi as he introduces how to use Spring and the Cucumber BDD testing framework in a webinar on July 30th, 2013.
  6. Hadoop hungry? Join us for a Webinar series -- “What You Can Do with Hadoop” on the first Thursday of every month. The first webinar on August 1st, 2013 will provide in-depth details about the features and tutorials included in the Pivotal HD Single Node (VM).
  7. My buddy Andy Piper (@andypiper) puts together a wonderful roundup of Cloud Foundry called This Week in Cloud Foundry. I can't recommend it enough! He just started, and he's doing a heckuva job!
  8. The Zenika blog has a very nice post on how to document a REST API with Swagger, which you can transparently layer on top of your Spring MVC API.
  9. Matt Stine also has a great post on Spring, Continuous Integration and CloudFoundry.
  10. The JavaCode Geeks blog has a nice post on how to add validation to a REST API
  11. The Pivotal blog has a really great post on how Tomcat compares to Pivotal's tcServer, a binary-compatible distribution of Tomcat that we support and augment for deployment
  12. Also on the Pivotal blog, a fantastic post on how Spring Data GemFire (and GemFire) can really boost your application's performance!
  13. Xavier Padró's has a really nice introduction to messaging with Spring
  14. This week at OSCON, I found affixed to all the bulletin boards and on the entry-doors into the conference a notice advertising a hackathon being run by inBloom, which is a nonprofit data and content services company working to support school districts as they implement great personalized learning tools for kids, teachers, and parents. inBloom is sponsoring a 2-day hackathon at OSCON to work on their open source content services. Check out the projects and the code! I really enjoyed meeting these fine people and encourage any Spring ninjas out there to raise your hands and contribute!

Spring Framework 4.0 M2: WebSocket Messaging Architectures

Engineering | Rossen Stoyanchev | July 24, 2013 | ...

As I wrote previously, a WebSocket API is only the starting point for WebSocket-style messaging applications. Many practical challenges remain. As one Tomcat mailing list user mused recently:

it does seem to me that websockets is still not really "production-ready", (I am not talking about the Tomcat implementation per se, but more generally) ... native websockets capability in IE is only available since IE-10 and that solutions which allow this to work in lower IE versions are a bit "iffy" (relying on a diversion through Adobe's FlashPlayer e.g.). (Most of our customers are largish corporations, which are not going to update their browsers, nor open special ports in their firewalls, just to please us).

Spring Data Arora Service Release 2 available

Releases | Oliver Drotbohm | July 22, 2013 | ...

I am pleased to announce the availability of the second service release of the Spring Data Arora release train. It includes quite a few significant bug fixes that we have already released in the first milestone for the Babbage release train. To makethem available in an official release, we backported them into this one here. The modules included are:

The artifacts are also available in Maven central. You find a comprehensive list of the 46 tickets resolved in our JIRA. The next release is going to be a release candidate for the Babbage release train in early August. You can find details for this release in the Spring Data Commons wiki.

If you want to learn more about the Spring Data family of projects, the best event to do is SpringOne 2013 being held in Santa Clara early September. Hope to see you there!

JavaConfig support in the Spring Tool Suite

Engineering | Martin Lippert | July 18, 2013 | ...

Spring applications that use JavaConfig instead of XML become more and more popular. Today we would like to show you the new features in the latest Spring Tool Suite 3.3.0 release that makes it easier for you to program Spring applications using annotations and JavaConfig instead of XML.

Project configuration

Let's assume you implement a web application based on Spring and JavaConfig. A common practice would be to have a base @Configuration class where you define the common base Spring configuration in your application. That might look like this:

@Configuration
@ComponentScan 
class…

Reactor 1.0.0.M1 - a foundation for asynchronous fast-data applications on the JVM

Engineering | Jon Brisbin | July 18, 2013 | ...

I'm super excited to announce the first milestone release of Project Reactor! Project Reactor is a foundational framework for building asynchronous, FastData applications on the JVM. Some of the goodness in Reactor 1.0.0.M1 includes: reactive composition helpers Stream and Promise, a TcpServer and TcpClient, and Groovy and Spring support. Inspired by Reactive Extenstions, RxJava, the new JDK 8 Stream API (and Scala, and others...), these Composables make coordinating asynchronous tasks dead simple. They support traditional callback-style programming using Consumers, but they also offer a…

This Week in Spring - July 15, 2013

Engineering | Josh Long | July 16, 2013 | ...

Welcome back to another installation of This Week in Spring. We've got a lot to cover, as usual, so let's get right to it! This week I'm at SenchaCon, talking to developers about building RESTful applications and clients, and then I'm off to OSCON next week, where I'll be hosting the Spring BOF, giving a talk on the latest and greatest in Spring 4, and helping to man the Pivotal booth. If you're at SenchaCon or OSCON, don't hesitate to ping me and we can talk Spring, Cloud Foundry, big-data, and more!

  1. SpringOne 2GX 2013 early bird expires soon, register now to secure the discounted rate!
  2. Spring Data ninja Thomas Risberg has announced that Spring For Apache Hadoop 1.0.1.RC1 has been released. The new release supports Hadoop 2.0 and Pivotal HD, among other things.
  3. Tool Suite ninja and lead Martin Lippert has announced that Spring Tool Suite And Groovy/Grails Tool Suite 3.3.0 have been released. Very nice!
  4. Gary Russell has announced that Spring AMQP 1.2.0 has been released. Check out the What's New for details.
  5. Join Mattias Severson & Johan Haleby and learn about Functional Programming without Lambdas on July 18, 2013
  6. Join Hemant Joshi as he introduces how to use Spring and the Cucumber BDD testing framework in a webinar on July 30th, 2013.
  7. Our friends at Skills Matter are throwing a Spring-centric conference (the Spring Exchange) in London on November 14 and November 15. There are some killer speakers, and I highly encourage you to make it, if you can.
  8. Are you using Spring Social in the wild? We want to hear about it!
  9. Spring Security lead and ninja Rob Winch has put together a very nice post on readability when using Spring Security Java configuration.
  10. A new "Quick Search" is included in Spring ToolSuite (STS) 3.3.0 and Groovy Grails Tool Suite (GGTS) 3.3.0 which have just been released. Kris De Volder, a senior developer on the Spring and Groovy and Grails Tool Suites, has just put together a nice post on this new feature.
  11. Our friend Johnathan Mark Smith is at it again! This time, he's written a post, How to use Fongo and nosql unit to test Spring Data project with MongoDB, JUnit, Log4J. Check it out!
  12. Wow! Amir Kibbar, at the HP Software Developer's blog, has put together a really comprehensive look at how to develop a service tier, build a web tier, and then test both. The first post on setting up a service tier, the second is an example of refining the service tier and testing it, the third post introduces how to setup a REST endpoint, and the fourth post talks about testing the REST service. Definitely worth a read (and a bookmark!) It's possible to do everything demonstrated in these posts using straight Java configuration, also…
  13. Igor Artamonov has a nice, abbreviated post on how to build a RESTful endpoint with Spring.
  14. Our friend at the Baeldung blog has put together a very nice post on how to use digest authentication with Spring Security.

Spring AMQP 1.2.0 for Java Released

Releases | Gary Russell | July 15, 2013 | ...

The Spring AMQP project applies core Spring concepts to the development of AMQP-based messaging solutions.

We are pleased to announce that the 1.2.0.RELEASE is now available for Java.

Following the Release Candidate, this GA release includes a minor bug fix and updates the default RabbitMQ client to 3.1.3. See the Release Notes for details of these changes.

Major changes over and above the 1.1.x release are highlighted in the What's New section of the reference manual.

Please see the Project page for more information including links to documentation and downloads.

Spring for Apache Hadoop 1.0.1.RC1 released - adding Hadoop 2.0 and Pivotal HD 1.0 support

Releases | Thomas Risberg | July 11, 2013 | ...

We are happy to announce a new release candidate 1.0.1.RC1 for the Spring for Apache Hadoop project. This release candidate introduces support for Apache Hadoop 1.1.2, Hortonworks HDP 1.2, Apache Hadoop 2.0.3-alpha as well as support for Pivotal HD 1.0. The support for these versions are in addition to the already supported versions of Apache Hadoop 1.0.4 and Cloudera CDH 3 and CDH 4. This brings us to support for no less than 7 different Hadoop versions.

To make it easier to configure project builds using these varying versions we will be introducing specific flavors of the Maven artifacts…

Eclipse Quick Search

Engineering | Kris De Volder | July 11, 2013 | ...

Are you an Eclipse user? Do you want a fast and easy way to search for text snippets and patterns in your workspace? Then read on!

A new "Quick Search" is included in Spring ToolSuite (STS) 3.3.0 and Groovy Gails Tool Suite (GGTS) 3.3.0 which have just been released. Even if you are not a Spring or Grails developer, you might be interested in this Feature because it can also be installed separately into a vanilla Eclipse.

Introducing the Quick Search Dialog

The Quick Search dialog is designed to do just one thing and do it well: use simple text searches to quickly navigate around your workspace.

You open the dialog by pressing CTRL+SHIFT+L (or CMD+SHIFT+L on Mac):

The Power of Simplicity

Unlike the standard Eclipse search UI, QuickSearch UI is extremely simple. Nothing to configure (e.g. no need to define a search Scope create a workingset etc.). There's just a single search text box. Start typing and see the results appear immediately and update instantly as you type. Use the arrow keys to select a result and press enter to navigate to it. You can also hit enter immediately to open the first result.

Of course you can also use the mouse if you want to, but there's no need for your hands to leave the keyboard

Spring Security Java Config Preview: Readability

Engineering | Rob Winch | July 11, 2013 | ...

In this post, I will discuss how to make your Spring Security Java configuration more readable. The post is intended to elaborate on a point from Spring Security Java Config Preview: Web Security where I stated:

By formatting our Java configuration code it is much easier to read. It can be read similar to the XML namespace equivalent where "and()" represents optionally closing an XML element.

Indentation

The indentation of Spring Security's Java configuration really impacts its readability. In general, indentation like a bullet list should be preferred.

For a more concrete example, take a…

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