Hey,

i have the following problem. I've defined a JMS - Service Unit with a
Provider and Consumer (like in the Tutorial "Camel" from
servicemix.apache.org):

######################################################
<beans xmlns:jms="http://servicemix.apache.org/jms/1.0";
       xmlns:tutorial="urn:org:apache:servicemix:tutorial:camel"
       xmlns:amq="http://activemq.org/config/1.0";>
    <jms:provider service="tutorial:jms"
                  endpoint="provider" 
                  destinationName="tutorial.camel.queue"
                  connectionFactory="#connectionFactory" />
    <jms:consumer service="tutorial:jms"
                  endpoint="consumer"
                  destinationName="tutorial.camel.queue"
                  connectionFactory="#connectionFactory"
                  targetService="tutorial:jms"
                  targetEndpoint="consumer" />  
     <amq:connectionFactory id="connectionFactory"
brokerURL="tcp://localhost:61616" />
</beans>
######################################################


And here is my Camel MyRouteBuilder.java:

######################################################
public class MyRouteBuilder extends RouteBuilder 
{
public void configure() 
{
  from("timer://tutorial?fixedRate=true&delay=3000&period=10000")
  .setBody(constant("<message>This is a  test</message>"))
  .convertBodyTo(DOMSource.class)
  .to("jbi:endpoint:urn:org:apache:servicemix:tutorial:camel:jms:provider");
                
  from("jbi:endpoint:urn:org:apache:servicemix:tutorial:camel:jms:consumer")
  .to("log:mylogger");
}
}
######################################################


The message receives the provider. But my Consumer cannot "get" the message
from the Queue. I get the following error:

######################################################
13:35:09,500 | WARN  | nerContainer-498 | DefaultMessageListenerContainer  |
AbstractMessageListenerContainer  646 | Execution of JMS message listener
failed
javax.jms.JMSException: Error sending JBI exchange
        at
org.apache.servicemix.jms.endpoints.AbstractConsumerEndpoint.onMessage(AbstractConsumerEndpoint.java:575)
        at
org.apache.servicemix.jms.endpoints.JmsConsumerEndpoint$1.onMessage(JmsConsumerEndpoint.java:505)
        at
org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:518)
        at
org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:479)
        at
org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:451)
        at
org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:323)
        at
org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:261)
        at
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:982)
        at
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:974)
        at
org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:876)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.NullPointerException
        at
java.util.concurrent.ConcurrentHashMap.put(ConcurrentHashMap.java:881)
        at
org.apache.servicemix.jbi.deployer.artifacts.AssemblyReferencesListener.pending(AssemblyReferencesListener.java:110)
        at
org.apache.servicemix.jbi.deployer.artifacts.AssemblyReferencesListener.exchangeSent(AssemblyReferencesListener.java:98)
        at
org.apache.servicemix.nmr.core.ChannelImpl.dispatch(ChannelImpl.java:282)
        at
org.apache.servicemix.nmr.core.ChannelImpl.sendSync(ChannelImpl.java:141)
        at
org.apache.servicemix.nmr.core.ChannelImpl.sendSync(ChannelImpl.java:127)
        at
org.apache.servicemix.jbi.runtime.impl.DeliveryChannelImpl.sendSync(DeliveryChannelImpl.java:187)
        at
org.apache.servicemix.common.EndpointDeliveryChannel.sendSync(EndpointDeliveryChannel.java:115)
        at
org.apache.servicemix.common.endpoints.SimpleEndpoint.sendSync(SimpleEndpoint.java:74)
        at
org.apache.servicemix.jms.endpoints.AbstractConsumerEndpoint.onMessage(AbstractConsumerEndpoint.java:548)
######################################################

What ' s the reason? I only want this:
- write a Message to the JMS provider
- JMS consumer polls the ActiveMQueue and if a message is incoming it writes
the message-content back to the ServiceMix-Log.

Where is the error?
-- 
View this message in context: 
http://www.nabble.com/How-do-i-use-a-JMS-Consumer-in-Camel-DSL--tp23997268p23997268.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to