cxf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From conflue...@apache.org
Subject [CONF] Apache CXF > DOSGi Multi Bundle Distribution
Date Sun, 04 Nov 2012 16:00:00 GMT
<html>
<head>
    <base href="https://cwiki.apache.org/confluence">
            <link rel="stylesheet" href="/confluence/s/2042/9/15/_/styles/combined.css?spaceKey=CXF&amp;forWysiwyg=true"
type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://cwiki.apache.org/confluence/display/CXF/DOSGi+Multi+Bundle+Distribution">DOSGi
Multi Bundle Distribution</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://cwiki.apache.org/confluence/display/~christian%2Bschneider">Christian
Schneider</a>
    </h4>
        <br/>
                         <h4>Changes (0)</h4>
                                 
    
<div id="page-diffs">
                    <table class="diff" cellpadding="0" cellspacing="0">
    
            <tr><td class="diff-snipped" >...<br></td></tr>
    
            </table>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <h1><a name="DOSGiMultiBundleDistribution-SettinguptheMultiBundleDistributionofCXFDistributedOSGi"></a>Setting
up the Multi Bundle Distribution of CXF Distributed OSGi</h1>
<p>The multi-bundle distribution of CXF/DOSGi contains all the DOSGi bundles plus their
dependencies as individual bundles. While the single-bundle distribution is certainly easier
to get started with, the multi-bundle distro is more flexible wrt to sharing bundles and updating
dependencies. To obtain a multi bundle distribution see the <a href="/confluence/display/CXF/DOSGi+Releases"
title="DOSGi Releases">DOSGi Releases</a> page.</p>

<h2><a name="DOSGiMultiBundleDistribution-SettingupFelix"></a>Setting up
Felix</h2>
<p><em>Verified with: Felix 4.0.2</em></p>

<p>In the distribution you will find a file called: <tt>.../conf/felix.config.properties.append</tt>.
This file contains auto-start instructions for every bundle in the distribution.</p>
<ol>
	<li>Simply copy the content of the whole file and append it to the <tt>conf/config.properties</tt>
file of the Felix distribution.</li>
	<li>Fix the <tt><a href="file:apache-cxf-dosgi-ri" class="external-link" rel="nofollow">file:apache-cxf-dosgi-ri</a></tt>
URLs in the file to point to where you have unzipped the distribution.</li>
</ol>


<p>At the end the <tt>conf/config.properties</tt> file looks like this:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">... existing lines ...
org.ops4j.pax.web.session.timeout=30
org.osgi.framework.startlevel.beginning=95
    
felix.auto.start.51=file:<span class="code-comment">///c:/apache-cxf-dosgi-ri-1.3/dosgi_bundles/geronimo-annotation_1.0_spec-1.1.1.jar
</span>felix.auto.start.52=file:<span class="code-comment">///c:/apache-cxf-dosgi-ri-1.3/dosgi_bundles/geronimo-activation_1.1_spec-1.1.0.jar
</span>... and so on ...

You may need to update the 'org.osgi.framework.system.packages.extra' to reference the org.w3c.dom.traversal
<span class="code-keyword">package</span>.
Also a felix.startlevel.bundle may need to be uncommented and set to 95; that may be needed
to make sure the custom bundles importing annotations will always be started after the spec
bundles have been loaded.
</pre>
</div></div>
<p>Now start Felix:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">.../felix-4.0.2&gt; java -jar bin/felix.jar

