You are right.  it resolved to the highest version by default.  thanks to all.

On Nov 5, 2007 3:25 PM, Chris Custine <[EMAIL PROTECTED]> wrote:
> On 11/5/07, William Tam <[EMAIL PROTECTED]> wrote:
> >
> > Does anybody have any success starting camel bundles (say the
> > camel-core bundle) in an osgi container?  I have tried doing that
> > (installing went fine) with the camel-core bundle in felix and there
> > were unresolved packages (jaxb-api, common-logging, and
> > springframework).   I was able to wrap jaxb-api and common-logging
> > jars as bundles following the procedures in
> > http://felix.apache.org/site/creating-bundles-using-bnd.html .
> > However, wrapping springframework is rather daunting since it pulls in
> > dependencies after dependencies.  The new spring jars (2.1) are
> > already osgi bundles but I don't think I can use them since they are
> > versioned (as 2.1.0.m4).  Camel-core would import the default version
> > (0.0.0).
>
>
> The version 0.0.0 actually tells the framework to import the highest
> numbered package that has been resolved in the OSGi framework, so if you
> have the spring bundles installed (or even multiple versions of them) a
> bundle importing a spring package with 0.0.0 will just use the highest
> version it finds.  Give it a try.
>
> One way to hack it (as follow) is to use the DynamicImport-Package
> > attribute to allow the osgi container to resolve those packages from
> > its classpath.  I wonder if anybody has any advice.
>
>
> I would not use DynamicImport-Package unless it is absolutely necessary
> since it masks problems with proper setup of bundle import and exports.
>
> Good luck,
> Chris
>
>
> Thanks,
> > William
> >
> > <plugin>
> >         <groupId> org.apache.felix</groupId>
> >             <artifactId>maven-bundle-plugin</artifactId>
> >             <version>${felix-version}</version>
> >             <extensions>true</extensions>
> >             <configuration>
> >               <instructions>
> >                 <Bundle-Name>${artifactId}</Bundle-Name>
> >                 <Bundle-SymbolicName>${ camel.osgi.symbolic.name
> > }</Bundle-SymbolicName>
> >                 <Export-Package>${camel.osgi.export}</Export-Package>
> >                 <Import-Package>${camel.osgi.import}</Import-Package>
> >                 <Private-Package>${camel.osgi.private.pkg
> > }</Private-Package>
> >                 <Implementation-Title>Apache Camel</Implementation-Title>
> >                 <Implementation-Version>${ project.version
> > }</Implementation-Version>
> >                 <Private-Package>${camel.osgi.private.pkg
> > }</Private-Package>
> >
> > <DynamicImport-Package>javax.xml.bind.annotation.adapters,
> > org.springframework.jmx.export.metadata ,
> > org.springframework.jmx.export.annotation, javax.xml.stream,
> > org.apache.commons.logging, org.springframework.jmx.export.assembler,
> > javax.xml.bind.annotation</DynamicImport-Package>
> >               </instructions>
> >             </configuration>
> >       </plugin>
> >
>

Reply via email to