Hi Pratibha,
Did your below scenario worked
I have a scenario where I have a jms:consumer->camel router
(recipientlist)-> external webservice
my jms:consumer is defined as below
<jms:consumer service="cc2:JMSConsumerService"
endpoint="jmsEndpoint"
targetService="cc2:JMSConsumerService"
targetEndpoint="jmsEndpoint"
destinationName="ccq2"
cacheLevel="2"
transacted="jms"
concurrentConsumers="5"
connectionFactory="#connectionFactory" />
my camel context is as below
<bean id="routerBean" class="com.pf.camelconsumer.MyRouterBuilder">
</bean>
<camelContext id="camel"
xmlns="http://activemq.apache.org/camel/schema/spring" trace="true">
<routeBuilderRef ref="routerBean"/>
</camelContext>
And my router is as below
from("jbi:service:http://com.pf.camelconsumer2/JMSConsumerService2").bean(myBean,"setLocationUrI")..recipientList(header(HttpProducer.HTTP_URI)).bean(myBean,"printResponse");
I am getting below exception. I am sure you could help me with this error.
Or if you could provide me with your camel_context that I can use as a
reference will be very helpful
2010-04-26 16:21:44,036 | 16:21:44,036 | WARN | tenerContainer-4 | NMR
| .servicemix.nmr.core.ChannelImpl 293 | Error processing exchange [
id: 409f4622-d3ff-4195-8ca6-08f645748c55
mep: InOnly
status: Active
role: Consumer
target:
PropertyMatchingReference[{SERVICE_NAME={http://com.pf.camelconsumer2}JMSConsumerService}]
properties: [
org.apache.servicemix.senderEndpoint =
{http://com.pf.camelconsumer2}JMSConsumerService:jmsEndpoint
javax.jbi.messaging.MessageExchange =
org.apache.servicemix.jbi.runtime.impl.inonlyi...@bc3476
javax.jbi.messaging.sendSync = true
javax.jbi.InterfaceName = <null>
javax.jbi.transaction.jta = <null>
org.apache.servicemix.correlationId =
409f4622-d3ff-4195-8ca6-08f645748c55
javax.jbi.ServiceName =
{http://com.pf.camelconsumer2}JMSConsumerService
]
In: [
content: org.apache.servicemix.soap.util.stax.staxsou...@185d83
]
]
org.apache.servicemix.nmr.api.ServiceMixException: Could not dispatch
exchange. No matching endpoints.
at
org.apache.servicemix.nmr.core.FlowRegistryImpl.dispatch(FlowRegistryImpl.java:110)
at
pratibhaG wrote:
>
> Hi all,
>
> I have an example which was working in smx3.3.1. the example use to put a
> message in jms topic and the consumer use to consume it. To fix some other
> problem I replaced my servicemix-camel-2009.01-installer.zip component
> with servicemix-camel-2009.02-installer.zip. now with this change my jms
> consumer is not picking up the message in topic.
>
> the jms configuration like this:
>
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <beans xmlns:jms="http://servicemix.apache.org/jms/1.0"
> xmlns:up="http://servicemix.in2m.com/operations/updateprofile"
> xmlns:amq="http://activemq.org/config/1.0">
>
> <jms:consumer service="up:DirectorConsumerService"
> endpoint="directorConsumerEndpoint"
> targetService="up:DirectorConsumerService"
> clientId="Director"
> pubSubDomain="true"
> subscriptionDurable="true"
> destinationName="updateUserProfileTopic"
> connectionFactory="#connectionFactory"
> messageSelector="userPrincipals NOT LIKE
> '%director%'"
> cacheLevel="2"
> transacted="jms"/>
>
> <jms:consumer service="up:PortalConsumerService"
> endpoint="portalConsumerEndpoint"
> targetService="up:PortalConsumerService"
> pubSubDomain="true"
> clientId="Portal"
> subscriptionDurable="true"
> destinationName="updateUserProfileTopic"
> connectionFactory="#connectionFactory"
> messageSelector="userPrincipals NOT LIKE
> '%portal%'"
> cacheLevel="2"
> transacted="jms"/>
>
> <bean id="propertyConfigurer"
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
> <property name="location" value="classpath:servicemix.properties" />
> </bean>
>
> <amq:connectionFactory id="connectionFactory"
> brokerURL="${activemq.url}" />
>
> </beans>
>
>
>
>
> and :
>
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <beans xmlns:jms="http://servicemix.apache.org/jms/1.0"
> xmlns:up="http://servicemix.in2m.com/operations/updateprofile"
> xmlns:amq="http://activemq.org/config/1.0">
>
> <jms:provider service="up:JMSProviderService"
> endpoint="JMSProviderEndpoint"
> pubSubDomain="true"
> destinationName="updateUserProfileTopic"
> connectionFactory="#connectionFactory"
> marshaler="#jmsMarshaler"/>
>
> <bean id="jmsMarshaler"
> class="com.in2m.servicemix.common.marshaller.jms.DefaultJmsProviderMarshaler"/>
>
> <bean id="propertyConfigurer"
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
> <property name="location" value="classpath:servicemix.properties" />
> </bean>
>
> <amq:connectionFactory id="connectionFactory"
> brokerURL="${activemq.url}" />
>
> </beans>
>
>
> The camel configuration is like this:
> package com.in2m.servicemix.operations.updateprofile;
>
> import org.apache.camel.builder.RouteBuilder;
>
> import com.in2m.servicemix.common.errorhandling.CustomDelegateProcessor;
> import com.in2m.servicemix.common.errorhandling.ErrorConstants;
>
>
> public class MessageRouting extends RouteBuilder {
>
> public void configure() {
>
>
>
> //errorHandler(deadLetterChannel().maximumRedeliveryDelay(3600000L));
>
> onException(java.lang.Throwable.class)
> .process(new
> CustomDelegateProcessor(ErrorConstants.SYSTEM_ERROR));
>
> onException(java.net.SocketException.class)
> .maximumRedeliveries(5)
> .useExponentialBackOff()
> .redeliveryDelay(300000L)
> .backOffMultiplier(2.0)
> .maximumRedeliveryDelay(3600000L)
> .process(new
> CustomDelegateProcessor(ErrorConstants.SOCKET_ERROR));
>
>
> from("jbi:service:http://servicemix.in2m.com/operations/updateprofile/RoutingService")
>
> .to("jbi:service:http://servicemix.in2m.com/operations/updateprofile/JMSProviderService?mep=in-only")
>
> .to("jbi:service:http://servicemix.in2m.com/operations/updateprofile/ResponseGeneratorService?mep=in-out");
>
>
> from("jbi:service:http://servicemix.in2m.com/operations/updateprofile/DirectorConsumerService")
>
> .setHeader(ErrorConstants.APPLICATION_NAME,constant("DirectorService"))
> .process(new CustomDelegateProcessor())
>
> .to("jbi:service:http://servicemix.in2m.com/operations/updateprofile/DirectorService?mep=in-out");
>
>
> from("jbi:service:http://servicemix.in2m.com/operations/updateprofile/PortalConsumerService")
>
> .setHeader(ErrorConstants.APPLICATION_NAME,constant("PortalService"))
> .process(new CustomDelegateProcessor())
>
> .to("jbi:service:http://servicemix.in2m.com/operations/updateprofile/PortalService?mep=in-out");
> }
> }
>
>
> Please provide some help
>
> Thanks,
> Pratibha
>
>
--
View this message in context:
http://old.nabble.com/Jms-consumer-not-consuming-a-message-from-Topic-tp27983805p28369869.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.