blob: 6e36ae19d369b9c7533ffb9e3abc7ab50cbacbd2 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd";>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<html>
<head>
<link rel="shortcut icon" href="http://aries.apache.org/images/favicon.ico"></link>
<link type="text/css" rel="stylesheet" href="http://aries.apache.org/resources/site.css"></link>
</script><script src="http://aries.apache.org/resources/menus.js" language="javascript" type="text/javascript"></script>
<meta name="keywords" content="..."/>
<meta name="description" content="..." />
<title>
Apache Aries - ComplianceTesting
</title>
</head>
<body onload="SetMenu()">
<table width="100%" cellpadding="0" cellspacing="0">
<tr width="100%">
<td id="cell-0-0" colspan="2">&nbsp;</td>
<td id="cell-0-1">&nbsp;</td>
<td id="cell-0-2" colspan="2">&nbsp;</td>
</tr>
<tr width="100%">
<td id="cell-1-0">&nbsp;</td>
<td id="cell-1-1">&nbsp;</td>
<td id="cell-1-2">
<div style="padding: 5px;">
<div id="banner">
<!-- Banner -->
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td align="left" class="topbardiv" nowrap="">
<a href="http://aries.apache.org/" title="Apache Aries"> <img border="0" src="http://aries.apache.org/images/Arieslogo_Horizontal.gif"> </a>
</td>
<td align="right" nowrap="">
<a href="http://www.apache.org/" title="The Apache Software Foundation"> <img border="0" src="http://aries.apache.org/images/apache_feather.png"> </a>
</td>
</tr>
</table>
<!-- Banner -->
</div>
</div>
<div id="top-menu">
<table border="0" cellpadding="1" cellspacing="0" width="100%">
<tr>
<td>
<div align="left">
<!-- Breadcrumbs -->
<!-- Breadcrumbs -->
</div>
</td>
<td>
<div align="right">
<!-- Quicklinks -->
<DIV style="padding: 5px 5px 0px 25px;">
<FORM action="http://www.google.com/search" method="get" style="font-size: 10px;">
<A href="http://www.apache.org/licenses/LICENSE-2.0.html" class="external-link" rel="nofollow">License</A>
<INPUT name="ie" type="hidden" value="UTF-8"></INPUT>
<INPUT name="oe" type="hidden" value="UTF-8"></INPUT>
<INPUT maxlength="255" name="q" size="15" type="text" value></INPUT>
<INPUT name="btnG" type="submit" value="Search"></INPUT>
<INPUT name="domains" type="hidden" value="aries.apache.org"></INPUT>
<INPUT name="sitesearch" type="hidden" value="aries.apache.org"></INPUT>
</FORM>
</DIV>
<!-- Quicklinks -->
</div>
</td>
</tr>
</table>
</div>
</td>
<td id="cell-1-3">&nbsp;</td>
<td id="cell-1-4">&nbsp;</td>
</tr>
<tr width="100%">
<td id="cell-2-0" colspan="2">&nbsp;</td>
<td id="cell-2-1">
<table>
<tr height="100%" valign="top">
<td height="100%">
<div id="wrapper-menu-page-right">
<div id="wrapper-menu-page-top">
<div id="wrapper-menu-page-bottom">
<div id="menu-page">
<!-- NavigationBar -->
<style type="text/css">
/* The following code is added by mdx_elementid.py
It was originally lifted from http://subversion.apache.org/style/site.css */
/*
* Hide class="elementid-permalink", except when an enclosing heading
* has the :hover property.
*/
.headerlink, .elementid-permalink {
visibility: hidden;
}
h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
<div onclick="SwitchMenu('documentation')" id="documentationTitle" class="menutitle">Documentation</div>
<div id="documentation" class="menuitemgroup">
<div class="menuitem">
<a href="/documentation/integrators-guide.html">Integrators Guide</a>
</div>
<div class="menuitem">
<a href="/documentation/articles.html">Articles</a>
</div>
<div class="menuitem">
<a href="https://svn.apache.org/repos/asf/aries/slides/">Slides</a>
</div>
<div class="menuitem">
<a href="/documentation/tutorials.html">Tutorials</a>
</div>
<div class="menuitem">
<a href="/documentation/tools.html">Tools</a>
</div>
</div>
<div onclick="SwitchMenu('modules')" id="modulesTitle" class="menutitle">Modules</div>
<div id="modules" class="menuitemgroup">
<div class="menuitem">
<a href="/modules/samples.html">Samples</a>
</div>
<div class="menuitem">
<a href="/modules/async-svcs.html">Asynchronous Services</a>
</div>
<div class="menuitem">
<a href="/modules/blueprint.html">Blueprint</a>
</div>
<div class="menuitem">
<a href="/modules/blueprint-maven-plugin.html">Blueprint-maven-plugin</a>
</div>
<div class="menuitem">
<a href="/modules/blueprintannotation.html">Blueprint Annotations</a>
</div>
<div class="menuitem">
<a href="/modules/blueprintnoosgi.html">Blueprint No-OSGi</a>
</div>
<div class="menuitem">
<a href="/modules/blueprintweb.html">Blueprint Web</a>
</div>
<div class="menuitem">
<a href="/modules/esaanttask.html">ESA Ant Task </a>
</div>
<div class="menuitem">
<a href="/modules/ebamavenpluginproject.html">EBA Maven Plugin </a>
</div>
<div class="menuitem">
<a href="/modules/esamavenpluginproject.html">ESA Maven Plugin </a>
</div>
<div class="menuitem">
<a href="/modules/jmx.html">JMX</a>
</div>
<div class="menuitem">
<a href="/modules/jndiproject.html">JNDI</a>
</div>
<div class="menuitem">
<a href="/modules/jpaproject.html">JPA</a>
</div>
<div class="menuitem">
<a href="/modules/transactionsproject.html">Transactions</a>
</div>
<div class="menuitem">
<a href="/modules/spi-fly.html">SPI Fly</a>
</div>
<div class="menuitem">
<a href="/modules/subsystems.html">Subsystems</a>
</div>
<div class="menuitem">
<a href="/modules/applications.html">Applications (obsolete)</a>
</div>
</div>
<div onclick="SwitchMenu('downloads')" id="downloadsTitle" class="menutitle">Downloads</div>
<div id="downloads" class="menuitemgroup">
<div class="menuitem">
<a href="/downloads/currentreleases.html">Current Releases</a>
</div>
<div class="menuitem">
<a href="/downloads/testresults.html">Compliance Tests</a>
</div>
<div class="menuitem">
<a href="/downloads/archived-releases.html">Archived Releases</a>
</div>
</div>
<div onclick="SwitchMenu('community')" id="communityTitle" class="menutitle">Community</div>
<div id="community" class="menuitemgroup">
<div class="menuitem">
<a href="/community/resources.html">Community Resources</a>
</div>
<div class="menuitem">
<a href="/community/gettinginvolved.html">Getting Involved</a>
</div>
<div class="menuitem">
<a href="/community/people.html">Who we are</a>
</div>
<div class="menuitem">
<a href="/community/boardreports.html">Board Reports</a>
</div>
<div class="menuitem">
<a href="/community/logos.html">Logos for Users</a>
</div>
</div>
<div onclick="SwitchMenu('development')" id="developmentTitle" class="menutitle">Development</div>
<div id="development" class="menuitemgroup">
<div class="menuitem">
<a href="/development/buildingaries.html">Building Aries </a>
</div>
<div class="menuitem">
<a href="/development/guidelines.html">Cording Guidelines</a>
</div>
<div class="menuitem">
<a href="/development/architecture.html">Architecture</a>
</div>
<div class="menuitem">
<a href="/development/releasingaries.html">Releasing Aries </a>
</div>
<div class="menuitem">
<a href="/development/compliancetesting.html">OSGi Compliance Tests </a>
</div>
<div class="menuitem">
<a href="/development/maintainingthewebpages.html">Web Site Maintenance </a>
</div>
</div>
<div onclick="SwitchMenu('sponsorship')" id="sponsorshipTitle" class="menutitle">Sponsorship</div>
<div id="sponsorship" class="menuitemgroup">
<div class="menuitem">
<a href="http://www.apache.org/foundation/thanks.html">Thanks</a>
</div>
<div class="menuitem">
<a href="http://www.apache.org/foundation/sponsorship.html">Sponsoring Apache</a>
</div>
</div>
<!-- NavigationBar -->
</div>
</div>
</div>
</div>
</td>
<td height="100%" width="100%">
<!-- Content -->
<div class="wiki-content"><style type="text/css">
/* The following code is added by mdx_elementid.py
It was originally lifted from http://subversion.apache.org/style/site.css */
/*
* Hide class="elementid-permalink", except when an enclosing heading
* has the :hover property.
*/
.headerlink, .elementid-permalink {
visibility: hidden;
}
h2:hover > .headerlink, h3:hover > .headerlink, h1:hover > .headerlink, h6:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, dt:hover > .elementid-permalink { visibility: visible }</style>
<p><a name="ComplianceTesting-Runningthetests"></a></p>
<h2 id="enterprise-osgi-compliance-tests">Enterprise OSGi Compliance Tests<a class="headerlink" href="#enterprise-osgi-compliance-tests" title="Permanent link">&para;</a></h2>
<p>The Enterprise OSGi compliance tests are provided byt the <a href="http://www.osgi.org">OSGi Alliance</a>
to Apache committers who have signed the appropriate Non Disclosure
Agreement.</p>
<p>The tests are supplied with the BND configuration files used to run the
tests against the OSGi implementation of the Enterprise Specification. The
configuration files require some modification to run the tests against
Aries components.</p>
<p>Instructions for obtaining and running the tests are given <a href="http://felix.apache.org/site/using-the-osgi-compliance-tests.html">here</a>, or see below.</p>
<p><a name="ComplianceTesting-Testresults"></a></p>
<h2 id="test-results">Test results<a class="headerlink" href="#test-results" title="Permanent link">&para;</a></h2>
<p>At each Aries release the tests are run against Aries components. The
results for the most recent release can be found <a href="/downloads/testresults.html">here</a>
.
<a name="ComplianceTesting-Runningthetests"></a></p>
<h2 id="how-to-run-the-tests-for-aries-components">How to run the tests for Aries components<a class="headerlink" href="#how-to-run-the-tests-for-aries-components" title="Permanent link">&para;</a></h2>
<p><a name="HowtoruntheOSGiEnterpriseCT-Legalstuff"></a></p>
<h3 id="legal-stuff">Legal stuff<a class="headerlink" href="#legal-stuff" title="Permanent link">&para;</a></h3>
<p>Complete an Apache <a href="http://apache.org/jcp/ApacheNDA.pdf">Non Disclosure Agreement</a>
and email it to secretary@apache.org</p>
<p>Write a note to jcp-open@apache.org with the subject "OSGi CT access" which
contains (something like) the following text:</p>
<p>"I'm a committer on the Apache Aries project and would like access to
the OSGi CT. I've submitted an NDA."</p>
<p>Note: You should subscribe to jcp-open@apache.org first. If you don't your
note will languish in 'moderation' forever :-)</p>
<p><a name="HowtoruntheOSGiEnterpriseCT-Getthetests"></a></p>
<h3 id="get-the-tests">Get the tests<a class="headerlink" href="#get-the-tests" title="Permanent link">&para;</a></h3>
<p>Anyone with an NDA on file should be able to get access to the tests <a href="https://svn.apache.org/repos/tck/osgi-cts/">here </a>
.</p>
<p>The group of tests that are required for Aries is called
osgi.enterprise.tests. Download the jar for the appropriate level -
currently 4.2.0.</p>
<p><a name="HowtoruntheOSGiEnterpriseCT-Runningthetests"></a></p>
<h3 id="running-the-tests">Running the tests<a class="headerlink" href="#running-the-tests" title="Permanent link">&para;</a></h3>
<p>Extract the jar into a test directory, say ~/AriesTests. After you have
extracted the file you will find:</p>
<ul>
<li>A subdirectory call 'jar' which contains all the tests</li>
<li>A set of *.bnd files which are used to run the tests</li>
</ul>
<p>The tests are run using bnd, the command line used to run a set of tests
looks like this:</p>
<div class="codehilite"><pre><span class="n">java</span> <span class="o">-</span><span class="n">jar</span> <span class="n">jar</span><span class="o">/</span><span class="n">bnd</span><span class="p">.</span><span class="n">jar</span> <span class="n">runtests</span> <span class="o">-</span><span class="n">title</span> <span class="n">osgi</span><span class="p">.</span><span class="n">ct</span>
<span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">test</span><span class="p">.</span><span class="n">cases</span><span class="p">.</span><span class="n">blueprint</span><span class="p">.</span><span class="n">bnd</span>
</pre></div>
<p>The command above would, for example, run the blueprint tests.</p>
<p>Before running the tests it will be necessary to make some changes to the
bnd files, to download some additional pre-reqs and to assemble the aries
components to be tested. The <a href="http://felix.apache.org/site/using-the-osgi-compliance-tests.html">Felix</a>
pages give a good indication of what is necessary.</p>
<p><a name="HowtoruntheOSGiEnterpriseCT-Debuggingthetests"></a></p>
<h3 id="debugging-the-tests">Debugging the tests<a class="headerlink" href="#debugging-the-tests" title="Permanent link">&para;</a></h3>
<p>If you want to debug the code then you need to add the following line to
the .bnd file:</p>
<div class="codehilite"><pre><span class="o">-</span><span class="n">runvm</span><span class="p">=</span><span class="o">-</span><span class="n">Xdebug</span><span class="p">,</span>&quot;<span class="o">-</span><span class="n">Xrunjdwp</span><span class="p">:</span><span class="n">transport</span><span class="p">=</span><span class="n">dt_socket</span><span class="p">,</span><span class="n">server</span><span class="p">=</span><span class="n">y</span><span class="p">,</span><span class="n">address</span><span class="p">=</span><span class="n">localhost</span><span class="p">:</span>7777&quot;
</pre></div>
<p>You can change 7777 to any number you want.</p>
<p><a name="HowtoruntheOSGiEnterpriseCT-Modifyingthebndfiles"></a></p>
<h3 id="modifying-the-bnd-files">Modifying the bnd files<a class="headerlink" href="#modifying-the-bnd-files" title="Permanent link">&para;</a></h3>
<p><a name="HowtoruntheOSGiEnterpriseCT-General"></a></p>
<h4 id="general">General<a class="headerlink" href="#general" title="Permanent link">&para;</a></h4>
<p>First, it is necessary to add a couple of lines, like this:</p>
<div class="codehilite"><pre><span class="o">-</span><span class="n">runpath</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">osgi</span><span class="o">-</span>3<span class="p">.</span>5<span class="p">.</span>0<span class="p">.</span><span class="n">v20090520</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">com</span><span class="p">.</span><span class="n">springsource</span><span class="p">.</span><span class="n">junit</span><span class="o">-</span>3<span class="p">.</span>8<span class="p">.</span>2<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">;</span><span class="n">export</span><span class="p">=</span>&quot;<span class="n">junit</span><span class="p">.</span><span class="n">framework</span><span class="p">;</span><span class="n">version</span><span class="p">=</span>3<span class="p">.</span>8&quot;<span class="p">,</span>
</pre></div>
<p>Secondly, if you are using the Eclipse Framework, it is necessary to remove
the line</p>
<div class="codehilite"><pre><span class="n">osgi</span><span class="p">.</span><span class="n">resolverMode</span><span class="p">=</span>&quot;<span class="n">strict</span>&quot;<span class="p">,</span> <span class="o">\</span>
</pre></div>
<p>from the 'runproperties' section.</p>
<p>It's convenient (but not necessary) to keep the the jars required to run
the test jars and the code being tested in separate subdirectories. Create:</p>
<ul>
<li>commonjars - any common dependencies, eg pax-logging</li>
<li>ariesjars - the aries code to be tested</li>
</ul>
<p>The easiest way to find most of the aries jars and their dependencies is to
copy every aries jar in the ~/samples/blog/blog-assembly/target folder into
ariesjars and every non-aries jar from the same directory into
'commonjars'. </p>
<p>The <em>.bnd files that are used to run the tests assume that the person
running the tests has access to org.osgi.impl</em> jars. In general this is not
the case - so wherever an org.osgi.impl* jar has been used it must be
replaced with an equivalent implementation. Such implementations can
usually be found in either <a href="http://felix.apache.org/site/downloads.cgi">Felix</a>, <a href="http://download.eclipse.org/equinox/">Equinox</a>
or <a href="http://www.knopflerfish.org/releases/3.0.0/osgi/jars/">Knopflerfish</a>.</p>
<p><a name="HowtoruntheOSGiEnterpriseCT-Blueprint"></a></p>
<h4 id="blueprint">Blueprint<a class="headerlink" href="#blueprint" title="Permanent link">&para;</a></h4>
<p>There are four other dependencies needed to run the tests, download these:</p>
<ul>
<li>org.osgi.compendium-4.2.0.jar</li>
<li>osgi-3.5.0.v20090520.jar</li>
<li>org.eclipse.equinox.event-1.1.100.jar</li>
<li>org.apache.felix.configadmin-1.2.4.jar</li>
</ul>
<p>from Maven and put them in commonjars.</p>
<p>After modifications the bnd configuration file to run the blueprint tests
will look like this:</p>
<div class="codehilite"><pre><span class="o">-</span><span class="n">include</span><span class="p">=</span> <span class="o">~</span><span class="n">shared</span><span class="p">.</span><span class="n">inc</span>
<span class="n">build</span><span class="p">=.</span>
<span class="o">-</span><span class="n">target</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">jar</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">test</span><span class="p">.</span><span class="n">cases</span><span class="p">.</span><span class="n">blueprint</span><span class="o">-</span>4<span class="p">.</span>2<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span>
<span class="o">-</span><span class="n">runpath</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">osgi</span><span class="o">-</span>3<span class="p">.</span>5<span class="p">.</span>0<span class="p">.</span><span class="n">v20090520</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">com</span><span class="p">.</span><span class="n">springsource</span><span class="p">.</span><span class="n">junit</span><span class="o">-</span>3<span class="p">.</span>8<span class="p">.</span>2<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">;</span><span class="n">export</span><span class="p">=</span>&quot;<span class="n">junit</span><span class="p">.</span><span class="n">framework</span><span class="p">;</span><span class="n">version</span><span class="p">=</span>3<span class="p">.</span>8&quot;<span class="p">,</span>
<span class="o">-</span><span class="n">runbundles</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">compendium</span><span class="o">-</span>4<span class="p">.</span>2<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">;</span><span class="n">strategy</span><span class="p">=</span>&quot;<span class="n">lowest</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">pax</span><span class="o">-</span><span class="n">logging</span><span class="o">-</span><span class="n">api</span><span class="o">-</span>1<span class="p">.</span>4<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">pax</span><span class="o">-</span><span class="n">logging</span><span class="o">-</span><span class="n">service</span><span class="o">-</span>1<span class="p">.</span>4<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">cm</span><span class="o">-</span>3<span class="p">.</span>2<span class="p">.</span>0<span class="o">-</span><span class="n">v20070116</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">eclipse</span><span class="p">.</span><span class="n">equinox</span><span class="p">.</span><span class="n">event</span><span class="o">-</span>1<span class="p">.</span>1<span class="p">.</span>100<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">felix</span><span class="p">.</span><span class="n">configadmin</span><span class="o">-</span>1<span class="p">.</span>2<span class="p">.</span>4<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">ariesjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">aries</span><span class="p">.</span><span class="n">blueprint</span><span class="o">-</span>0<span class="p">.</span>2<span class="o">-</span><span class="n">incubating</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span>
<span class="o">-</span><span class="n">runproperties</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">report</span><span class="p">=</span>&quot;<span class="n">true</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">osgi</span><span class="p">.</span><span class="n">compatibility</span><span class="p">.</span><span class="n">bootdelegation</span><span class="p">=</span>&quot;<span class="n">false</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">osgi</span><span class="p">.</span><span class="n">support</span><span class="p">.</span><span class="n">multipleHosts</span><span class="p">=</span>&quot;<span class="n">true</span>&quot;
</pre></div>
<p><a name="HowtoruntheOSGiEnterpriseCT-JNDI"></a></p>
<h4 id="jndi">JNDI<a class="headerlink" href="#jndi" title="Permanent link">&para;</a></h4>
<p>The only additional bundle required for these tests is:</p>
<ul>
<li>osgi.enterprise.jar</li>
</ul>
<p>which can be found at the <a href="http://www.osgi.org/Main/HomePage">OSGi Alliance</a>
site.</p>
<p>The .bnd file required to run the JNDI tests looks like this:</p>
<div class="codehilite"><pre><span class="o">-</span><span class="n">include</span><span class="p">=</span> <span class="o">~</span><span class="n">shared</span><span class="p">.</span><span class="n">inc</span>
<span class="n">build</span><span class="p">=.</span>
<span class="o">-</span><span class="n">target</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">jar</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">test</span><span class="p">.</span><span class="n">cases</span><span class="p">.</span><span class="n">jndi</span><span class="o">-</span>4<span class="p">.</span>2<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span>
<span class="o">-</span><span class="n">runpath</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">osgi</span><span class="o">-</span>3<span class="p">.</span>5<span class="p">.</span>0<span class="p">.</span><span class="n">v20090520</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">com</span><span class="p">.</span><span class="n">springsource</span><span class="p">.</span><span class="n">junit</span><span class="o">-</span>3<span class="p">.</span>8<span class="p">.</span>2<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">;</span><span class="n">export</span><span class="p">=</span>&quot;<span class="n">junit</span><span class="p">.</span><span class="n">framework</span><span class="p">;</span><span class="n">version</span><span class="p">=</span>3<span class="p">.</span>8&quot;<span class="p">,</span>
<span class="o">-</span><span class="n">runbundles</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">osgi</span><span class="p">.</span><span class="n">enterprise</span><span class="o">-</span>4<span class="p">.</span>2<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">;</span><span class="n">strategy</span><span class="p">=</span>&quot;<span class="n">lowest</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">ariesjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">aries</span><span class="p">.</span><span class="n">util</span><span class="o">-</span>0<span class="p">.</span>2<span class="o">-</span><span class="n">incubating</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">ariesjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">aries</span><span class="p">.</span><span class="n">jndi</span><span class="o">-</span>0<span class="p">.</span>2<span class="o">-</span><span class="n">incubating</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span>
<span class="o">-</span><span class="n">runproperties</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">report</span><span class="p">=</span>&quot;<span class="n">true</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">osgi</span><span class="p">.</span><span class="n">compatibility</span><span class="p">.</span><span class="n">bootdelegation</span><span class="p">=</span>&quot;<span class="n">false</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">osgi</span><span class="p">.</span><span class="n">support</span><span class="p">.</span><span class="n">multipleHosts</span><span class="p">=</span>&quot;<span class="n">true</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">framework</span><span class="p">.</span><span class="n">bootdelegation</span><span class="p">=</span>&quot;<span class="n">com</span><span class="p">.</span><span class="n">sun</span><span class="o">.*</span>&quot;
</pre></div>
<p><a name="HowtoruntheOSGiEnterpriseCT-JMX"></a></p>
<h4 id="jmx">JMX<a class="headerlink" href="#jmx" title="Permanent link">&para;</a></h4>
<p>It is necessary to download the following:</p>
<ul>
<li>http://www.knopflerfish.org/releases/3.0.0/osgi/jars/useradmin/useradmin_all-3.0.1.jar</li>
<li>http://www.knopflerfish.org/releases/3.0.0/osgi/jars/log/log_api-3.0.1.jar</li>
<li>org.apache.felix.log-1.0.0.jar</li>
<li>org.apache.felix.http.bundle-2.0.4.jar</li>
</ul>
<p>and use them to replace the three org.osgi.impl* jars in the runbundles
section.</p>
<div class="codehilite"><pre><span class="o">-</span><span class="n">include</span><span class="p">=</span> <span class="o">~</span><span class="n">shared</span><span class="p">.</span><span class="n">inc</span>
<span class="n">build</span><span class="p">=.</span>
<span class="o">-</span><span class="n">target</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">jar</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">test</span><span class="p">.</span><span class="n">cases</span><span class="p">.</span><span class="n">jmx</span><span class="o">-</span>4<span class="p">.</span>2<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span>
<span class="o">-</span><span class="n">runpath</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">osgi</span><span class="o">-</span>3<span class="p">.</span>5<span class="p">.</span>0<span class="p">.</span><span class="n">v20090520</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">jar</span><span class="o">/</span><span class="n">com</span><span class="p">.</span><span class="n">springsource</span><span class="p">.</span><span class="n">junit</span><span class="o">-</span>3<span class="p">.</span>8<span class="p">.</span>2<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">;</span><span class="n">export</span><span class="p">=</span>&quot;<span class="n">junit</span><span class="p">.</span><span class="n">framework</span><span class="p">;</span><span class="n">version</span><span class="p">=</span>3<span class="p">.</span>8&quot;<span class="p">,</span>
<span class="o">-</span><span class="n">runbundles</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">osgi</span><span class="p">.</span><span class="n">enterprise</span><span class="o">-</span>4<span class="p">.</span>2<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">;</span><span class="n">strategy</span><span class="p">=</span>&quot;<span class="n">lowest</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">felix</span><span class="p">.</span><span class="n">configadmin</span><span class="o">-</span>1<span class="p">.</span>2<span class="p">.</span>4<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">ariesjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">aries</span><span class="p">.</span><span class="n">jmx</span><span class="o">-</span>0<span class="p">.</span>2<span class="o">-</span><span class="n">incubating</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">useradmin_all</span><span class="o">-</span>3<span class="p">.</span>0<span class="p">.</span>1<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">log_api</span><span class="o">-</span>3<span class="p">.</span>0<span class="p">.</span>1<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">felix</span><span class="p">.</span><span class="nb">log</span><span class="o">-</span>1<span class="p">.</span>0<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">compendium</span><span class="o">-</span>4<span class="p">.</span>2<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">eclipse</span><span class="p">.</span><span class="n">equinox</span><span class="p">.</span><span class="n">ip_1</span><span class="p">.</span>1<span class="p">.</span>100<span class="p">.</span><span class="n">v20100503</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">eclipse</span><span class="p">.</span><span class="n">equinox</span><span class="p">.</span><span class="n">util_1</span><span class="p">.</span>0<span class="p">.</span>200<span class="p">.</span><span class="n">v20100503</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">felix</span><span class="p">.</span><span class="n">http</span><span class="p">.</span><span class="n">bundle</span><span class="o">-</span>2<span class="p">.</span>0<span class="p">.</span>4<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span>
<span class="o">-</span><span class="n">runproperties</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">report</span><span class="p">=</span>&quot;<span class="n">true</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">osgi</span><span class="p">.</span><span class="n">compatibility</span><span class="p">.</span><span class="n">bootdelegation</span><span class="p">=</span>&quot;<span class="n">false</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">osgi</span><span class="p">.</span><span class="n">support</span><span class="p">.</span><span class="n">multipleHosts</span><span class="p">=</span>&quot;<span class="n">true</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">osgi</span><span class="p">.</span><span class="n">console</span><span class="p">=</span>&quot;1111&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">test</span><span class="p">.</span><span class="n">cases</span><span class="p">.</span><span class="n">jmx</span><span class="p">.</span><span class="n">system</span><span class="p">.</span><span class="n">packages</span><span class="p">.</span><span class="n">extra</span><span class="p">=</span>&quot;<span class="n">junit</span><span class="p">.</span><span class="n">framework</span><span class="p">;</span><span class="n">version</span><span class="p">=</span>3<span class="p">.</span>8&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">test</span><span class="p">.</span><span class="n">cases</span><span class="p">.</span><span class="n">jmx</span><span class="p">.</span><span class="n">bundles</span><span class="p">=</span>&quot;<span class="n">jar</span><span class="o">/</span><span class="n">osgi</span><span class="p">.</span><span class="n">enterprise</span><span class="o">-</span>4<span class="p">.</span>2<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">,</span><span class="n">jar</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">aries</span><span class="p">.</span><span class="n">jmx</span><span class="o">-</span>0<span class="p">.</span>2<span class="o">-</span><span class="n">incubating</span><span class="p">.</span><span class="n">jar</span>&quot;
</pre></div>
<p><a name="HowtoruntheOSGiEnterpriseCT-Transaction"></a></p>
<h4 id="transaction">Transaction<a class="headerlink" href="#transaction" title="Permanent link">&para;</a></h4>
<p>Nothing more to download here. Here is the configuration file:</p>
<div class="codehilite"><pre><span class="o">-</span><span class="n">include</span><span class="p">=</span> <span class="o">~</span><span class="n">shared</span><span class="p">.</span><span class="n">inc</span>
<span class="n">build</span><span class="p">=.</span>
<span class="o">-</span><span class="n">target</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">jar</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">test</span><span class="p">.</span><span class="n">cases</span><span class="p">.</span><span class="n">transaction</span><span class="o">-</span>4<span class="p">.</span>2<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span>
<span class="o">-</span><span class="n">runpath</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">osgi</span><span class="o">-</span>3<span class="p">.</span>5<span class="p">.</span>0<span class="p">.</span><span class="n">v20090520</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">com</span><span class="p">.</span><span class="n">springsource</span><span class="p">.</span><span class="n">junit</span><span class="o">-</span>3<span class="p">.</span>8<span class="p">.</span>2<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">;</span><span class="n">export</span><span class="p">=</span>&quot;<span class="n">junit</span><span class="p">.</span><span class="n">framework</span><span class="p">;</span><span class="n">version</span><span class="p">=</span>3<span class="p">.</span>8&quot;<span class="p">,</span>
<span class="o">-</span><span class="n">runbundles</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">osgi</span><span class="p">.</span><span class="n">enterprise</span><span class="o">-</span>4<span class="p">.</span>2<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">;</span><span class="n">strategy</span><span class="p">=</span>&quot;<span class="n">lowest</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">pax</span><span class="o">-</span><span class="n">logging</span><span class="o">-</span><span class="n">api</span><span class="o">-</span>1<span class="p">.</span>4<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">pax</span><span class="o">-</span><span class="n">logging</span><span class="o">-</span><span class="n">service</span><span class="o">-</span>1<span class="p">.</span>4<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">geronimo</span><span class="o">-</span><span class="n">jta_1</span><span class="p">.</span>1<span class="n">_spec</span><span class="o">-</span>1<span class="p">.</span>1<span class="p">.</span>1<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">geronimo</span><span class="o">-</span><span class="n">transaction</span><span class="o">-</span>2<span class="p">.</span>1<span class="p">.</span>3<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">geronimo</span><span class="o">-</span><span class="n">j2ee</span><span class="o">-</span><span class="n">connector_1</span><span class="p">.</span>5<span class="n">_spec</span><span class="o">-</span>2<span class="p">.</span>0<span class="p">.</span>0<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">commonjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">felix</span><span class="p">.</span><span class="n">configadmin</span><span class="o">-</span>1<span class="p">.</span>2<span class="p">.</span>4<span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">ariesjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">aries</span><span class="p">.</span><span class="n">blueprint</span><span class="o">-</span>0<span class="p">.</span>2<span class="o">-</span><span class="n">incubating</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">ariesjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">aries</span><span class="p">.</span><span class="n">transaction</span><span class="p">.</span><span class="n">blueprint</span><span class="o">-</span>0<span class="p">.</span>2<span class="o">-</span><span class="n">incubating</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">ariesjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">aries</span><span class="p">.</span><span class="n">transaction</span><span class="p">.</span><span class="n">manager</span><span class="o">-</span>0<span class="p">.</span>2<span class="o">-</span><span class="n">incubating</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span><span class="p">,</span> <span class="o">\</span>
<span class="n">ariesjars</span><span class="o">/</span><span class="n">org</span><span class="p">.</span><span class="n">apache</span><span class="p">.</span><span class="n">aries</span><span class="p">.</span><span class="n">transaction</span><span class="p">.</span><span class="n">wrappers</span><span class="o">-</span>0<span class="p">.</span>2<span class="o">-</span><span class="n">incubating</span><span class="p">.</span><span class="n">jar</span><span class="p">;</span><span class="n">version</span><span class="p">=</span><span class="n">file</span>
<span class="o">-</span><span class="n">runproperties</span> <span class="p">=</span> <span class="o">\</span>
<span class="n">report</span><span class="p">=</span>&quot;<span class="n">true</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">osgi</span><span class="p">.</span><span class="n">compatibility</span><span class="p">.</span><span class="n">bootdelegation</span><span class="p">=</span>&quot;<span class="n">false</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">osgi</span><span class="p">.</span><span class="n">support</span><span class="p">.</span><span class="n">multipleHosts</span><span class="p">=</span>&quot;<span class="n">true</span>&quot;<span class="p">,</span> <span class="o">\</span>
<span class="n">org</span><span class="p">.</span><span class="n">osgi</span><span class="p">.</span><span class="n">test</span><span class="p">.</span><span class="n">cases</span><span class="p">.</span><span class="n">transaction</span><span class="p">.</span><span class="n">waittime</span><span class="p">=</span>&quot;30&quot;
</pre></div></div>
<!-- Content -->
</td>
</tr>
</table>
</td>
<td id="cell-2-2" colspan="2">&nbsp;</td>
</tr>
<tr width="100%">
<td id="cell-3-0">&nbsp;</td>
<td id="cell-3-1">&nbsp;</td>
<td id="cell-3-2">
<div id="footer">
<!-- Footer -->
<div id="site-footer">
<a href="http://aries.apache.org/privacy-policy.html";>Privacy
Policy</a>
</div>
<!-- Footer -->
</div>
</td>
<td id="cell-3-3">&nbsp;</td>
<td id="cell-3-4">&nbsp;</td>
</tr>
<tr width="100%">
<td id="cell-4-0" colspan="2">&nbsp;</td>
<td id="cell-4-1">&nbsp;</td>
<td id="cell-4-2" colspan="2">&nbsp;</td>
</tr>
</table>
</body>
</html>