close
Newest Post

Message Flow Tracing with AspectJ and JMX

Read more

Spring IDE 1.3 Released

Dear Spring Community,

We are pleased to announce that Spring IDE 1.3 has been released.

This release of Spring IDE provides some new features
and a bunch of bugfixes. For a complete list visit http://springide.org/project/milestone/Release%201.3


Changes:


Read more

Spring Framework 2.0 M4 Released

Dear Spring community,

We are pleased to announce that Spring 2.0 M4 has been released.  Download | Docs | Changelog

Spring 2.0 M4 is the fourth milestone of the next generation of Spring.

The new and noteworthy include:

  • updated JPA support
  • named parameter support for JDBC acces
  • refined XML schema namespaces
  • auto-proxying for FactoryBean-created objects
  • and many other refinements noted in the changelog.

This release also contains numerous fixes for issues discovered since M3.  Users of previous milestones are encouraged to update.  See the changelog for details on all M4 changes.

With this release we are approaching a feature freeze for the 2.0 production target, with only a few further features and refinements planned for inclusion in 2.0. The next release will be Spring 2.0 Release Candidate 1 (RC1), scheduled for May.

We will also release a 1.2.8 maintenance release within a few days, backporting all applicable fixes from 2.0 M4. (This is already available from mbranch-1-2 in CVS, awaiting final tests.)

Enjoy and keep the feedback rolling in,

Juergen
—–
Juergen Hoeller
Lead, Spring Framework Development
Chief Architect, Interface21
http://www.springframework.org
http://www.interface21.com

Read more

Another Reason to Love Spring 2.0: Interceptor Combining

Recently I was working on a project that had a Swing client communicating via RMI to a service layer. The service layer was marked with transactions and everything seemed to work fine. However everytime we’d get an exception at the Hibernate DAO layer, Spring would turn the exception into a runtime exception and it would get propagated all the way up the stack and across the RMI connection as a RemoteException. Whenever the exception was deserialized there would be an exception on the client (separate from the RemoteException.The decision was taken to simply introduce an aspect. Any exception that subclassed ServiceAccessException would be let through to the client while anything else would be converted to a FilteredServiceAccessException (a subclass of ServiceAccessException) and then be thrown. This led to some loss in content, so we made sure to log the original exception on the server where it could be useful and let the client show a generic dialog so the user knew generally what had happened.

Read more

Spring 2.0's JMS Improvements

With the release of Spring 1.1 the Spring community was given it’s first taste of JMS support. This support included exception translation, message conversion, and a template class much like JdbcTemplate. This support also took care of domain unification between the JMS 1.0.2 and 1.1 specs. The centerpieces of this support are the JmsTemplate class and it’s JMS 1.0.2 counterpart JmsTemplate102.

This support was a great improvement over using the raw JMS APIs to do enterprise messaging. However it did have a shortcoming; the JmsTemplate only supported synchronous reception of messages using the JmsTemplate.receive() methods. This behavior worked well for many people but the vast majority of users of ended up rolling their own implementations of an asynchronous consumer. In short, they wanted what EJB 2 called Message Driven Beans.

Read more