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

如何使用Wso2esb和Activemq将消息存储在JMS队列中

颛孙凯定
2023-03-14

我正在使用WSO2ESB4.7.0和ActiveMQ5.8.0。我希望将消息存储在队列中,为此我尝试使用这段代码,但它不工作。我创建了存储库,这将有助于存储消息,我的conumeing过程已经在JAVA代码中完成,所以我不必担心消费,如果我这样做了,我的消息将出现在acivemq UI中。我的配置如下所示

<messageStore name="JMSQueue" class="org.wso2.carbon.message.store.persistence.jms.JMSMessageStore" xmlns="http://ws.apache.org/ns/synapse">
   <parameter name="java.naming.factory.initial">org.apache.activemq.jndi.ActiveMQInitialContextFactory</parameter>
   <parameter name="java.naming.provider.url">tcp://localhost:61616</parameter>
   <parameter name="store.jms.destination">faisal5_Queue</parameter>
   <parameter name="store.jms.JMSSpecVersion">1.1</parameter>
   <parameter name="store.jms.cache.connection">false</parameter>
</messageStore>

我试图通过代理传递消息,为此我编写了简单的代理服务

<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="Jms"
       transports="https,http"
       statistics="disable"
       trace="disable"
       startOnLoad="true">
   <target>
      <inSequence>
         <property name="messageType" value="application/json" scope="axis2"/>
         <log level="full"/>
         <property name="OUT_ONLY" value="true"/>
         <store messageStore="JMSQueue"/>
      </inSequence>
      <outSequence/>
   </target>
   <description/>
</proxy>

在这种情况下,我的队列没有在Activemq中创建,为什么会发生这种情况如果我创建了消息进程,那么只有我的队列出现在Activemq UI中,你会为此编写示例代码吗?我的场景很简单,我要存储我的客户机消息,而不会失败,他们将在存储过程后使用

共有1个答案

段曦
2023-03-14

您的代理和消息存储是好的,我测试了这些。我认为您没有用ActiveMQ正确配置ESB。

按照这个链接放置JAR,然后编辑Axis2.xml。然后尝试使用您的代码。应该管用

 类似资料:
  • 因此,我使用Spring integration链接JMS和ActiveMQ,如下所示:- 如何使其工作,以便发送到此队列并从中接收消息?请帮忙。

  • 我是JMS新手,经过长时间的搜索,我搜索出了一个连接到JMS的代码,并发布了一条消息。 问题是我需要在远程队列中发布消息,但我不知道如何建立连接到它并发布消息。 服务器类型:TIBCO EMS 服务器主机:******。net 端口:**USername:user passsbrow:user123 队列:**。。。。顺序经营1. 我想建立连接,发布一条简单的消息,然后把它取回。请帮忙!提前谢谢

  • 我们的环境由3个jboss服务器组成(门户、jms、协调)。 协调服务器托管骆驼路由,该路由具有消耗自队列(SLAQueue)的路由 JMS服务器托管了我们的所有队列 最近,我们发现了一个错误,即托管在JMS服务器上的TaskQueue中的一些消息没有传递到门户服务器上的MDB。由于某些原因,它们被卡住了,当我们重新启动JMS服务器时,卡住的消息被传递 为了进行调查,我们在“org.apache.

  • 我正在尝试JMS队列的一个示例应用程序。。我希望队列中的消息保持在那里,直到我的标志设置为true。我使用的是spring框架和MDP侦听器,配置如下: 服务器上下文。xml: 我的onMessage有以下代码: 现在,当抛出异常时,消息会保留在队列中,并且控件会返回到再次收听相同消息并在一段时间后停止的同一侦听器。这会导致死队列。我无法存储该消息。我希望我的侦听器收听队列,但不是上一条消息,而是

  • 我是Spring JMS的新手。我的应用程序是使用Spring Boot开发的,并部署在JBoss EAP7.2.0中。我有一个远程队列,它是一个活动的MQ Artemis队列,也嵌入在JBoss EAP7.2.0中。有人能建议我如何使用Spring Boot的JmsTemplate向远程JMS队列发送消息吗?基本上,我不知道应该如何定义远程connectionFactory来连接到远程队列。