【问题标题】:open-liberty : cannot configure jmsActivationSpecopen-liberty : 无法配置 jmsActivationSpec
【发布时间】:2019-04-10 12:15:12
【问题描述】:

我的 IBM Liberty server.xml 中有以下配置:

<!-- resource adapter location -->
<variable name="wmqJmsClient.rar.location" value="${shared.resource.dir}/lib/global/wmq.jmsra-9.1.0.0.rar"/>

<!-- jmsActivationSpec configs -->
<jmsActivationSpec authDataRef="myAuthData" id="my-app-name/MyMessageDrivenBean">
        <properties.wmqJms destinationRef="jms/MyQueue"
                           destinationType="javax.jms.Queue"
                           sslCipherSuite="SSL_RSA_WITH_AES_256_CBC_SHA256"
                           channel="MY.MQCHANNEL"
                           queueManager="MY_QM"
                           hostName="myhost" port="32100"
                           transportType="CLIENT" />
</jmsActivationSpec>

我还有一个消息驱动 bean,用于处理出现在队列中的消息。一切正常。

我想迁移到open-liberty 并保留我的 JMS 资料,但即使存在相同的配置元素,他们的文档也有些不同。

缺少某些属性,不清楚如何替换它们。没有hostNameport,相反,我只找到了remoteServerAddress,它必须是一个三元组host:port:something_i_dont_understand,所以不确定它是否完全相同:)

如何在 open-liberty 中配置所有这些必需的东西以使我的消息驱动 bean 工作?

任何帮助表示赞赏:)

【问题讨论】:

    标签: jms open-liberty


    【解决方案1】:

    在 WebSphere Liberty 中,您可能会使用 wmqJmsClient-2.0 功能。这在 Open Liberty 中不可用,但它实际上只是一个便利功能。您应该能够配置以下内容:

    <featureManager>
        <feature>jms-2.0</feature>
        <feature>jca-1.7</feature>
    </featureManager>
    
    <resourceAdapter id="mqJMS" location="${shared.resource.dir}/lib/global/wmq.jmsra-9.1.0.0.rar"/>
    
    <!-- jmsActivationSpec configs -->
    <jmsActivationSpec authDataRef="myAuthData" id="my-app-name/MyMessageDrivenBean">
        <properties.mqJms destinationRef="jms/MyQueue"
                          destinationType="javax.jms.Queue"
                          sslCipherSuite="SSL_RSA_WITH_AES_256_CBC_SHA256"
                          channel="MY.MQCHANNEL"
                          queueManager="MY_QM"
                          hostName="myhost" port="32100"
                          transportType="CLIENT" />
    </jmsActivationSpec>
    

    这会配置 jms-2.0 功能,以及在 Liberty 中启用 JMS 和 RA 支持的 jca-1.7resourceAdapter 元素将 Liberty 配置为了解 RA 的存在及其所在位置(类似于现有配置中的变量)。然后将 id 属性的值用于 jmsActivationSpec 元素下的 properties 元素,因此在 wmqJmsClient-2.0 功能中我们将其定义为 wmqJms,在这种情况下我使用了 mqJms,因为我认为 @ 987654330@ 已保留。在任何情况下,此配置都应该在 Open Liberty 和 WebSphere Liberty 中工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-19
      • 1970-01-01
      相关资源
      最近更新 更多