You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by sub3 <st...@subwest.com> on 2011/09/22 22:52:52 UTC
addNetworkConnector - JMX Error
Hi,
I want to be able to add a network connector a runtime. I believe this code
works, but it throws an error on the first line:
> NetworkConnector connector =
> broker.addNetworkConnector("static://"+"tcp://"+host+":61616");
> connector.setDuplex(true);
> connector.start();
Is it the connector that needs a unique name, or something deeper? I can't
find any other functions which would change this behavior. Thanks for any
help.
Error:
java.io.IOException: Network Connector could not be registered in JMX:
org.apache.activemq:BrokerName=denver,Type=NetworkConnector,NetworkConnectorName=NC
at
org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:27)
at
org.apache.activemq.broker.BrokerService.registerNetworkConnectorMBean(BrokerService.java:1708)
at
org.apache.activemq.broker.BrokerService.addNetworkConnector(BrokerService.java:351)
at
org.apache.activemq.broker.BrokerService.addNetworkConnector(BrokerService.java:305)
at
org.apache.activemq.broker.BrokerService.addNetworkConnector(BrokerService.java:280)
at
mil.darpa.insight.broker.LocalBroker.createNetworkConnector(LocalBroker.java:109)
at
mil.darpa.insight.InsightOSImpl.handleNetworkMessage(InsightOSImpl.java:287)
at mil.darpa.insight.InsightOSImpl.onMessage(InsightOSImpl.java:264)
at
org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:1230)
at
org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:134)
at
org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:205)
at
org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:127)
at
org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:48)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: javax.management.InstanceAlreadyExistsException:
org.apache.activemq:BrokerName=denver,Type=NetworkConnector,NetworkConnectorName=NC
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.jmx.ManagementContext.registerMBean(ManagementContext.java:299)
at
org.apache.activemq.broker.jmx.AnnotatedMBean.registerMBean(AnnotatedMBean.java:65)
at
org.apache.activemq.broker.BrokerService.registerNetworkConnectorMBean(BrokerService.java:1706)
--
View this message in context: http://activemq.2283324.n4.nabble.com/addNetworkConnector-JMX-Error-tp3834836p3834836.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Re: addNetworkConnector - JMX Error
Posted by sub3 <st...@subwest.com>.
You can't set the connector name because it fails on the first line, before
the connector object is returned.
I did find an answer (documenting here in case anyone googles this group
later). Basically, don't use the addNetworkConnector(String), but instead
addNetworkConnector(NetworkConnector).
> NetworkConnector connector = new DiscoveryNetworkConnector(uri);
> connector.setName(host+"Connector");
> connector.setDuplex(true);
> broker.addNetworkConnector(connector);
> connector.start();
Thanks for your help.
--
View this message in context: http://activemq.2283324.n4.nabble.com/addNetworkConnector-JMX-Error-tp3834836p3838096.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Re: addNetworkConnector - JMX Error
Posted by Marcelo Jabali <mj...@fusesource.com>.
Have you tried setting the connector's name?
e.g. connector.setName("myNetworkConnector");
The tests available at https://issues.apache.org/jira/browse/AMQ-3348 may also give you some hints to get this working.
Hope this helps,
-Marcelo
On Sep 22, 2011, at 1:52 PM, sub3 wrote:
> Hi,
>
> I want to be able to add a network connector a runtime. I believe this code
> works, but it throws an error on the first line:
>
>> NetworkConnector connector =
>> broker.addNetworkConnector("static://"+"tcp://"+host+":61616");
>> connector.setDuplex(true);
>> connector.start();
>
> Is it the connector that needs a unique name, or something deeper? I can't
> find any other functions which would change this behavior. Thanks for any
> help.
>
> Error:
> java.io.IOException: Network Connector could not be registered in JMX:
> org.apache.activemq:BrokerName=denver,Type=NetworkConnector,NetworkConnectorName=NC
> at
> org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:27)
> at
> org.apache.activemq.broker.BrokerService.registerNetworkConnectorMBean(BrokerService.java:1708)
> at
> org.apache.activemq.broker.BrokerService.addNetworkConnector(BrokerService.java:351)
> at
> org.apache.activemq.broker.BrokerService.addNetworkConnector(BrokerService.java:305)
> at
> org.apache.activemq.broker.BrokerService.addNetworkConnector(BrokerService.java:280)
> at
> mil.darpa.insight.broker.LocalBroker.createNetworkConnector(LocalBroker.java:109)
> at
> mil.darpa.insight.InsightOSImpl.handleNetworkMessage(InsightOSImpl.java:287)
> at mil.darpa.insight.InsightOSImpl.onMessage(InsightOSImpl.java:264)
> at
> org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:1230)
> at
> org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:134)
> at
> org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:205)
> at
> org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:127)
> at
> org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:48)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
> Caused by: javax.management.InstanceAlreadyExistsException:
> org.apache.activemq:BrokerName=denver,Type=NetworkConnector,NetworkConnectorName=NC
> 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.jmx.ManagementContext.registerMBean(ManagementContext.java:299)
> at
> org.apache.activemq.broker.jmx.AnnotatedMBean.registerMBean(AnnotatedMBean.java:65)
> at
> org.apache.activemq.broker.BrokerService.registerNetworkConnectorMBean(BrokerService.java:1706)
>
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/addNetworkConnector-JMX-Error-tp3834836p3834836.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.