当前位置: 首页 > 知识库问答 >
问题:

open-liberty:无法配置jmsActivationSpec

宋新知
2023-03-14

我的IBM Libertyserver.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内容,但它们的文档有点不同,即使有相同的配置元素。

共有1个答案

空正豪
2023-03-14

在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特性,以及JCA-1.7,后者在Liberty中启用JMS和RA支持。resourceadapter元素配置Liberty来了解RA的存在及其所在位置(类似于现有配置中的变量)。然后在JMSActivationSpec元素下的properties元素上使用id属性的值,因此在WMQJMSClient-2.0特性中,我们将其定义为WMQJMS,在本例中,我使用了MQJMS,因为我认为WMQJMS是保留的。在任何情况下,该配置都应该在Open Liberty和WebSphere Liberty中工作。

 类似资料:
  • Open Liberty 是一个高模块化、快速和高动态性的应用服务器运行时环境。 Open Liberty 项目是一个完全兼容 Java EE 7 的应用服务器,当然,也兼容最新的 Eclipse MicroProfile API。它是商业产品 WebSphere Liberty 的核心,因此在 Open Liberty 上运行的应用可以不需要更改就能在 WebSphere Liberty 上运行

  • > WLP jpa级别:JPA-2.0 Spring版本:3.1.4.发行版 EntityManagerFactory bean:class=“org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean”

  • 我在liberty中部署了多个WebApp,它们都有自己的log4j配置文件,每个WAR中的log4j配置文件位于WAR的WEB-INF/classes文件夹中。添加log4j配置的web.xml代码片段如下: 这似乎适用于所有其他Tomcat和Jboss应用服务器,但不适用于WebSphere Liberty Profile。即使在WebSphere Basic profile中,似乎也是如此。

  • 我们正在尝试配置Liberty服务器,以便通过WSRP托管自定义JSR286 Portlet并将其呈现给IBM Portal。完成了功能和LDAP、LTPA和SSO的默认服务器配置,并部署了两个IBM WSRP 2.0 Producer EAR文件。通过在web中设置环境变量,一个配置为不安全,另一个配置为WS-security。分别是xml文件。 在门户服务器上,我们可以从非安全生产者处获取使用

  • 我无法在WLP v8.5.5.1中找到一个日志文件,其中显示了客户端发起的请求URL和请求方法。我们有一堆由顾问提供的REST服务(HTTPS),但在中,我没有找到任何请求记录(有一堆日志文件,如)。

  • 我正在从websphere 8.5迁移到Liberty 8.5。那么我可以用吗?. p12文件,它是我从appsvr01中的websphere安装位置获得的 < li >如果是,那么如何在server.xml(liberty)的标记中使用它 -如果没有,那么我们可以自由地使用IBMJSSE2标准生成自己的密钥库。请解释一下。