The 3rd development milestone for Spring Integration 2.0 was released last week (download it here).
If you have read Oleg’s recent blog, you already know that we have started working on a new reference sample implementation based on the “Loan Broker” example that plays a significant role in Gregor Hohpe and Bobby Woolf’s Enterprise Integration Patterns book.
I just wanted to post a brief blog listing a few of the other new additions and improvements in this release. You can expect to see more detailed blog entries covering a few of these features over the next couple weeks. I’m including some links to documentation, samples, and test code so that you can at least get a quick sense of how these features are evolving.
Inbound and Outbound Channel Adapters for TCP/UDP
Read about them here.
Channel Adapters for JMX
This set of adapters provides support for JMX Notifications (listening or publishing), MBean Attribute-polling, and MBean Operation-invoking. Also, on top of that JMX support, we now have our initial implementation of the Control Bus (our Loan Broker sample will eventually be extended to show the Control Bus in action as is done within EIP Chapter 12). Read more here.
Inbound Channel Adapter for JDBC
Documentation is in progress, but you can see some examples in the test cases. We have also started work on a JDBC-based MessageStore implementation, which may be used from many components within the framework where persistence is desirable (such as Aggregators). The MessageStore interface itself is still evolving, but we’re trying to keep it as simple as possible, since there will likely be a number of different storage options to consider in the future.
Configurable Type Conversion
Spring Integration now supports a configurable Spring 3.0 ConversionService instance. A bean named “integrationConversionService” of type ConversionService will be used for handler method-invocation (service-activator, transformer, router, splitter, etc). In other words, if you pass a Message with a payload of type Foo, but the method being invoked expects an instance of type Bar, then it can be automatically converted as long as the ConversionService you have configured contains a Converter that supports conversion from Foo to Bar. Here is some test code and the corresponding configuration.
Inbound Web Services Sample
We’ve added a new sample demonstrating inbound Web Services support. As with all of the samples, it may be built via Maven as described in the samples’ README.txt that is included with the distribution.