In 2008, SpringSource announced a collaboration with Adobe to evolve the integration between the
Spring framework and Adobe's open sourced middleware and Flash Action Message Format (AMF)
server (formerly LiveCycle Data Services ES) BlazeDS. This integration includes the capability to export
services, in typical Spring remoting and messaging fashion, as AMF-invokable services. AMF is the
binary format that the Flash Virtual Machine reads and writes for RPC. While the Flash Virtual Machine
also supports JSON, XML, and HTTP, AMF is remarkably quick, owing mainly to how well-compressed
it is. Message queue functionality and Comet-style applications with server-side push and publish/
subscribe architecture support are also offered.
Independently, a Spring Extension called Spring ActionScript—a rework of a framework formerly
known as the Prana framework—is in incubation and being developed. The framework provides auto
wiring, an IoC container based on Spring, a reflection API, utilities, and integrations with popular MVC
frameworks Cairngorm and PureMVC.
The exciting list of new technologies is ever growing. For some bleeding-edge functionality that's
definitely worth watching, visit the Spring Extensions page at http://www.springsource.org/extensions
2-1. Getting Started with the Latest and Greatest Spring Framework
You've read enough and want to start using the Spring framework 3.0 right now!
You can download Spring framework 3.0 or use Maven/Ivy to obtain the relevant .jar files. To download
the distribution manually, visit http://www.springsource.com/download . You'll see the latest milestones
available for your consumption. If you're feeling adventurous, you can ride Spring's HEAD.
If you do use Maven/Ivy, however, there are a few things to be aware of because the framework's
source layout has changed.
How It Works
They broke the build! The various packages of similar functionality have been broken out and moved
into their own separate projects, with their own proper source and test directories. This enables easier
development for the maintainers. Internally, the code is now standardized on the same Ivy-based build
system: Spring Build.
The source code itself has moved, too! It used to be on SourceForge.net , but now you can get it
The migration of the source code won't affect you if you're not hacking on the code yourself.
If you're trying to build against it using Maven/Ivy, you need to be aware of a few things. First,
because of the enhanced modularity of the projects, there are more potential jars to download. You can
stipulate every one of them using Maven, or you can simply refer to the wrapper dependency, whose
sole function is to transitively import them all. The wrapper dependency has a dependency on all the
other dependencies, which means that they'll come with when you use a tool such as Maven or Ivy to
fetch your dependencies. It functionally replaces the old spring.jar that was shipped, which contained
the entire framework in one large .jar file. Naturally, you'll end up with quite a few more .jar files with
this approach, but the effect is the same: the entire Spring framework is on your classpath come build or