@@ -45,15 +45,15 @@ containing them. This in turn has implications for the packaging of these artifa
4545
4646## Requirements
4747
48- <a name =" req1 " / >
48+ <a name =" req1 " ></ a >
4949
5050** Requirement 1** : * The Axiom artifacts SHOULD be usable both as normal JAR files and as OSGi bundles.*
5151
5252The alternative would be to produce two sets of artifacts during the build. This
5353should be avoided in order to keep the build process as simple as possible.
5454It should also be noted that the Geronimo Spec artifacts also meet this requirement.
5555
56- <a name =" req2 " / >
56+ <a name =" req2 " ></ a >
5757
5858** Requirement 2** : * All APIs defined by the ` axiom-api ` module, and in particular the
5959` OMAbstractFactory ` API MUST continue to work as expected in an OSGi environment, so that code
@@ -63,15 +63,15 @@ This requirement was already satisfied by the OSGi support introduced in Axiom 1
6363It therefore also ensures that the transition to the new OSGi support in Axiom 1.2.13
6464is transparent for applications that already use Axiom in an OSGi container.
6565
66- <a name =" req3 " / >
66+ <a name =" req3 " ></ a >
6767
6868** Requirement 3** : * ` OMAbstractFactory ` MUST select the same implementation
6969regardless of the type of container (OSGi or non OSGi). The only exception is
7070related to the usage of system properties to specify the default ` OMMetaFactory `
7171implementation: in an OSGi environment, selecting an implementation class using
7272a system property is not meaningful.*
7373
74- <a name =" req4 " / >
74+ <a name =" req4 " ></ a >
7575
7676** Requirement 4** : * Only classes belonging to the public API should be exported by the OSGi bundles.
7777Implementation classes should not be exported. In particular,
@@ -102,7 +102,7 @@ changes to downstreams project to make this actually work:
102102* For Spring Web Services this issue is addressed by
103103 [ SWS-822] ( https://jira.springsource.org/browse/SWS-822 ) .
104104
105- <a name =" req5 " / >
105+ <a name =" req5 " ></ a >
106106
107107** Requirement 5** : * It MUST be possible to use a non standard (third party) Axiom implementation as a drop-in replacement
108108for the standard LLOM and DOOM implementation, i.e. the ` axiom-impl `
@@ -121,6 +121,8 @@ This requirement has several important implications:
121121* In accordance with [ Requirement 2] ( #req2 ) and [ Requirement 3] ( #req3 )
122122 this requirement not only applies to an OSGi environment, but extends to non OSGi environments as well.
123123
124+ <a name =" req6 " ></a >
125+
124126** Requirement 6** : * The OSGi integration SHOULD remove the necessity for downstreams projects
125127to produce their own custom OSGi bundles for Axiom. There SHOULD be one
126128and only one set of OSGi bundles for Axiom, namely the ones released by the Axiom project.*
@@ -140,7 +142,7 @@ compatible with its design, and in particular with [Requirement 4](#req4).
140142Nevertheless, Axiom must provide the necessary APIs and features to meet the needs
141143of these projects.
142144
143- <a name =" req7 " / >
145+ <a name =" req7 " ></ a >
144146
145147** Requirement 7** : * The Axiom OSGi integration SHOULD NOT rely on any particular OSGi framework such
146148as Felix SCR (Declarative Services). When deployed in an OSGi environment, Axiom should have the same
@@ -151,13 +153,13 @@ of this extra dependency is seen as a nice to have. One of the reasons for using
151153was to avoid introducing OSGi specific code into Axiom. However, there is no issue with
152154having such code, provided that [ Requirement 8] ( #req8 ) is satisfied.
153155
154- <a name =" req8 " / >
156+ <a name =" req8 " ></ a >
155157
156158** Requirement 8** : * In a non OSGi environment, Axiom MUST NOT have any OSGi related dependencies. That means
157159that the OSGi integration must be written in such a way that no OSGi specific classes are
158160ever loaded in a non OSGi environment.*
159161
160- <a name =" req9 " / >
162+ <a name =" req9 " ></ a >
161163
162164** Requirement 9** : * The OSGi integration MUST follow established best practices. It SHOULD be inspired by
163165what has been done to add OSGi integration to APIs that have a similar structure as Axiom.*
0 commit comments