Java消息队列关闭的消息驱动Bean
我在部署应用程序时遇到以下问题 它使用JMS和远程openMQ在服务器之间进行通信。问题是,连接不完全可靠,因此可能会向上或向下。对于重新连接,我设置了jms reconnect glassfish属性,以便在某个时刻连接丢失时重新连接。当我尝试部署应用程序而没有连接时,问题就出现了。看起来它一直在重试连接,但应用程序在连接可用之前不会完成部署 是否可以以任何方式将其配置为即使没有连接也会继续部署,并在连接可用之前不断重试 非常感谢 编辑:我试图在另一个线程中运行MDB初始化。我两个都试过了 我试图通过两种方式更改sun-ejb.jar.xml,为MDB分配一个不同的线程Java消息队列关闭的消息驱动Bean,java,glassfish,jms,message-driven-bean,openmq,Java,Glassfish,Jms,Message Driven Bean,Openmq,我在部署应用程序时遇到以下问题 它使用JMS和远程openMQ在服务器之间进行通信。问题是,连接不完全可靠,因此可能会向上或向下。对于重新连接,我设置了jms reconnect glassfish属性,以便在某个时刻连接丢失时重新连接。当我尝试部署应用程序而没有连接时,问题就出现了。看起来它一直在重试连接,但应用程序在连接可用之前不会完成部署 是否可以以任何方式将其配置为即使没有连接也会继续部署,并在连接可用之前不断重试 非常感谢 编辑:我试图在另一个线程中运行MDB初始化。我两个都试过了 我
<bean-pool>
<steady-pool-size>1</steady-pool-size>
<resize-quantity>1</resize-quantity>
<max-pool-size>1</max-pool-size>
<pool-idle-timeout-in-seconds>60</pool-idle-timeout-in-seconds>
</bean-pool>
也不走运。您是否可以考虑生成一个单独的线程来连接JMS,以便主应用程序在不被阻止的情况下保持运行。对于glassfish默认JMS提供程序,这是不可能的。我最终通过将JCA适配器更改为
胡乱猜测:尝试将最小池大小设置为零。也许有帮助。我试过了,但似乎没有效果。可能是想在队列中注册,但我不能确定…看起来是个好主意。我自己无法生成线程,因为我在J2EE中,但glassfish为联合国提供了一些工具。反正还是不行。我编辑了这个问题。
<use-thread-pool-id>a-new-thread-pool</use-thread-pool-id>
asadmin create-resource-adapter-config --threadpools a-new-thread-pool jmsra