If you don' t want to use the activationSpec, you need to write your own JmsMarshaler and configure the component to use it.
See http://svn.apache.org/viewvc/incubator/servicemix/trunk/servicemix-core/src/test/resources/org/apache/servicemix/jbi/config/example-component-route-spring.xml?view=markup for using an activationSpec in a pure spring config. On 9/27/06, bhuvi <[EMAIL PROTECTED]> wrote:
hi this is my xml <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- the JBI container --> <!-- the JBI container --> <bean id="jbi" class="org.apache.servicemix.jbi.container.SpringJBIContainer"> <property name="embedded" value="true" /> <property name="componentNames"> <list> <value>inputReceiver</value> <value>outputSender</value> </list> </property> </bean> <!-- components within the JBI container --> <!-- inputReceiver --> <bean id="inputReceiver" class="org.apache.servicemix.components.jms.JmsInUsingJCABinding"> <property name="jcaContainer" ref="jencks" /> <property name="activationSpec"> <bean id="ActiveMQActivationSpec" class="org.apache.activemq.ra.ActiveMQActivationSpec"> <property name="destination" value="demo.org.servicemix.source" /> <property name="destinationType" value="javax.jms.Topic" /> </bean> </property> </bean> <!-- END inputReceiver --> <!-- outputSender --> <bean id="outputSender" class="org.apache.servicemix.components.jms.JmsSenderComponent"> <property name="template"> <bean class="org.springframework.jms.core.JmsTemplate"> <property name="connectionFactory"> <ref local="jmsFactory" /> </property> <property name="defaultDestinationName" value="demo.org.servicemix.result" /> <property name="pubSubDomain" value="true" /> </bean> </property> </bean> <!-- END outputSender --> <!-- jencks --> <bean id="jencks" class="org.jencks.JCAContainer" singleton="true"> <property name="bootstrapContext"> <bean class="org.jencks.factory.BootstrapContextFactoryBean"> <property name="threadPoolSize" value="25" /> </bean> </property> <property name="resourceAdapter"> <bean id="activeMQResourceAdapter" class="org.apache.activemq.ra.ActiveMQResourceAdapter" singleton="true"> <property name="serverUrl" value="tcp://localhost:61616" /> </bean> </property> </bean> <!-- END jencks --> <!--jms factory--> <bean id="jmsFactory" class="org.apache.activemq.pool.PooledConnectionFactory"> <property name="connectionFactory"> <bean class="org.apache.activemq.ActiveMQConnectionFactory"> <property name="brokerURL"> <value>tcp://localhost:61616</value> </property> </bean> </property> </bean> <!--END jms factory--> <!-- broker <bean id="broker" class="org.apache.activemq.xbean.BrokerFactoryBean"> <property name="config" value="classpath:activemq.xml" /> <property name="start" value="true" /> </bean>--> <bean id="transactionContextManager" class="org.jencks.factory.TransactionContextManagerFactoryBean" /> <bean id="transactionManager" class="org.jencks.factory.GeronimoTransactionManagerFactoryBean" /> </beans> --------------------------------------------------------------------------------------------------------------------------------------------------------------- gnodet wrote: > > The problem is not on the broker side, but in the > configuration of the component. > Did you add the destinationService on the > activationSpec element as I advised ? > Paste your servicemix.xml config. > > On 9/27/06, bhuvi <[EMAIL PROTECTED]> wrote: >> >> hi >> i tried initializing the broker using the following code.my broker >> is >> initialized properly but how to set the service or interface to which the >> message is to be passed. >> >> BrokerService broker = new BrokerService(); >> System.out.println("broker service initiated"); >> >> broker.addConnector("tcp://localhost:61616"); >> System.out.println("connector added"); >> broker.start(); >> System.out.println("broker started"); >> >> i get the following exception when i run my jmsclient. >> >> 18:32:11,276 INFO [JCAContainer] Jencks JCA Container >> (http://jencks.org/) >> has started running version: 1.1.1 >> 18:32:11,292 INFO [JCAConnector] Activating endpoint for activationSpec: >> ActiveMQActivationSpec{acknowledgeMode='Auto-acknowledge', >> destinationType='javax.jms.Topic', messageSelector='null', >> destination='demo.org.servicemix.source', clientId='null', >> subscriptionName='null', subscriptionDurability='NonDurable'} using >> endpointFactory: >> [EMAIL PROTECTED] >> broker service initiated >> connector added >> broker started >> 18:32:19,678 ERROR [ActiveMQSession] error dispatching message: >> org.apache.servicemix.jbi.RuntimeJBIException: >> javax.jbi.messaging.MessagingException: Could not find route for >> exchange: >> MessageExchange[ >> id: ID:AD0077-TRNG3-3716-1159362131136-1:0 >> status: Active >> role: provider >> in: <?xml version="1.0" encoding="UTF-8"?><timestamp>Wed Sep 27 >> 18:32:19 >> GMT+05:30 2006</timestamp> >> ] for service: null and interface: null >> at >> org.apache.servicemix.components.jms.JmsInBinding.onMessage(JmsInBinding.java:74) >> at >> org.jencks.LocalTransactionEndpoint.onMessage(LocalTransactionEndpoint.java:68) >> at >> org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:120) >> at >> org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:60) >> at >> org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:692) >> at >> org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:163) >> at >> org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:291) >> at >> EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown >> Source) >> at java.lang.Thread.run(Thread.java:595) >> Caused by: javax.jbi.messaging.MessagingException: Could not find route >> for >> exchange: MessageExchange[ >> id: ID:AD0077-TRNG3-3716-1159362131136-1:0 >> status: Active >> role: provider >> in: <?xml version="1.0" encoding="UTF-8"?><timestamp>Wed Sep 27 >> 18:32:19 >> GMT+05:30 2006</timestamp> >> ] for service: null and interface: null >> at >> org.apache.servicemix.jbi.nmr.DefaultBroker.sendExchangePacket(DefaultBroker.java:311) >> at >> org.apache.servicemix.jbi.container.JBIContainer.sendExchange(JBIContainer.java:713) >> at >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.doSend(DeliveryChannelImpl.java:374) >> at >> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.send(DeliveryChannelImpl.java:410) >> at >> org.apache.servicemix.components.jms.JmsInBinding.onMessage(JmsInBinding.java:66) >> ... 8 more >> can you suggest me a solution. >> thanks in advance. >> ------------------------------------------------------------------------------------------------------------------------------------------------------------ >> >> >> gnodet wrote: >> > >> > You need to specify a target destination on the <sm:activationSpec /> >> > using destinationService, destinationInterface so that the NMR >> > will know where to route the exchange. >> > >> > On 9/27/06, bhuvi <[EMAIL PROTECTED]> wrote: >> >> >> >> Hi >> >> Thanks a lot for ur suggestion. Now the Broker service is >> >> started...... >> >> But still i cant able to fix the service (route) which should receive >> the >> >> response. This is the exception i got: >> >> >> >> 11:32:46,114 INFO [JCAContainer] Jencks JCA Container >> >> (http://jencks.org/) >> >> has started running version: 1.1.1 >> >> 11:32:46,130 INFO [JCAConnector] Activating endpoint for >> activationSpec: >> >> ActiveMQActivationSpec{acknowledgeMode='Auto-acknowledge', >> >> destinationType='javax.jms.Topic', messageSelector='null', >> >> destination='demo.org.servicemix.source', clientId='null', >> >> subscriptionName='null', subscriptionDurability='NonDurable'} using >> >> endpointFactory: >> >> [EMAIL PROTECTED] >> >> 15:16:22,927 ERROR [ActiveMQSession] error dispatching message: >> >> org.apache.servicemix.jbi.RuntimeJBIException: >> >> javax.jbi.messaging.MessagingException: Could not find route for >> >> exchange: >> >> MessageExchange[ >> >> id: ID:AD0077-TRNG3-1394-1159336965958-1:0 >> >> status: Active >> >> role: provider >> >> in: <?xml version="1.0" encoding="UTF-8"?><timestamp>Wed Sep 27 >> >> 15:16:22 >> >> GMT+05:30 2006</timestamp> >> >> ] for service: null and interface: null >> >> at >> >> >> org.apache.servicemix.components.jms.JmsInBinding.onMessage(JmsInBinding.java:74) >> >> at >> >> >> org.jencks.LocalTransactionEndpoint.onMessage(LocalTransactionEndpoint.java:68) >> >> at >> >> >> org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:120) >> >> at >> >> >> org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:60) >> >> at >> >> org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:692) >> >> at >> >> >> org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:163) >> >> at >> >> >> org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:291) >> >> at >> >> EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown >> >> Source) >> >> at java.lang.Thread.run(Thread.java:595) >> >> >> >> >> >> >> ------------------------------------------------------------------------------------------------------------------------------------------------------------ >> >> >> >> >> >> James.Strachan wrote: >> >> > >> >> > So it looks like you don't have the correct xbean-spring jars for >> the >> >> > version of ActiveMQ you are using. The xbean-spring*.jar files are >> >> > typically included in a binary distro of ActiveMQ in the >> lib/optional >> >> > directory. >> >> > >> >> > >> >> > On 9/27/06, bhuvi <[EMAIL PROTECTED]> wrote: >> >> >> >> >> >> hi this is my full stack trace.. >> >> >> org.springframework.beans.factory.BeanDefinitionStoreException: >> Error >> >> >> registering bean with name 'broker' defined in file >> >> >> [D:\Workspace\JMSservice\spring-simple.xml]: Class that bean class >> >> >> [org.apache.activemq.xbean.BrokerFactoryBean] depends on not found; >> >> >> nested >> >> >> exception is java.lang.NoClassDefFoundError: null >> >> >> java.lang.NoClassDefFoundError >> >> >> at >> >> >> >> >> >> org.apache.activemq.xbean.BrokerFactoryBean.class$(BrokerFactoryBean.java:42) >> >> >> at >> >> >> >> >> >> org.apache.activemq.xbean.BrokerFactoryBean.<clinit>(BrokerFactoryBean.java:45) >> >> >> at java.lang.Class.forName0(Native Method) >> >> >> at java.lang.Class.forName(Class.java:242) >> >> >> at >> >> >> org.springframework.util.ClassUtils.forName(ClassUtils.java:88) >> >> >> at >> >> >> >> >> >> org.springframework.beans.factory.support.BeanDefinitionReaderUtils.createBeanDefinition(BeanDefinitionReaderUtils.java:65) >> >> >> at >> >> >> >> >> >> org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parseBeanDefinitionElement(DefaultXmlBeanDefinitionParser.java:369) >> >> >> at >> >> >> >> >> >> org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parseBeanDefinitionElement(DefaultXmlBeanDefinitionParser.java:335) >> >> >> at >> >> >> >> >> >> org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.parseBeanDefinitions(DefaultXmlBeanDefinitionParser.java:266) >> >> >> at >> >> >> >> >> >> org.springframework.beans.factory.xml.DefaultXmlBeanDefinitionParser.registerBeanDefinitions(DefaultXmlBeanDefinitionParser.java:186) >> >> >> at >> >> >> >> >> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:246) >> >> >> at >> >> >> >> >> >> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:163) >> >> >> at >> >> >> >> >> >> org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:125) >> >> >> at >> >> >> >> >> >> org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:141) >> >> >> at >> >> >> >> >> >> org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:113) >> >> >> at >> >> >> >> >> >> org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:81) >> >> >> at >> >> >> >> >> >> org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:89) >> >> >> at >> >> >> >> >> >> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:268) >> >> >> at >> >> >> >> >> >> org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:83) >> >> >> at >> >> >> >> >> >> org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:68) >> >> >> at >> >> >> >> >> >> org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:59) >> >> >> at >> src.com.allfon.century.esb.StartEsb.start(StartEsb.java:45) >> >> >> at >> >> src.com.allfon.century.esb.StartEsb.<init>(StartEsb.java:26) >> >> >> at >> src.com.allfon.century.esb.StartEsb.main(StartEsb.java:77) >> >> >> Caused by: java.lang.ClassNotFoundException: >> >> >> org.apache.xbean.spring.context.impl.URIEditor >> >> >> at java.net.URLClassLoader$1.run(URLClassLoader.java:200) >> >> >> at java.security.AccessController.doPrivileged(Native >> Method) >> >> >> at >> java.net.URLClassLoader.findClass(URLClassLoader.java:188) >> >> >> at java.lang.ClassLoader.loadClass(ClassLoader.java:306) >> >> >> at >> >> sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268) >> >> >> at java.lang.ClassLoader.loadClass(ClassLoader.java:251) >> >> >> at >> >> java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) >> >> >> at java.lang.Class.forName0(Native Method) >> >> >> at java.lang.Class.forName(Class.java:164) >> >> >> ... 24 more >> >> >> >> >> >> >> >> >> James.Strachan wrote: >> >> >> > >> >> >> > Could you provide the full stack trace please? >> >> >> > >> >> >> > On 9/27/06, bhuvi <[EMAIL PROTECTED]> wrote: >> >> >> >> >> >> >> >> hi all, >> >> >> >> i tried JMS binding using my own java code that reads the xml >> >> which >> >> >> i >> >> >> >> provide and starts the component accordingly. >> >> >> >> my xml is similar to the one provided for jms binding example >> but i >> >> >> get >> >> >> >> the >> >> >> >> following exception. >> >> >> >> i have included all the necessary jars,also the one which has >> >> >> >> BrokerFactoryBean class. >> >> >> >> >> >> >> >> org.springframework.beans.factory.BeanDefinitionStoreException: >> >> Error >> >> >> >> registering bean with name 'broker' defined in file >> >> >> >> [D:\Workspace\JMSservice\spring-simple.xml]: Class that bean >> class >> >> >> >> [org.apache.activemq.xbean.BrokerFactoryBean] depends on not >> found; >> >> >> >> nested >> >> >> >> exception is java.lang.NoClassDefFoundError: null >> >> >> >> java.lang.NoClassDefFoundError >> >> >> >> >> >> >> >> could there be anyother problem? can anyone suggest me a >> solution. >> >> >> >> thanks in advance. >> >> >> >> -- >> >> >> >> View this message in context: >> >> >> >> >> >> >> >> >> >> http://www.nabble.com/broker-initialization-problem-tf2342894.html#a6521072 >> >> >> >> Sent from the ServiceMix - User mailing list archive at >> Nabble.com. >> >> >> >> >> >> >> >> >> >> >> > >> >> >> > >> >> >> > -- >> >> >> > >> >> >> > James >> >> >> > ------- >> >> >> > http://radio.weblogs.com/0112098/ >> >> >> > >> >> >> > >> >> >> >> >> >> -- >> >> >> View this message in context: >> >> >> >> >> >> http://www.nabble.com/broker-initialization-problem-tf2342894.html#a6521807 >> >> >> Sent from the ServiceMix - User mailing list archive at Nabble.com. >> >> >> >> >> >> >> >> > >> >> > >> >> > -- >> >> > >> >> > James >> >> > ------- >> >> > http://radio.weblogs.com/0112098/ >> >> > >> >> > >> >> >> >> -- >> >> View this message in context: >> >> >> http://www.nabble.com/broker-initialization-problem-tf2342894.html#a6523823 >> >> Sent from the ServiceMix - User mailing list archive at Nabble.com. >> >> >> >> >> > >> > >> > -- >> > Cheers, >> > Guillaume Nodet >> > >> > >> >> -- >> View this message in context: >> http://www.nabble.com/broker-initialization-problem-tf2342894.html#a6526229 >> Sent from the ServiceMix - User mailing list archive at Nabble.com. >> >> > > > -- > Cheers, > Guillaume Nodet > > -- View this message in context: http://www.nabble.com/broker-initialization-problem-tf2342894.html#a6526547 Sent from the ServiceMix - User mailing list archive at Nabble.com.
-- Cheers, Guillaume Nodet
