[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ecf-dev] Remoting with ECF (with REST) in Eclipse RCP?

Hi Angelo,

On 4/11/2012 6:28 AM, Angelo zerr wrote:
<stuff deleted>

When I see ECF samples, there is a lot of Java code to do in the Activator. In my case I would like just using Spring file to declare the client and server side.
The ECF Spring support problem is client side (not server side). On client side if you configure an URL of the server and you start the client BEFORE the server, the Spring bean cannot be created.
That's is the first problem (I will try to fix that if we decide to use ECF in our project).

ECF remote services is an implementation of the OSGi remote services specification...and as such simply makes available remoting for services registered (with appropriate properties) in the OSGI service registry. This registering of services can be done in java, ds, and...I'm quite certain...Spring. ECF has examples of doing it with java, and ds (for ds examples, see):


for host: http://git.eclipse.org/c/ecf/org.eclipse.ecf.git/tree/examples/bundles/org.eclipse.ecf.examples.remoteservices.hello.ds.host

for consumer/client: http://git.eclipse.org/c/ecf/org.eclipse.ecf.git/tree/examples/bundles/org.eclipse.ecf.examples.remoteservices.hello.ds.consumer

The ECF Spring support that was previously done (that I think you are referring to) is no longer needed...now that ECF implements the OSGi remote services spec (when that work was done, the standard did not exist...and so our impl of the standard did not exist).

So you should be able to use Spring (just like ds examples) to declare both your service host and consumer host...and how/when that's done (by Spring...or ds) will determine the timing of the availability of the service for remote access.


The second problem is that ECF seems not support JAX-RS (just REST).

JAX-RS is not 'REST'. It's a standard/implementation. Restlet is listed here


http://en.wikipedia.org/wiki/Java_API_for_RESTful_Web_Services

as an implementation of JAX-RS, and ECF has a provider based upon Restlet here

https://github.com/ECF/RestletProvider

So without getting into specifics of the JAX-RS standard, versions, and compatibility tests, etc I would say that we in fact do support JAX-RS through our use of Restlet as a JAX-RS implementation.


As I said you, I don't want code something. I give you how I do that with CXF and I hope you will understand my need.

To be direct about it, I guess I don't understand your need. As for 'coding' or not...like I said...ECF remote services simply implements the OSGi remote services specification...and so *any* mechanism for registering and accessing OSGi services (java, ds, Spring, etc) is suitable for using for remote services. No java code required...if not desired.


The existence of the ECF Spring support (done in java, before the spec and impl existed as I said) may be confusing here as I think it implies that this is the only way to use ECF remote services with Spring. That's no longer true.

Scott