问题
是否可以(以编程方式)停止消息驱动 Bean,使其不消耗新消息,但像往常一样处理正在运行的事务?
(这是如何在取消部署之前停止消息处理的后续行动? )。
给定
- 带有 JBoss 消息传递的 JBoss 4.2.3
- 根据 EJB 2.0 的消息驱动 Bean
失败的尝试
- 我想使用 MBean 方法
stopDelivery
,但遗憾的是它会立即关闭事务(请参阅错误#EJBTHREE-1870),从而导致很多异常。 - 我试图在 JMX 控制台中将最大池大小减少到 0,但活动会话的数量根本不受影响。
- 我可以停止队列,但我必须
NameNotFoundException
在生产者中处理 s 。