【问题标题】:Configure WebLogic MDB to listen to Foreign AMQ Server配置 WebLogic MDB 以侦听外部 AMQ 服务器
【发布时间】:2013-11-07 11:46:22
【问题描述】:

我正在尝试在 WebLogic 10.3.5 上创建一个 MDB(EJB 3.0)。侦听外部 AMQ 服务器上的队列。经过大量工作和教程组合后,在 webLogic 上部署时出现以下错误。

[EJB:015027]消息驱动的 EJB 是事务性的,但 JNDI 名称引用的 JMS 连接工厂:ActiveMQXAConnectionFactory 不是 JMS XA 连接工厂。

以下是我所做工作的简要说明:

我已将相应的库添加到我的 WLS 类路径中(遵循本教程 http://amadei.com.br/blog/index.php/connecting-weblogic-and-activemq),并按照教程中的说明创建了相应的 JMS 模块。我最初使用了 ActiveMQConnectionFactory,后来使用了 ActiveMQXAConnectionFactory,我也忽略了 jms。符号只是将普通名称作为 testQueue。

然后创建一个具有以下结构的简单 MDB。 我明确定义了“connectionFactoryJndiName”属性,否则它假定一个未找到的 WebLogic 连接工厂,然后引发错误。

@MessageDriven(
        activationConfig = { 
                @ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"), 
                @ActivationConfigProperty(propertyName = "destination", propertyValue = "testQueue"),
                @ActivationConfigProperty(propertyName = "connectionFactoryJndiName", propertyValue = "ActiveMQXAConnectionFactory")
        }, 
        mappedName = "testQueue")
public class ROMELReceiver implements MessageListener {

    /**
     * Default constructor. 
     */
    public ROMELReceiver() {
        // TODO Auto-generated constructor stub
    }

    /**
     * @see MessageListener#onMessage(Message)
     */
    public void onMessage(Message message) {
        System.out.println("Message received");
    }

}

此时我遇到了上述错误。即使我使用 ActiveMQXAConnectionFactory 而不是简单的 ActiveMQConnectionFactory,Web 逻辑服务器中的 JNDI 资源树也会将 org.apache.activemq.ActiveMQConnectionFactory 显示为我配置的连接工厂的类。

我错过了什么吗?或者这只是将 WebLogic 与 AMQ 连接起来的一种完全错误的方式?

提前致谢。

【问题讨论】:

  • 你使用的是什么版本的 ActiveMQ?
  • 我正在使用 ActiveMQ 5.8

标签: java jms activemq weblogic11g message-driven-bean


【解决方案1】:

我知道它很晚,但我最近我不得不做同样的事情并遇到同样的错误。 这篇文章帮助了我:

https://community.oracle.com/thread/3903705

基本上它说在weblogic中模块的外部服务器选项的jndi属性中添加一个新参数。

xa=true。

因为activemq默认不使用Xa连接。

【讨论】:

    猜你喜欢
    • 2016-06-14
    • 2011-08-18
    • 2017-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-20
    • 2016-01-20
    • 2015-08-30
    相关资源
    最近更新 更多