Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ecf-dev] Using JMS provider for remote service distribution

Hello Scott,

Thanks for the link, I got it working by creating a "ecf.jms.activemq.tcp.manager" container with the JMS address as the parameter.

I guess I can prepare a JMS/ActiveMQ provider example, by following the steps that I wrote. If that's all correct of course.

I also have another question, if I had to login to the JMS broker by a username & password; would it be possible for remoteservices? Will adding some other service properties be enough, or should the consumer side also create a container and connect to server?

Regards,
Muammer

On Thu, Dec 11, 2014 at 4:50 PM, Scott Lewis <slewis@xxxxxxxxxxxxx> wrote:
On 12/11/2014 5:19 AM, Muammer Eroğlu wrote:
Hello,

I'm experimenting with different providers for remote service distribution and in this case I'm trying to switch to the ECF JMS/ActiveMQ provider.

I downloaded the projects from https://github.com/ECF/JMS and after exporting "org.eclipse.ecf.provider.jms" and "org.eclipse.ecf.provider.jms.activemq", included them in my project.

Then I switched the "service.exported.configs" property of the exported service to "ecf.jms.activemq.tcp.client". I also added "ecf.endpoint.connecttarget.id" property with the value of "tcp://activemq_server_ip_here:61616/topic".

I was already using zookeeper, thus I didn't make any modifications on the client side, let it be discovered automatically.

The result was this: I saw that both the client and server makes a connection to the ActiveMQ server, send some messages, however, they both end up with "connect failed", "timeout waiting for response" errors.

I've been searching for examples, or questions in this context, but unfortunately I couldn't find much to help. After going through the code a while, I suspect that there should be a ecf.jms.activemq.tcp.server container somewhere, to respond to the connect messages that clients fail to get response.

Yes, that's right, a server container must exist/be started for the client to connect to.   There is example/test code in the following project that sets up and uses a server+broker and client

https://github.com/ECF/JMS/tree/master/tests/org.eclipse.ecf.tests.provider.jms.activemq

Regrettably, we don't yet have a remote service example (e.g. timeservice examples described in the tutorials) that has been setup to use the JMS providers...e.g. with the necessary build/meta-data.   I simply don't currently have the resources to do that work myself.  If you are willing to contribute some effort to help create such an example, please open an enhancement request. 


Is there an example project anywhere that uses JMS provider for remote service distribution?

The above test code does this.   It does not yet use the OSGi RSA, but again that's something that can be easily added.

Scott



_______________________________________________
ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/ecf-dev

Back to the top