Welcome to Felix.
=================
... some log messages may appear ...
-&gt; bundles
    ID   State         Level  Name
    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     |   85|org.apache.servicemix.specs.stax-api-1.0 (1.9.0)
    6|Active     |   53|org.apache.geronimo.specs.geronimo-javamail_1.4_spec (1.2.0)
    7|Active     |   84|org.apache.servicemix.specs.saaj-api-1.3 (1.9.0)
    8|Active     |   52|org.apache.geronimo.specs.geronimo-activation_1.1_spec (1.1.0)
    9|Active     |   83|org.apache.servicemix.bundles.commons-pool (1.5.4.1)
   10|Active     |   51|org.apache.geronimo.specs.geronimo-annotation_1.0_spec (1.1.1)
   11|Active     |   82|woodstox-core-asl (4.1.1)
   12|Active     |   81|stax2-api (3.1.1)
   13|Active     |   80|org.apache.neethi (3.0.1)
   14|Active     |   79|org.apache.servicemix.bundles.xmlresolver (1.2.0.4)
   15|Active     |   78|org.apache.servicemix.bundles.asm (3.3.0.2)
   16|Active     |   77|org.apache.ws.xmlschema.core (2.0.1)
   17|Active     |   76|org.apache.servicemix.bundles.xmlsec (1.4.5.1)
   18|Active     |   75|org.apache.servicemix.bundles.wsdl4j (1.6.2.5)
   19|Active     |   74|org.apache.servicemix.bundles.jaxb-impl (2.1.13.2)
   20|Active     |   73|org.ops4j.pax.web.pax-web-jetty (1.0.3)
   21|Active     |   72|org.ops4j.pax.web.pax-web-runtime (1.0.3)
   22|Active     |   71|org.ops4j.pax.web.pax-web-spi (1.0.3)
   23|Active     |   70|org.eclipse.jetty.aggregate.jetty-all-server (7.4.2.v20110526)
   24|Active     |   69|org.springframework.osgi.extender (1.2.1)
   25|Active     |   68|org.springframework.osgi.core (1.2.1)
   26|Active     |   67|org.springframework.osgi.io (1.2.1)
   27|Active     |   66|org.springframework.expression (3.0.6.RELEASE)
   28|Active     |   65|org.springframework.asm (3.0.6.RELEASE)
   29|Active     |   64|org.springframework.aop (3.0.6.RELEASE)
   30|Active     |   95|cxf-dosgi-ri-topology-manager (1.3.0.SNAPSHOT)
   31|Resolved   |   63|com.springsource.slf4j.jcl (1.5.10)
   32|Active     |   94|cxf-dosgi-ri-dsw-cxf (1.3.0.SNAPSHOT)
   33|Active     |   62|com.springsource.slf4j.api (1.5.10)
   34|Active     |   93|osgi.enterprise (4.2.0.201003190513)
   35|Active     |   61|com.springsource.org.aopalliance (1.0.0)
   36|Active     |   92|cxf-dosgi-ri-discovery-local (1.3.0.SNAPSHOT)
   37|Active     |   60|org.springframework.context (3.0.6.RELEASE)
   38|Active     |   91|org.apache.cxf.bundle-minimal (2.5.2)
   39|Active     |   90|org.apache.servicemix.bundles.opensaml (2.4.1.1)
   40|Active     |   59|org.springframework.beans (3.0.6.RELEASE)
   41|Active     |   58|org.springframework.core (3.0.6.RELEASE)
   42|Active     |   89|org.apache.servicemix.bundles.joda-time (1.5.2.4)
   43|Active     |   57|com.springsource.org.jdom (1.1.0)
   44|Active     |   88|org.apache.servicemix.specs.jsr311-api-1.1.1 (1.9.0)
   45|Active     |   56|com.springsource.org.apache.commons.logging (1.1.1)
   46|Active     |   87|org.apache.servicemix.specs.jaxws-api-2.1 (1.9.0)
   47|Active     |   55|org.apache.geronimo.specs.geronimo-ws-metadata_2.0_spec (1.1.3)
   48|Active     |   86|org.apache.servicemix.specs.jaxb-api-2.1 (1.9.0)
   49|Active     |   54|org.apache.geronimo.specs.geronimo-servlet_3.0_spec (1.0.0)

</pre>
</div></div>

<h2><a name="DOSGiMultiBundleDistribution-SettingupEquinox"></a>Setting
up Equinox</h2>
<p><em>Verified with: Eclipse/Equinox 3.6.2</em></p>

<p>In the distribution you will find a file called: <tt>.../conf/equinox.config.ini.append</tt>.
This file contains auto-start instructions for every bundle in the distribution.</p>
<ol>
	<li>Create a directory in the Equinox installation, e.g. <tt>dosgi_conf</tt>
and create a file called <tt>config.ini</tt> in this directory with the content
of the <tt>equinox.config.ini.append</tt> file.</li>
	<li>Fix the <tt>../apache-cxf-dosgi-ri</tt> path locations in the file
to point to where you have unzipped the distribution.</li>
</ol>


<p>At the end the <tt>dosgi_conf/config.ini</tt> file looks like this:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">org.ops4j.pax.web.session.timeout=30
osgi.bundles=org.eclipse.osgi.services@start, \
c:/apache-cxf-dosgi-ri-1.3/dosgi_bundles/geronimo-annotation_1.0_spec-1.1.1.jar@start, c:/apache-cxf-dosgi-ri-1.3/dosgi_bundles/geronimo-activation_1.1_spec-1.0.2.jar@start,

... and so on ...</pre>
</div></div>
<p>Now start Equinox:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
<pre class="code-java">.../eclipse&gt; java -jar plugins/org.eclipse.osgi_3.6.2.R36x_v20110210.jar
-console -configuration dosgi_conf
... some log messages may appear ...
osgi&gt; ss

Framework is launched.

