Return-Path: X-Original-To: apmail-cxf-commits-archive@www.apache.org Delivered-To: apmail-cxf-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 31B73DDEB for ; Sun, 4 Nov 2012 15:48:24 +0000 (UTC) Received: (qmail 33576 invoked by uid 500); 4 Nov 2012 15:48:23 -0000 Delivered-To: apmail-cxf-commits-archive@cxf.apache.org Received: (qmail 33527 invoked by uid 500); 4 Nov 2012 15:48:23 -0000 Mailing-List: contact commits-help@cxf.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cxf.apache.org Delivered-To: mailing list commits@cxf.apache.org Received: (qmail 33511 invoked by uid 99); 4 Nov 2012 15:48:23 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 04 Nov 2012 15:48:23 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 04 Nov 2012 15:48:20 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id B17B7238890D for ; Sun, 4 Nov 2012 15:47:58 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r837236 - in /websites/production/cxf/content: cache/main.pageCache distributed-osgi.html Date: Sun, 04 Nov 2012 15:47:58 -0000 To: commits@cxf.apache.org From: buildbot@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20121104154758.B17B7238890D@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: buildbot Date: Sun Nov 4 15:47:58 2012 New Revision: 837236 Log: Production update by buildbot for cxf Modified: websites/production/cxf/content/cache/main.pageCache websites/production/cxf/content/distributed-osgi.html Modified: websites/production/cxf/content/cache/main.pageCache ============================================================================== Binary files - no diff available. Modified: websites/production/cxf/content/distributed-osgi.html ============================================================================== --- websites/production/cxf/content/distributed-osgi.html (original) +++ websites/production/cxf/content/distributed-osgi.html Sun Nov 4 15:47:58 2012 @@ -137,90 +137,21 @@ Apache CXF -- Distributed OSGi

The Apache CXF Distributed OSGi subproject provides the Reference Implementation of the Distribution Provider component of the OSGi Remote Services Specification (Chapter 13 in the OSGi 4.2 Compendium Specification).
-It implements the Remote Services functionality using Web Services, leveraging SOAP over HTTP and exposing the Service over a WSDL contract. Starting from version 1.1, Java interfaces can also be exposed and consumed as RESTful JAX-RS services.

- -

The 1.2 version of this project is also the Reference Implementation of the OSGi Remote Service Admin specification, chapter 122 in the OSGi 4.2 Enterprise Specification).

+It implements the Remote Services functionality using Web Services, leveraging SOAP over HTTP and exposing the Service over a WSDL contract. Starting from version 1.1, Java interfaces can also be exposed and consumed as RESTful JAX-RS services. The 1.2 version of this project is also the Reference Implementation of the OSGi Remote Service Admin specification, chapter 122 in the OSGi 4.2 Enterprise Specification).

This page is about getting started and the demos, further links:

- +

Getting Started

To get started, get yourself a CXF-DOSGi distribution. The following distributions are available:

-
  • Multi Bundle Distribution: This distribution is a zip file containing the Distributed OSGi bundles, as well as all their dependencies.
  • Single Bundle Distribution: This is a convenience distribution of a single bundle that embeds all the dependencies.
+
  • [Apache Karaf Feature] : Allows installation in Apache Karaf using the feature commands (Available as of CXF-DOSGi 1.4.0)
  • [Multi Bundle Distribution]: Zip file containing the Distributed OSGi bundles, as well as all their dependencies
  • [Single Bundle Distribution]: Convenience distribution of a single bundle that embeds all the dependencies

Which distribution to take? That depends on what you are doing. The single-bundle distribution is a really convenient way of getting started as it provides all of Distributed OSGi plus its dependencies in one.
The multi-bundle distribution is obviously a little more work to install, but the fine-grained bundles do have an extra benefit: they allow sharing. So if your application depends on one or more of the library bundles, it can use them from the multi-bundle distribution. Similarly, the multi-bundle distribution makes it possible to update the dependency bundles - if compatible - without having to replace the Distributed OSGi bundles.

-

Get a distribution by:

-
  • Downloading a built distribution. See the DOSGi Releases page.
  • Alternatively, built the distribution yourself. See the DOSGi Build page.
- - -

Setting up your OSGi container

-

Setting up the single-bundle distribution is really simple, see below. For instructions on setting up the multi-bundle distribution see the Multi Bundle Setup page.

- -

Prerequisites for the single-bundle distribution:

- -

The single-bundle distribution requires some of the interfaces of the OSGi compendium specification. These are provided with the Equinox and Felix OSGi distributions, but not installed by default.

- -

Setting up Felix

- -

The compendium interfaces can be downloaded from the following various places, the easiest is probably from Maven Central, for example:
-"g! install http://repo1.maven.org/maven2/org/osgi/org.osgi.compendium/4.2.0/org.osgi.compendium-4.2.0.jar".
-(Note: this step is not required for DOSGI RI 1.3)

- - -

To set up Felix you can follow these steps:
-Verified with: Felix 4.0.2 and DOSGI RI 1.3

-
-
../felix-4.0.2> java -jar bin/felix.jar
-
-Welcome to Apache Felix Gogo
-g! start http://www.apache.org/dist/cxf/dosgi/1.3/cxf-dosgi-ri-singlebundle-distribution-1.3.jar
-... some log messages may appear...
-g! lb
-    0|Active     |    0|org.apache.felix.framework (4.0.2)
-    1|Active     |    1|org.apache.felix.bundlerepository (1.6.6)
-    2|Active     |    1|org.apache.felix.gogo.command (0.12.0)
-    3|Active     |    1|org.apache.felix.gogo.runtime (0.10.0)
-    4|Active     |    1|org.apache.felix.gogo.shell (0.10.0)
-    5|Active     |    1|cxf-dosgi-ri-singlebundle-distribution (1.3.0)
-
- -

However, you can also change the conf/config.properties file to automatically load these bundles. This approach is described in the Multi Bundle Setup page.

- -

Setting up Equinox

-

The compendium interfaces are part of the Equinox/Eclipse distribution and can be found in a file called plugins/org.eclipse.osgi.services_3.2.0.v20090520-1800.jar (the timestamp could vary), for example:
-"osgi> install file:plugins/org.eclipse.osgi.services_3.2.100.v20100503.jar"
-(Note: this step is not required for DOSGI RI 1.3)

- -

To set up Equinox you can follow these steps:
-Verified with: Eclipse 3.6.2

-
-
.../eclipse> java -jar plugins/org.eclipse.osgi_3.6.2.R36x_v20110210.jar -console
-
-osgi> install http://www.apache.org/dist/cxf/dosgi/1.3/cxf-dosgi-ri-singlebundle-distribution-1.3.jar
-Bundle id is 1
-
-osgi> start 1
-... some log messages may appear...
-osgi> ss
-
-Framework is launched.
-
-id      State       Bundle
-0       ACTIVE      org.eclipse.osgi_3.6.2.R36x_v20110210
-1       ACTIVE      cxf-dosgi-ri-singlebundle-distribution_1.3.0
-
- -

However, you can also create a config.ini file to automatically load these bundles. This approach is described in the Multi Bundle Setup page.

- -

Using Equinox from within the Eclipse IDE

-

This option is really handy for debugging. Verified with: Eclipse 3.5M4
-Setting up Eclipse for Running and Debugging Distributed OSGi

-

Setting up CXF/DOSGi Discovery

See the DOSGi Discovery page and the DOSGi Discovery Demo page.