Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[ecf-dev] Distributed Event Admin - Is possible to specify JMS Client ID???

Hi All,

I'm doing an integration of the ECF Distributed Event Admin ( the jms implementation ) in my project.

It's working ok, so i've been able to connect two use that implementation to send and receiving event
among different equinox nodes.

The only problems that i still have is that at the moment to make test for example with two node ( node 1 and node 2) i've to use different machines ( or vmware ) because if i try to run two equinox connected to the same activemq topic
i've the following exception:

org.eclipse.ecf.core.ContainerCreateException: Exception creating activemq server container at org.eclipse.ecf.internal.provider.jms.activemq.ActiveMQJMSServerContainerInstantiator.createInstance(ActiveMQJMSServerContainerInstantiator.java:60) at org.eclipse.ecf.core.ContainerFactory.createContainer(ContainerFactory.java:287) at org.eclipse.ecf.core.ContainerFactory.createContainer(ContainerFactory.java:306) at org.eclipse.ecf.examples.internal.eventadmin.app.AbstractEventAdminApplication.createConfigureAndConnectContainer(AbstractEventAdminApplication.java:159) at org.eclipse.ecf.examples.internal.eventadmin.app.AbstractEventAdminApplication.startup(AbstractEventAdminApplication.java:65) at org.eclipse.ecf.examples.internal.eventadmin.app.AbstractEventAdminApplication.start(AbstractEventAdminApplication.java:105) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1287)
Caused by: org.eclipse.ecf.core.util.ECFException: JMS Connect or Setup Exception at org.eclipse.ecf.provider.jms.channel.AbstractJMSChannel.setupJMS(AbstractJMSChannel.java:185) at org.eclipse.ecf.provider.jms.channel.AbstractJMSServerChannel.<init>(AbstractJMSServerChannel.java:33) at org.eclipse.ecf.provider.jms.activemq.container.ActiveMQServerChannel.<init>(ActiveMQServerChannel.java:24) at org.eclipse.ecf.provider.jms.activemq.container.ActiveMQJMSServerContainer.start(ActiveMQJMSServerContainer.java:38) at org.eclipse.ecf.internal.provider.jms.activemq.ActiveMQJMSServerContainerInstantiator.createInstance(ActiveMQJMSServerContainerInstantiator.java:57)
    ... 18 more
Caused by: javax.jms.InvalidClientIDException: Broker: localhost - Client: tcp://localhost:61616/exampleTopic already connected from /127.0.0.1:49739 at org.apache.activemq.broker.region.RegionBroker.addConnection(RegionBroker.java:216) at org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:82) at org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:82) at org.apache.activemq.advisory.AdvisoryBroker.addConnection(AdvisoryBroker.java:77) at org.apache.activemq.broker.BrokerFilter.addConnection(BrokerFilter.java:82) at org.apache.activemq.broker.MutableBrokerFilter.addConnection(MutableBrokerFilter.java:89) at org.apache.activemq.broker.TransportConnection.processAddConnection(TransportConnection.java:666) at org.apache.activemq.broker.jmx.ManagedTransportConnection.processAddConnection(ManagedTransportConnection.java:83) at org.apache.activemq.command.ConnectionInfo.visit(ConnectionInfo.java:134) at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:297) at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:175) at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68) at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113) at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:210) at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84) at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:203) at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:185)
    at java.lang.Thread.run(Thread.java:619)


From the activemq site it's seems it's possible to specify the JMS client id in the connection factory, so my question is if this
is possible also in ecf.

Thanks
Andrea


Back to the top