如何在Apache Camel中实现事件驱动的使用者并获取JMS消息

时间:2014-03-05 19:11:36

标签: java spring jms apache-camel activemq

嗨,我正在与Apache Camel挣扎,

我想在我的自定义Consumer-Bean中使用“真正的”javax.jms.TextMessage。但我得到的只是Message-Text as String。

配置:

     <camelContext xmlns="http://camel.apache.org/schema/spring"> 
     <route id="route_dispatching"> 
        <from uri="activemq:queue:queue.dispatcher.replyqueue"/> 
        <to uri="bean:dispatcherbean"/>
       </route>
     </camelContext>
     <bean id="dispatcherbean" class="com.company.Dispatcher"/>

Dispatcher Bean代码:

     public class Dispatcher{
           private static final Log LOG = LogFactory.getLog(Dispatcher.class);
          public void handleEvent(Object eventPayload) throws Exception
          {  
                LOG.info("got an event"); 
          }
     }

eventPayload Object的类型为String,而不是javax.jms.TextMessage。 我试图改变uri =“activemq:queue to uri =”jms:queue,但后来我得到一些关于缺少连接工厂的错误:-(

希望有人可以帮忙吗?

此致,托比

1 个答案:

答案 0 :(得分:0)

您是否尝试过将类型从Object更改为POJO类中的javax.jms.TextMessage?