I have a stateless session bean with one method that is inserting row in db using entitybean and then sending message on queue.
I am using XADatasource and XAConnectionFactory for db and message respectively.
Now when my database insertion fails, I expect transcation to roll back and message should NOT be sent to queue, but its happening otherwise, i.e exception is thrown but message is also sent to Q.
yeha i did try that too but same result, both the sucess and failure messages are read by the listener.
and i do get following warning after messages are consumed..
14:57:04,982 WARN [loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.norecoveryxa] [com.arjuna.ats.internal.jta.resources.arjunacore.norecoveryxa] Could not find new XAResource to use for recovering non-serializable XAResource < 131075, 28, 26, 49454551102535510210299565855569858521005297515554985852485445511025355102102995658555698585210052975155549858524855 >
14:57:04,997 WARN [loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.noresource] [com.arjuna.ats.internal.jta.resources.arjunacore.noresource] No XAResource to recover < 131075, 28, 26, 49454551102535510210299565855569858521005297515554985852485445511025355102102995658555698585210052975155549858524855 >