synapse-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andreas Veithen" <>
Subject Re: Commons JMS transport diffs for JTA transactions
Date Mon, 10 Nov 2008 13:30:41 GMT

I have three comments here:

1. The solution is essentially single threaded: at any given moment
there is at most one thread that is receiving or processing a message
(for a given destination). Do we really want this? If yes, do we need
a worker pool for this?
2. I think we are trying to pack too much different things into the
same piece of code (JMSMessageReceiver and JMSMessageReceiver.Worker).
If we use MessageConsumer#receive, then it doesn't make sense to
instantiate a JMSMessageReceiver, which is an implementation of
MessageListener. I think that in order to support
MessageConsumer#receive, we should first refactor the existing code to
better separate the part that is concerned with message
reception/acknowledgement and transactions from the part that really
processes the message.
3. If we rollback messages, this means that at some point they will be
received again (retry). How does your solution behave with respect to



On Mon, Nov 10, 2008 at 13:06, Irantha <> wrote:
> Attched  commons JMS transport diffs to support JTA User Transactions.
> axis2.xml transport receiver configuration is as following,
> <transportReceiver name="jms"
> class="org.apache.synapse.transport.jms.JMSListener">
>     <parameter name="default">
>        <parameter
> name="java.naming.factory.initial">org.jnp.interfaces.NamingContextFactory</parameter>
>        <parameter name="java.naming.provider.url">localhost:1099</parameter>
>        <parameter
> name="transport.jms.ConnectionFactoryJNDIName">java:JmsXA</parameter>
>         <parameter
> name="transport.jms.UserTransactionJNDIName">UserTransaction</parameter
>        <parameter name="transport.jms.AutoCommit">true</parameter>
>       <parameter name="transport.jms.ConnectionFactoryType"
> locked="false">queue</parameter>
>    </parameter>
> </transportReceiver>
> -Irantha
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message