首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WSO2 - EI 6.2.0 -使用EI配置Oracle AQ JMS数据库,以向/从Oracle AQ JMS发布/使用消息

WSO2 - EI 6.2.0 -使用EI配置Oracle AQ JMS数据库,以向/从Oracle AQ JMS发布/使用消息
EN

Stack Overflow用户
提问于 2018-10-25 20:53:00
回答 1查看 242关注 0票数 1

这是Radhakrishnan和新的WSO2世界。我想使用EI配置Oracle AQ JMS,以便EI可以使用/发布来自Oracle AQ JMS的消息。

已经完成了axis2.xml的配置,并编写了一个代理来使用来自Oracle AQ JMS的消息。

现在,当我们发布到Oracle AQ JMS时,我们得到了下面的错误,有人有建议/有价值的输入吗?

代码语言:javascript
复制
Caused by: javax.naming.NameNotFoundException: Name [dynamicQueues//RIB_AQ_USER.ETEXTPAYTERM] is not bound in this Context. Unable to find [dynamicQueues].
        at org.apache.naming.NamingContext.lookup(NamingContext.java:825)
        at org.apache.naming.NamingContext.lookup(NamingContext.java:173)
        at org.wso2.carbon.context.internal.CarbonContextDataHolder$CarbonInitialJNDIContext.lookup(CarbonContextDataHolder.java:709)

以下是代码片段:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="RMSPayTermOutToRMSProxy"
       startOnLoad="true"
       statistics="disable"
       trace="disable"
       transports="http,https">
   <target>
      <inSequence>
         <log level="full"/>
         <property name="OUT_ONLY" scope="default" type="STRING" value="true"/>
         <property name="FORCE_SC_ACCEPTED" scope="axis2" value="true"/>
         <send>
            <endpoint>
               <address format="pox"
                        uri="jms2:/RIB_AQ_USER.ETEXTPAYTERM?transport.jms.ConnectionFactoryJNDIName=JMSSenderTopicConnectionFactory"/>
            </endpoint>
         </send>
      </inSequence>
   </target>
   <parameter name="serviceType">proxy</parameter>
   <description/>
</proxy>
EN

回答 1

Stack Overflow用户

发布于 2018-10-30 17:38:24

一年前我也遇到过类似的问题,我们使用下面的配置修复了这个问题。

我们已经在axis2.xml中配置了连接工厂(AqQueueConnectionFactory)

代码语言:javascript
复制
<!-- Oracle AQ Listener Start-->
<transportReceiver name="oracleaq" class="org.apache.axis2.transport.jms.JMSListener">
   <parameter name="AqQueueConnectionFactory" locked="false">
      <parameter name="java.naming.factory.initial" locked="false">oracle.jms.AQjmsInitialContextFactory</parameter>
      <parameter name="db_url" locked="false">jdbc:oracle:thin:@hostname:port:schema</parameter>
      <parameter name="java.naming.security.principal" locked="false">username</parameter>
      <parameter name="java.naming.security.credentials" locked="false">password</parameter>
      <parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">QueueConnectionFactory</parameter>
      <parameter name="transport.jms.ConnectionFactoryType" locked="false">queue</parameter>
   </parameter>
   <parameter name="AqTopicConnectionFactory" locked="false">
      <parameter name="java.naming.factory.initial" locked="false">oracle.jms.AQjmsInitialContextFactory</parameter>
      <parameter name="db_url" locked="false">jdbc:oracle:thin:@hostname:port:schema</parameter>
      <parameter name="java.naming.security.principal" locked="false">username</parameter>
      <parameter name="java.naming.security.credentials" locked="false">password</parameter>
      <parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">TopicConnectionFactory</parameter>
      <parameter name="transport.jms.ConnectionFactoryType" locked="false">topic</parameter>
   </parameter>
</transportReceiver>
<!-- Oracle AQ Listener End -->

在更改axis2.xml并在lib文件夹中添加以下jar文件(aqapi-10.1.3.1.jar及其依赖项)之后,我们必须重新启动服务器。

在Proxy,Parameters部分中,我们定义了代理监听的队列配置。

代码语言:javascript
复制
   <parameter name="transport.jms.DestinationType">queue</parameter>
   <parameter name="transport.jms.Destination">Queues/QueueName</parameter>
   <parameter name="transport.jms.ContentType">
      <rules xmlns="">
         <jmsProperty>contentType</jmsProperty>
         <default>application/xml</default>
      </rules>
   </parameter>
   <parameter name="transport.jms.ConnectionFactory">AqQueueConnectionFactory</parameter>

如上所述,在axis2.xml中,我们启用了oracleaq作为一个代理的传输。

完成上述设置后,我们可以从Oracle AQ监听队列/主题,而不会出现任何问题。

谢谢。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52989770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档