Hi Folks,

There's a new version of the ECF JaxRS Distribution Provider [1].   This provider implements OSGi R7 Remote Services [2] via the JaxRS support in Apache CXF 3.3  or Jersey 2.28.

In practice, this means that any JaxRS-annotated service can be exported as a Remote Service in any OSGI R6+ environments by adding OSGi-standardized service properties.   An example of running such an example in Karaf is documented here [3] with all example source available here [1].

CXF can of course be extended and/or configured to support custom serialization, security, or other use-case specific distribution needs, all within the JaxRS-standardized extension mechanisms supported by CXF...or by CXF-specific extension mechanisms if desired.

OSGi R7 Remote Services has asynchronous remote services [4], service intents, remote service admin, configurable and extensible service discovery, and service dynamics, as well as OSGi versioning, proxy creation...all integrated-via spec with any frameworks built upon the OSGi service registry (DS, etc).

ECF also now has a Bndtools 4.2+ workspace and templates for creating and running remote services with Bndtools [5].  These provide the repos for the necessary bundles, as well as runnable examples and bndtools project templates.

See blog posting [6] for these and other links.

Thanks,

Scott

[1] https://github.com/ECF/JaxRSProviders

[2] https://osgi.org/specification/osgi.cmpn/7.0.0/service.remoteservices.html

[3] https://wiki.eclipse.org/Tutorial:_JaxRS_Remote_Services_on_Karaf

[4] https://osgi.org/specification/osgi.cmpn/7.0.0/service.remoteservices.html#d0e1407

[5] https://wiki.eclipse.org/Bndtools_Support_for_Remote_Services_Development

[6] http://eclipseecf.blogspot.com/2019/02/restful-osgi-r7-remote-services-with.html

Reply via email to