在 WildFly for IBM MQ 上部署 MDB 因连接错误而失败

MDB deployment on WildFly for IBM MQ fails on connection error

我们在 EAR 部署中使用 WildFly (9.0.2) 和 Java EE 应用程序,MDB 通过 IBM MQ (9.0.0) 资源适配器连接。

现体验部署时连接不上MQ服务器,部署失败:

java.lang.RuntimeException: 
com.ibm.mq.connector.DetailedResourceAdapterInternalException: 
MQJCA1011: Failed to allocate a JMS connection., error code: MQJCA1011 
An internal error caused an attempt to allocate a connection to fail. 

这种行为很糟糕,因为应用程序必须独立于此消息传递接口可用,并且应该继续其他部署并稍后尝试重新连接到服务器。

在一个并行项目中,我们对 SonicMQ 服务器进行了相同的设置,它的行为方式是这样的。

如何将 IBM MQ RA 配置为在部署时接受断开连接并在应用程序 运行 时间重试?

我遇到了同样的问题。通过在独立-full.xml:

    <subsystem xmlns="urn:jboss:domain:resource-adapters:3.0">
        <resource-adapters>
            <resource-adapter id="wmq.jmsra.rar">
                <archive>
                    wmq.jmsra.rar
                </archive>
                <config-property name="startupRetryCount">
                    1
                </config-property>

设置此 属性 后,我在 WildFly 日志中收到以下信息消息

[org.jboss.as.connector.deployers.RaXmlDeployer] (JMSCCThreadPoolWorker-5) wmq.jmsra.rar: MQJCA4014:Failed to reconnect one or more MDBs after a connection failure.

和部署的 MDB。

希望这也能为您解决!