TimeoutManage I WTRN0006W: Transaction XXXX has timed out after 120 seconds.
When the task finally completes and attempts to put the reply message on the reply queue, I will then see the following types of messages in my log...
XATransaction E J2CA0026E: Method addSync caught javax.transaction.RollbackException: Transaction rolled back
.
.
while trying to register the Resource Adapter with the Synchronization Manager for the current transaction, and threw a ResourceException.
SystemErr R javax.jms.JMSException: CWSIA0005E: The JCA runtime failed to allocate a connection.
.
Caused by: javax.resource.ResourceException: addSync: caught Exception
.
Caused by: javax.transaction.RollbackException: Transaction rolled back
This then seems to immediately resend the original message on the request queue as another instance of my MDB is triggered.
So I'm wondering
1) How do I control the length of time before a transaction times out?
2) Are there other ways to avoid the errors that occur when I am connecting to the reply queue?
3) How do I control whether or not a message is resent on the request queue when an error is encountered?
Thanks in advance.
To set the timeout for the entire app server, see http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.ejbfep.multiplatform.doc/info/ae/ae/tjta_settlog.html
To set the timeout on an individual EJB, see http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.etools.j2ee.ui.ws.ext.doc/topics/tedglobtx.html
Hope this helps.
wesk...@optonline.net wrote:
[snip]
Regards,
David
You make a very good point. The requests made to my application are to generate a (sometimes large) PDF document. So they are not truly transactional in nature. Is there a way to configure an MDB in a non-transactional way? Ideally I'd still have a timeout parameter somewhere, which would allow me to reply with a "request failed" message. I'm also open to other suggestions.
Thanks,
-Bill
wesk...@optonline.net wrote:
> David,
>
>
>
> Is there a way to configure an MDB in a non-transactional way?
>
>
>
> Thanks,
>
> -Bill
Perhaps you could have the MDB kick off an Asynch Bean to do the work?
Regards,
David