Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java消息队列关闭的消息驱动Bean_Java_Glassfish_Jms_Message Driven Bean_Openmq - Fatal编程技术网

Java消息队列关闭的消息驱动Bean

Java消息队列关闭的消息驱动Bean,java,glassfish,jms,message-driven-bean,openmq,Java,Glassfish,Jms,Message Driven Bean,Openmq,我在部署应用程序时遇到以下问题 它使用JMS和远程openMQ在服务器之间进行通信。问题是,连接不完全可靠,因此可能会向上或向下。对于重新连接,我设置了jms reconnect glassfish属性,以便在某个时刻连接丢失时重新连接。当我尝试部署应用程序而没有连接时,问题就出现了。看起来它一直在重试连接,但应用程序在连接可用之前不会完成部署 是否可以以任何方式将其配置为即使没有连接也会继续部署,并在连接可用之前不断重试 非常感谢 编辑:我试图在另一个线程中运行MDB初始化。我两个都试过了 我

我在部署应用程序时遇到以下问题

它使用JMS和远程openMQ在服务器之间进行通信。问题是,连接不完全可靠,因此可能会向上或向下。对于重新连接,我设置了jms reconnect glassfish属性,以便在某个时刻连接丢失时重新连接。当我尝试部署应用程序而没有连接时,问题就出现了。看起来它一直在重试连接,但应用程序在连接可用之前不会完成部署

是否可以以任何方式将其配置为即使没有连接也会继续部署,并在连接可用之前不断重试

非常感谢

编辑:我试图在另一个线程中运行MDB初始化。我两个都试过了

我试图通过两种方式更改sun-ejb.jar.xml,为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