Another problem that occurs with this component is, that the properties of the JMS message are lost. They seem not to be copied to the MessageExchange.
Greets Goldi goldi wrote: > > Hy everybody, > > I have some trouble with JMS using JCA. My configuration is as follows: > > > <?xml version="1.0" encoding="UTF-8"?> > <beans xmlns:sm="http://servicemix.apache.org/config/1.0" > xmlns:audit="http://servicemix.apache.org/audit/1.0" > xmlns:jms="http://servicemix.apache.org/jms/1.0" > xmlns:preProzessor="http://servicemix.apache.org/preProzessor" > xmlns:ro="http://servicemix.apache.org/routing" > xmlns:amq="http://activemq.org/config/1.0" > xmlns:amqra="http://activemq.org/ra/1.0"> > <!-- System properties --> > <sm:systemProperties> > <property name="properties"> > <map> > <entry key="java.security.auth.login.config"> > <bean > class="org.springframework.util.ResourceUtils" > factory-method="getFile"> > <constructor-arg > value="classpath:login.properties"/> > </bean> > </entry> > </map> > </property> > </sm:systemProperties> > <bean id="propertyConfigurer" > class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> > <property name="location" > value="classpath:servicemix.properties"/> > </bean> > <!-- Include other resources --> > <import resource="classpath:security.xml"/> > <import resource="classpath:jmx.xml"/> > <import resource="classpath:activemq.xml"/> > <import resource="classpath:tx.xml"/> > <import resource="classpath:jndi.xml"/> > <sm:container id="jbi" rootDir="./data/smx" MBeanServer="#jmxServer" > installationDirPath="./install" deploymentDirPath="./deploy" > monitorInterval="1" transactionManager="#transactionManager" > createJmxConnector="false" depends-on="jndi" persistent="true" > autoEnlistInTransaction="true" flowName="jca"> > <!-- Use a secured broker (see security.xml) and define the 3 > standard > flows --> > <sm:broker> > <sm:securedBroker authorizationMap="#authorizationMap"> > <sm:flows> > <sm:sedaFlow/> > <sm:jmsFlow jmsURL="${activemq.url}"/> > <sm:jcaFlow > connectionManager="#connectionManager" > jmsURL="${activemq.url}"/> > </sm:flows> > </sm:securedBroker> > </sm:broker> > <sm:services> > <sm:statistics statsInterval="10" dumpStats="true"/> > </sm:services> > <!--executorFactory--> > <sm:executorFactory> > <bean > class="org.apache.servicemix.executors.impl.ExecutorFactoryImpl"> > <property name="defaultConfig"> > <bean > class="org.apache.servicemix.executors.impl.ExecutorConfig"> > <property name="corePoolSize" > value="${servicemix.corePoolSize}"/> > <property name="maximumPoolSize" > value="${servicemix.maximumPoolSize}"/> > <property name="queueSize" > value="${servicemix.queueSize}"/> > </bean> > </property> > </bean> > </sm:executorFactory> > <sm:activationSpecs> > <sm:activationSpec> > <sm:component> > <jms:component> > <jms:endpoints> > <jms:endpoint > service="b:MyConsumerService" endpoint="synchronous" > targetService="preProzessor:receiver" role="consumer" > defaultMep="http://www.w3.org/2004/08/wsdl/in-only" processorName="jca" > connectionFactory="#activemqCF" resourceAdapter="#activemqRA" > bootstrapContext="#bootstrapContext" synchronous="true" > rollbackOnError="true"> > > <jms:activationSpec> > > <amqra:activationSpec destination="queue.QueueToPreProzessor" > destinationType="javax.jms.Queue"/> > > </jms:activationSpec> > </jms:endpoint> > <jms:endpoint > service="b:MyConsumerService2" endpoint="async" > targetService="ro:router" role="consumer" > defaultMep="http://www.w3.org/2004/08/wsdl/in-only" processorName="jca" > connectionFactory="#activemqCF" resourceAdapter="#activemqRA" > bootstrapContext="#bootstrapContext" synchronous="true" > rollbackOnError="true"> > > <jms:activationSpec> > > <amqra:activationSpec destination="queue.QueueToRouter" > destinationType="javax.jms.Queue"/> > > </jms:activationSpec> > </jms:endpoint> > </jms:endpoints> > </jms:component> > </sm:component> > </sm:activationSpec> > </sm:activationSpecs> > </sm:container> > <sm:dotViewService container="#jbi" autoStart="false"/> > <sm:logService container="#jbi" autoStart="true" refreshPeriod="60"/> > </beans> > > > > > I always get the following exception: > > 2007-06-05 16:06:35,843 ERROR - JcaConsumerProcessor - Error > while handling jms message > javax.jbi.messaging.MessagingException: Unable to choose a flow for > exchange: InOnly[ > id: ID:Rep-A01-3609-1181052369875-4:0 > status: Active > role: provider > service: {http://servicemix.apache.org/preProzessor}receiver > endpoint: receiver > in: <?xml version="1.0" encoding="UTF-8"?><hello>World</hello> > ] > at > org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBroker.java:279) > at > org.apache.servicemix.jbi.security.SecuredBroker.sendExchangePacket(SecuredBroker.java:80) > at > org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContainer.java:793) > at > org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:381) > at > org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.sendSync(DeliveryChannelImpl.java:456) > at > org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.sendSync(DeliveryChannelImpl.java:428) > at > org.apache.servicemix.jms.jca.JcaConsumerProcessor.onMessage(JcaConsumerProcessor.java:117) > at org.jencks.XAEndpoint.onMessage(XAEndpoint.java:129) > at > org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:121) > at > org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:61) > at > org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:696) > at > org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:165) > at > org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:290) > at > org.apache.geronimo.connector.work.pool.NamedRunnable.run(NamedRunnable.java:32) > at > edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) > at > edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) > at java.lang.Thread.run(Thread.java:595) > > Can someone help? > > Greets Goldi > -- View this message in context: http://www.nabble.com/Unable-to-choose-a-flow%21-tf3872089s12049.html#a11014978 Sent from the ServiceMix - User mailing list archive at Nabble.com.
