Mere Technology It’s just ones and zeros…really!

7May/090

Spring 3.0 further down the pipeline

Interesting news from SpringSource this morning, with Spring 3.0 Milestone 3 released. Milestone 2 had been available for some time, but uptake (even early adoption) was I suspect limited largely due to the lack of updates to the documentation.

This new release includes some embryonic documentation, which at least covers the basics on some of the new features.

Some things of note for 3.0:

  • Changes to the Spring project structure supporting modularisation (read OSGi)
  • Both client and server side offerings for REST support. Interestingly this is all in the MVC area, and does not appear to have involved the existing Web Services project at all.
  • Quite a bit of new configuration options that have been pulled in from the JavaConfig project

Quite a bit has been said about the place already about the REST support. One of my favourites was Rick Evans at the London Spring User Group way back in December. Also see Arjen's blog for more recent material.

What is more of a suprise was the inclusion of the JavaConfig features directly into the main Spring project. JavaConfig has looked promising for some time, (particularly where it comes to providing a component model without taking the full OSGi plunge), but hasnt looked like making a 1.0 release any time soon. Perhaps this step marks the beginning of the end for JavaConfig as a separate concern?

I think the decision to grow REST support out of the MVC framework suggests a couple of really interesting things:

Firstly the technological convergence of the web MVC support and the REST WS support, basically into the same thing, will mean that developers working on projects targeting either the human web or the machine web, will not need to add very much in order to support both. Its really just a case of Content Negotiation. I think this makes a lot of sense, and will only add more momentum towards the RESTful WS camp. Spring of course are not the first to do this, but they bring with them influence over the majority of java developers, many of whom will be reconsidering the design decisions underpinning their existing java webapps.

Secondly, with Spring now offering support for both RPC style web services and, RESTful web applications and services, it will be interesting to see which side of the fence receives the bulk of the attention from the Spring developers themselves going forward. Whilst they espouse offering choice to the community, the decisions they make on their internal development efforts are always pretty telling.