【问题标题】:rabbitmq jms queue jndi tomcat configurationrabbitmq jms queue jndi tomcat配置
【发布时间】:2018-09-22 00:21:00
【问题描述】:

我有一个 spring jms 应用程序,当前使用 ibm mq 服务器进行队列管理。我们计划将中间件更改为 rabbitmq 以获得更好的性能并有效地控制它,但希望保持 spring jms 代码不变。 我遵循了以下链接中提到的所有步骤。 https://www.rabbitmq.com/jms-client.html

目前在我的tomcat context.xml中,队列配置如下

<Resource
            name="jms/MYQUEUE"
            auth="Container"
            type="com.ibm.mq.jms.MQQueue"
            factory="com.ibm.mq.jms.MQQueueFactory"
            description="JMS Queue for receiving messages from Dialog"
            QU="MYQUEUE"/>

对于rabbitmq jms,我将其更改为

<Resource
        name="jms/MYQUEUE"
        auth="Container"
        type="javax.jms.Queue"
        factory="com.rabbitmq.jms.admin.RMQObjectFactory"
        description="JMS Queue for receiving messages from Dialog"
        destinationName="MYQUEUE"
        amqp="true" />

我已经在项目库中添加了所有必需的 jar。 但是每次我启动 tomcat 时,我都会得到 javax.naming.NameNotFoundException: Name JMS is not bound in this context。 不过,我没有收到连接工厂的任何错误。

 <Resource
      name="jms/queueCF"
      auth="Container"
      type="javax.jms.ConnectionFactory"
      factory="com.rabbitmq.jms.admin.RMQObjectFactory"
      description="JMS Queue Connection Factory for sending messages"
      HOST="localhost"
      PORT="5672"
      username="guest"
      password="guest"
      />

是否缺少任何配置或者这是一个类加载问题?

【问题讨论】:

    标签: rabbitmq jms


    【解决方案1】:

    Tomcat 应该有 RabbitMQ 库。

    您可以阅读this Github repo,然后将其放入%CATALINA_HOME%\lib\

    【讨论】:

      猜你喜欢
      • 2016-07-17
      • 2014-02-05
      • 2013-06-10
      • 1970-01-01
      • 1970-01-01
      • 2019-11-03
      • 2017-11-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多