Hello,

Since I have a perl client to access services through servicemix-jms, I
think I need to enable Stomp access to servicemix-jms. I read the directions
of enabling the ActiveMQ broker for Stomp from
http://activemq.apache.org/stomp.html. I also find the example on
http://incubator.apache.org/servicemix/jms-binding-configuration.html. Based
on my understanding, I have my xbean.xml configuration like:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:sm="http://servicemix.apache.org/config/1.0";
        xmlns:jms="http://servicemix.apache.org/jms/1.0";
        xmlns:amq="http://activemq.org/config/1.0";
        xmlns:rtdemo="http://rtdemo.abacus.com/rtdemo";>
        <!-- JMS POLLER - CONSUMER -->
        <jms:endpoint service="rtdemo:MyConsumer" endpoint="MyConsumer"
                targetService="rtdemo:RTDemo" targetEndpoint="Soap" 
role="consumer"
                defaultMep="http://www.w3.org/2004/08/wsdl/in-out";
                destinationStyle="queue" soap="true"
                jmsProviderDestinationName="demo.com.abacus.source"
                connectionFactory="#rtdemoConnFactory" />
        <!-- JMS SENDER - PROVIDER -->
        <jms:endpoint service="rtdemo:MyProvider" endpoint="MyProvider"
                role="provider" 
defaultMep="http://www.w3.org/2004/08/wsdl/in-out";
                destinationStyle="queue"
                jmsProviderDestinationName="demo.com.abacus.result"
                connectionFactory="#rtdemoConnFactory" />
        <!-- FACTORY BEAN -->
        <bean id="rtdemoConnFactory"
                class="org.apache.activemq.ActiveMQConnectionFactory">
                <property name="brokerURL" value="tcp://localhost:61616" />
        </bean>
        <!-- BROKER BEAN -->
        <amq:broker id="rtdemoBroker" persistent="false">
                <amq:transportConnectors>
                        <amq:transportConnector uri="tcp://localhost:61616" />
                        <amq:transportConnector uri="stomp://localhost:61613" />
                </amq:transportConnectors>
        </amq:broker>
</beans>

However, it seems <amq:broker> will re-create a broker "localhost" after
ConnFactory creates one. The error message is:

2007-07-12 11:34:42,543 [main           ] ERROR BrokerService                 
- Failed to start ActiveMQ JMS Message Broker. Reason:
javax.management.InstanceAlreadyExistsException:
org.apache.activemq:BrokerName=localhost,Type=Broker
javax.management.InstanceAlreadyExistsException:
org.apache.activemq:BrokerName=localhost,Type=Broker
        at com.sun.jmx.mbeanserver.Repository.addMBean(Repository.java:453)
        at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.internal_addObject(DefaultMBeanServerInterceptor.java:1484)
        at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerDynamicMBean(DefaultMBeanServerInterceptor.java:963)
        at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerObject(DefaultMBeanServerInterceptor.java:917)
        at
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.registerMBean(DefaultMBeanServerInterceptor.java:312)
        at
com.sun.jmx.mbeanserver.JmxMBeanServer.registerMBean(JmxMBeanServer.java:482)
        at
org.apache.activemq.broker.BrokerService.createBroker(BrokerService.java:1231)
        at
org.apache.activemq.broker.BrokerService.getBroker(BrokerService.java:508)
        at 
org.apache.activemq.broker.BrokerService.start(BrokerService.java:394)
        at
org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:47)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1201)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1171)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:425)
        at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
        at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:156)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
        at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:287)
        at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
        at
org.apache.servicemix.common.xbean.AbstractXBeanServiceUnitAnalyzer.init(AbstractXBeanServiceUnitAnalyzer.java:90)
        at
org.apache.servicemix.maven.plugin.jbi.GenerateServiceUnitDescriptorMojo.generateJbiDescriptor(GenerateServiceUnitDescriptorMojo.java:185)
        at
org.apache.servicemix.maven.plugin.jbi.GenerateServiceUnitDescriptorMojo.execute(GenerateServiceUnitDescriptorMojo.java:143)
        at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:412)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:534)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:475)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:454)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:306)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:273)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:140)
        at 
org.apache.maven.embedder.MavenEmbedder.execute(MavenEmbedder.java:441)
        at 
org.apache.maven.embedder.MavenEmbedder.execute(MavenEmbedder.java:382)
        at org.maven.ide.eclipse.Maven2Executor.main(Maven2Executor.java:68)


Any ideas on how to fix the configuration? Thanks in advance!!

-- 
View this message in context: 
http://www.nabble.com/Broker-Config-for-servicemix-jms-tf4069758s12049.html#a11565270
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to