[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[ecf-dev] tutorial idea: OSGi remote services for existing services

Hi Folks,

One of the things that is very easy to do with ECF's impl of Remote Services is the following use case:

1) Assume: You already have an existing web-based service (e.g. using REST, json, xml or whatever), and already have multiple types of consumers of that service (e.g. browsers, smart phones, other servers using the service, RCP apps, Eclipse, etc).

2) It would make things easier for at least some clients (e.g. RCP apps) if this existing web-based service was exposed as an OSGi Remote Service. Why? Because then on the consumer you get all of the 'goodness' of OSGi services (e.g. dynamics, versioning of service interface, clear separation of concerns, injection and service dependency mgmt, etc)...completely for free from using OSGi Remote Services.

It seems to me likely that there are a fair number of potential consumers of Remote Services in this situation (1 and 2). If so, with ECF Remote Services it's very easy to create a service client/consumer-only Remote Services provider that

a) Uses the existing service without requiring it to be changed at all...i.e. it doesn't have to be implemented in java, or use OSGi, or its implementation be changed in any way. This means complete backward service compatibility across clients (existing non-OSGi clients unaffected).
b) Exposes the service as an OSGi Remote Service on any service consumer/client that uses OSGi


I intend to create a tutorial [1], that demonstrates how to do this simply with ECF Remote Services.

One question I have: I would like to use an existing, public, web-based service for 1. Years ago I did this for the twitter API/service, but I think it would be better to use some other more recent web-based service. Suggestions for such a service? It would be very nice if it was a popular, public API, that was constantly available/reliable, so that everyone can/could try and successfully run things in the tutorial.

So...any suggestions for an existing popular web-based service that I could use for this tutorial?

Thanks,

Scott

[1] http://wiki.eclipse.org/ECF#Introductory_Materials