You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by James Strachan <ja...@yahoo.co.uk> on 2002/05/15 16:39:30 UTC

[messenger] support for JMS bridges has been added

The Messagelet engine in the messenger project now supports the concept of
'bridges' which allow messages to be consumed from one subscription on a JMS
connection and sent on another JMS connection and destination. This allows,
say, SpiritWave messages on some Topic to be consumed and sent to an
MQSeries queue. This mechanism works on any JMS providers and on queues
and/or topics on either end.

The clever stuff is all done by a special Message Driven Object called
BridgeMDO. BridgeMDO also provides a plethora of Factory methods and
Strategy methods so that it should be pretty easy to derive from to perform
any kind of arbitrary transformation as the message passes from one JMS
provder to another. Also various custom 'commit' mechanisms can be employed.

As part of this change the subscription deployment descriptor has changed a
little; the attributes 'connection' and 'subject' are used instead of
'messenger' and 'destination' on the <subscription> element.

Here's an example subscription.xml document that demonstrates how to bridge
from one JMS provider to another. Note that selectors can be used to filter
subscriptions.

<subscriptions>
  <subscription connection="spiritWave.topic" subject="foo.input">
    <bridge outputConnection="mqseries.queue" outputSubject="foo.output"/>
  </subscription>

  <!-- use my own BridgeMDO class to do some custom transformation -->
  <subscription connection="spiritWave.queue" subject="foo.input">
    <bridge outputConnection="jboss.topic" outputSubject="foo.output"
className="MyBridgeMDO"/>
  </subscription>
</subscriptions>


Going forward when more complex transformations that are required, I hope to
integrate support for Jelly scripts that can then perform XSLT, XPath, SQL
etc in a similar manner to using JSTL inside JSP.

James


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>