我知道一种通过命令行疯狂地停止MDB的方法,将DeliveryActive状态设置为ture,然后
[standalone@localhost:9990 /] cd deployment=jboss-helloworld-mdb.war/subsystem=ejb3/message-driven-bean=HelloWorldMDB
[standalone@localhost:9990 message-driven-bean=HelloWorldMDB] :stop-delivery
{"outcome" => "success"}
[standalone@localhost:9990 message-driven-bean=HelloWorldMDB] :start-delivery
{"outcome" => "success"}
根据这种方式,我认为必须有一种实用的方法来调用EJB容器中的MDB,然后从MDB实例执行停止传递和启动传递。但我的问题是我无法通过context.lookup(属性)找到MDB。 这是一种可能的方法吗?
答案 0 :(得分:1)
你可以通过本地或远程的HornetQ的JMX支持来实现。 这是一个很好的例子:JEE7 + WildFly (HornetQ) - Pause queue from application
当然,您也可以在自己的应用中执行此操作。