HohpeG.とWoolfB.のEIPパターンブックからの引用:
JMSでは、トランザクションクライアントでもあるイベントドリブンコンシューマーは期待どおりに機能しないことに注意してください。通常、トランザクションのコードが例外をスローするとトランザクションはロールバックされますが、MessageListener.onMessageシグニチャはスローされる例外(JMSExceptionなど)を提供せず、ランタイム例外はプログラマーエラーと見なされます。ランタイム例外が発生した場合、JMSプロバイダーは次のメッセージを配信することで応答するため、例外の原因となったメッセージは失われます。トランザクション、イベント駆動型の動作を正常に実現するには、メッセージ駆動型のEJBを使用します。
私はそれを理解していますが、.NetクライアントからApache NMS(ActiveMQ)を使用している場合はどうなりますか?私はMDBを持っていないので、この問題にどのように対処すればよいですか?