open-liberty:无法配置jmsActivationSpec

问题描述 投票:0回答:1

我在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个回答
2
投票

在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功能,以及启用JMS的jca-1.7和Liberty中的RA支持。 resourceAdapter元素配置Liberty以了解RA的存在及其位置(类似于现有配置中的变量)。然后在jmsActivationSpec元素下的属性元素上使用id属性的值,因此在wmqJmsClient-2.0特征中我们将其定义为wmqJms,在这种情况下我使用了mqJms,因为我认为wmqJms是保留的。无论如何,此配置应该在Open Liberty和WebSphere Liberty中都有效。

© www.soinside.com 2019 - 2024. All rights reserved.