id      State       Bundle
0	ACTIVE      org.eclipse.osgi_3.6.2.R36x_v20110210
1	ACTIVE      org.apache.geronimo.specs.geronimo-annotation_1.0_spec_1.1.1
2	ACTIVE      org.apache.geronimo.specs.geronimo-activation_1.1_spec_1.1.0
3	ACTIVE      org.apache.geronimo.specs.geronimo-javamail_1.4_spec_1.2.0
4	ACTIVE      org.apache.geronimo.specs.geronimo-servlet_3.0_spec_1.0.0
5	ACTIVE      org.apache.geronimo.specs.geronimo-ws-metadata_2.0_spec_1.1.3
6	ACTIVE      com.springsource.org.apache.commons.logging_1.1.1
7	ACTIVE      com.springsource.org.jdom_1.1.0
8	ACTIVE      org.springframework.core_3.0.6.RELEASE
9	ACTIVE      org.springframework.beans_3.0.6.RELEASE
10	ACTIVE      org.springframework.context_3.0.6.RELEASE
12	ACTIVE      com.springsource.org.aopalliance_1.0.0
13	ACTIVE      com.springsource.slf4j.api_1.5.10
	            Fragments=14
14	RESOLVED    com.springsource.slf4j.jcl_1.5.10
	            Master=13
15	ACTIVE      org.springframework.aop_3.0.6.RELEASE
16	ACTIVE      org.springframework.asm_3.0.6.RELEASE
17	ACTIVE      org.springframework.expression_3.0.6.RELEASE
18	ACTIVE      org.springframework.osgi.io_1.2.1
19	ACTIVE      org.springframework.osgi.core_1.2.1
20	ACTIVE      org.springframework.osgi.extender_1.2.1
21	ACTIVE      org.eclipse.jetty.aggregate.jetty-all-server_7.4.2.v20110526
22	ACTIVE      org.ops4j.pax.web.pax-web-spi_1.0.8
23	ACTIVE      org.ops4j.pax.web.pax-web-runtime_1.0.8
24	ACTIVE      org.ops4j.pax.web.pax-web-jetty_1.0.8
25	ACTIVE      org.apache.servicemix.bundles.jaxb-impl_2.1.13.2
26	ACTIVE      org.apache.servicemix.bundles.wsdl4j_1.6.2.5
27	ACTIVE      org.apache.servicemix.bundles.xmlsec_1.4.5.1
28	ACTIVE      org.apache.ws.xmlschema.core_2.0.1
29	ACTIVE      org.apache.servicemix.bundles.asm_3.3.0.2
30	ACTIVE      org.apache.servicemix.bundles.xmlresolver_1.2.0.4
31	ACTIVE      org.apache.neethi_3.0.1
32	ACTIVE      stax2-api_3.1.1
33	ACTIVE      woodstox-core-asl_4.1.1
34	ACTIVE      org.apache.servicemix.bundles.commons-pool_1.5.4.1
35	ACTIVE      org.apache.servicemix.specs.saaj-api-1.3_1.9.0
36	ACTIVE      org.apache.servicemix.specs.stax-api-1.0_1.9.0
37	ACTIVE      org.apache.servicemix.specs.jaxb-api-2.1_1.9.0
38	ACTIVE      org.apache.servicemix.specs.jaxws-api-2.1_1.9.0
39	ACTIVE      org.apache.servicemix.specs.jsr311-api-1.1.1_1.9.0
40	ACTIVE      org.apache.servicemix.bundles.joda-time_1.5.2.4
41	ACTIVE      org.apache.servicemix.bundles.opensaml_2.4.1.1
42	ACTIVE      org.apache.cxf.bundle-minimal_2.5.0
43	ACTIVE      cxf-dosgi-ri-discovery-local_1.3.0.SNAPSHOT
44	ACTIVE      osgi.enterprise_4.2.0.201003190513
45	ACTIVE      cxf-dosgi-ri-dsw-cxf_1.3.0.SNAPSHOT
46	ACTIVE      cxf-dosgi-ri-topology-manager_1.3.0.SNAPSHOT
</pre>
</div></div>
    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;">
            <a href="https://cwiki.apache.org/confluence/users/viewnotifications.action"
class="grey">Change Notification Preferences</a>
        </div>
        <a href="https://cwiki.apache.org/confluence/display/CXF/DOSGi+Multi+Bundle+Distribution">View
Online</a>
        |
        <a href="https://cwiki.apache.org/confluence/pages/diffpagesbyversion.action?pageId=119315&revisedVersion=14&originalVersion=13">View
Changes</a>
                |
        <a href="https://cwiki.apache.org/confluence/display/CXF/DOSGi+Multi+Bundle+Distribution?showComments=true&amp;showCommentArea=true#addcomment">Add
Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>

Mime
View raw message