Bundle: soap_remotefw
Version 2.0.0

SOAP Remote Framework

This bundle exports (server) and imports (client) remote OSGI frameworks, using SOAP. This allows a client bundle, as the Swing desktop, to remotely control another framework.

The bundle is part of the The Knopflerfish Axis 1 package.

Description

Complete implementation of a "remote" OSGi framework, using SOAP. For usage instructions see http://knopflerfish.org/remote_howto.html, but replace references to ksoap-osgi with axis-osgi and ksoap_remotefw with soap_remotefw.

Server - Exporting a framework

The soap_remotefw bundle can export the entire OSGi framework as a SOAP service, by registering an instance of org.knopflerfish.service.soap.remotefw.RemoteFW into the framework, with the property SOAP.service.name = OSGiFramework

This will make the axis-osgi bundle pick up the service and export all methods. A SOAP client on another host can then access the server framework.

Typically, this "raw" SOAP service will be available on

 http://host:port/axis/service/OSGiFramework
and can be viewed directly with the soap_desktop browser.

The default behavior of soap_remotefw is to register a RemoteFW instance.

Client - Importing a framework

The soap_remotefw bundle can also run as a client and import a remote framework. In that case, a service of class

  org.knopflerfish.service.remotefw.RemoteFramework
will be registered into the framework. Another bundle can then get this RemoteFramework service and call its "connect" method. This methods will return a BundleContext representing the remote framework. See javadocs for RemoteFramework for details.

The default behavior of soap_remotefw is to register a RemoteFramework instance.

The Swing desktop is capable of using the RemoteFramework service. If the soap_remotefw is active, the desktop will display a connection dialog allowing the user to connect to a named remote framework.

Controlling the soap_remotefw behavior

The behavior of the soap_remotefw bundle can be controlled by the following system properties:
org.knopflerfish.soap.remotefw.server (default "true")
If set to "true", export a SOAP service allowing remote management of the entire platform.
If not set to "true", do not export any SOAP service
org.knopflerfish.soap.remotefw.client (default "true")
If set to "true", register an implementation of org.knopflerfish.service.remotefw.RemoteFramework allowing other bundles to remote manage a framework. This service can be used by the desktop bundle.
If not set to "true", do not register any RemoteFramework service
org.knopflerfish.soap.remotefw.client.eventinterval (default 3000)
Interval in milliseconds between event notification. The remote bundle context's event notification works by polling the server at regular intervals. This property specifies the interval.

See Also

SOAP - WebServices

Jar docs

soap_remotefw_all-2.0.0

Exported Packages

org.knopflerfish.service.soap.remotefw