我得到了一个MDB-EJB 2.1,WebSphere 7版本
集装箱管理和自动确认
标记为Not Supported
的事务
现在,我如何处理异常,以便在异常期间保留消息并在以后重新传递?
我试图从MDB onMessage
方法内的catch块抛出运行时异常。但这似乎阻止了MDB侦听器,这是出乎意料的。
我无法调用context.setRollBackOnly()
,因为没有交易。
RuntimeException
应该可以。看看这个消息驱动的bean-事务支持。如果侦听器停止,则可能已将Maximum retries
设置为0。将其设置为更高的值。