[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Newsgroup Home]
|
[news.eclipse.technology.ecf] Re: Communication between OSGi/Equinox - JMS/ActiveMQ
|
Hi Sebastian,
Sebastian Schneider wrote:
Hi Scott,
Thanks for the tip with the server version. I have used the version 5.1
and changed it to 3.1.
So, your ActiveMQJMSServer works and connect to my ActiveMQ broker.
That's good to hear. I wouldn't mind moving over to use a more recent
ActiveMQ implementation...if this is something important to you please
open an enhancement request (with the version desired) so we can know
which version to focus on and can track (as well as communicate directly
with you and other interested parties about progress).
~
<stuff deleted>
The container connect to the broker, but the channelContainerAdapter is
null.
I don't know what I must do with the IContainerManager to get a container?!
Probably the easiest is to do:
IContainerManager manager = (IContainerManager)
ContainerFactory.getDefault();
IContainer [] containers = manager.getAllContainers();
(should return one container...i.e. the server container instance)
IChannelContainerAdapter adapter = (IChannelContainerAdapter)
containers[0].getAdapter(IChannelContainerAdapter.class);
But actually, I would recommend that you get the IContainerManager via
the OSGi service rather than via the static
ContainerFactory.getDefault() method (i.e. the IContainerManager is an
OSGi service, so you can get access to it via the ServiceTracker (see
here for an article about that, as it will be useful in other contexts:
http://www.eclipsezone.com/eclipse/forums/t90796.html
I need a very simple and complete example for my implementation.
My context:
I try to implement a bundle with some monitoring application.
They listen as subscriber on a channel/topic and send also message
backward to another channel/topic.
At the moment I have only a Activator.java.
I would/will be happy to produce a hello world example application, but
I need to travel soon and so will need a little time to do so.
Would you file an enhancement request to do this at
http://bugs.eclipse.org and it will allow me to not have the request get
lost given my traveling and such. In the mean time, the example code
for datashare can/could be helpful as well:
http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.ecf/tests/bundles/org.eclipse.ecf.tests.datashare/src/org/eclipse/ecf/tests/datashare/?root=RT_Project
Thanks,
Scott
Thanks
Sebastian
but actually, I see that this error message(ultimately coming from
activemq failure)
syncSendTimedOut: connection no longer OK
might mean that the ECF generic server is failing to actually connect
to the activemq broker...perhaps because of version incompatibilities.
> I tried also your ActiveMQJMSServer application with the "ActiveMQ
JMS Server.launch" configuration, but I get also an error with this
[6] log message.
> My ActiveMQ "Broker" log following message:ERROR TransportConnector
- Could not accept connection : Wire format negotiation timeout: peer
did not send his wire format.
>
> Have you an idea or tip where my problem is?
>
I suspect that there are two problems. The first (and hardest) is
getting the ecf jms generic server (which is actually an activemq
*client* when it connects to the activemq broker) to create a proper
connection to the broker. I suspect that this:
My ActiveMQ "Broker" log following message:ERROR TransportConnector -
Could not accept connection : Wire format negotiation timeout: peer
did not send his wire format.
Which you got in response to the *ecf server/jms client* attempt to
connect to the broker. My guess is that this is some version
incompatibility across activemq versions (i.e. on the ecf generic
server/jms client...which uses the activemq3.1m5) and the activemq
broker that you are using (I don't know what version you are using).
So we'll have to figure this out by getting some sort of version
compatiblity (through same/similar activemq versions on broker and on
ecf servers and clients). If you can let me know what version of the
broker you are using, I will look into forward porting ECF generic
server and clients to something compatible with that (i.e. 4.0 or etc)
Then we have the missing code on the server (creating the channel as I
described above). This will be relatively easy to fix once we get the
connection problem worked out with activemq.
So please let me know which version of activemq you are using for the
broker, and I'll see about getting/updating the ecf activemq generic
server and client with something compatible.
Thanks much for patience. We'll work this out, but due to the length
of time we have not updated activemq I think we'll need to deal with
this buy forward porting things.
Scott