繁体   English   中英

Weblogic 10.3上的Spring 3.0 messageListener-错误“原因:[JMSClientExceptions:055142]国外目标”

[英]Spring 3.0 messageListener on weblogic 10.3 - ERROR “Cause: [JMSClientExceptions:055142]Foreign destination”

我试图在战争中的weblogic 10.3上部署Spring 3.0.5 messageListener,但无法使其正常工作。

我已经在weblogic上创建了一个简单的jms quque,但看起来weblogic认为我正在尝试作为外部客户端进行连接,即使所有内容都是本地的?

[WARN]目标“系统模块!测试队列”的JMS消息侦听器调用程序的设置失败-尝试恢复。 原因:[JMSClientExceptions:055142]外部目标,系统模块!测试队列

这是我的春季xml

   <!--  connection factory -->
    <jee:jndi-lookup id="jmsConnectionFactory"  jndi-name="weblogic.jms.ConnectionFactory" 
   expose-access-context="true" />

    <!--  weblogic jms queue -->    
    <jee:jndi-lookup id="testQueue" jndi-name="jms.testQueue" expose-access-context="true"/>

    <!--  my onMessage listener bean -->    
    <bean id="jobNotificationQueueListener" class="com.xxx.component.jms.JobNotificationQueueListener" />

    <!--  spring container -->
    <bean id="jobNotificationQueueContainer"
    class="org.springframework.jms.listener.DefaultMessageListenerContainer">
        <property name="connectionFactory" ref="jmsConnectionFactory" />
        <property name="destination" ref="testQueue" />
        <property name="messageListener" ref="jobNotificationQueueListener" />
        <property name="sessionAcknowledgeModeName" value="AUTO_ACKNOWLEDGE" />
        <property name="sessionTransacted" value="true" />
    </bean>

有人看过吗?

此错误消息并不表示您尝试作为“外部客户端”进行连接。 WebLogic认为您正在尝试连接到外部目标,这是不同的。

您要设置哪种类型的队列? 请尝试以下操作:1)尝试浏览JNDI树到目的地以确认其位置并确认类型正确2)确认您已创建JMS服务器并将其定位为有问题的服务器3)确认目标位置正确排队

更新:我能够重现并解决此问题。 在我的ApplicationContext文件中,我曾经有以下配置:

  <jee:jndi-lookup id="eventQueue" jndi-name="${jms.event.queue.name}" expose-access-context="true"/>

我将其更改为:

  <jee:jndi-lookup id="eventQueue" jndi-name="${jms.event.queue.name}"/>

现在它运行良好,并且不会不断抛出该错误。

外部JMS在类路径中需要其客户端库(即Websphere MQ将需要mq.jar和另外两个),然后应配置连接工厂类(否则将使用默认的Weblogic),依此类推。

换句话说,这可能是配置问题,而不是编程问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM