We did have to add javax.resource in as a bundle, too with this set up. Hope this helps!
On Thu, May 17, 2012 at 11:50 AM, James Carman <[email protected]> wrote: > We created our own bundle that included everything we needed for IBM MQ: > > <properties> > <ibm.mq.version>7.1.0.0</ibm.mq.version> > </properties> > > <dependencies> > > <dependency> > <groupId>com.ibm.mq</groupId> > <artifactId>com.ibm.mq</artifactId> > <version>${ibm.mq.version}</version> > </dependency> > <dependency> > <groupId>com.ibm.mq</groupId> > <artifactId>com.ibm.mq.commonservices</artifactId> > <version>${ibm.mq.version}</version> > </dependency> > <dependency> > <groupId>com.ibm.mq</groupId> > <artifactId>com.ibm.mq.headers</artifactId> > <version>${ibm.mq.version}</version> > </dependency> > <dependency> > <groupId>com.ibm.mq</groupId> > <artifactId>com.ibm.mq.jmqi</artifactId> > <version>${ibm.mq.version}</version> > </dependency> > <dependency> > <groupId>com.ibm.mq</groupId> > <artifactId>com.ibm.mq.pcf</artifactId> > <version>${ibm.mq.version}</version> > </dependency> > <dependency> > <groupId>com.ibm.mq</groupId> > <artifactId>com.ibm.mqjms</artifactId> > <version>${ibm.mq.version}</version> > </dependency> > <dependency> > <groupId>com.ibm.mq</groupId> > <artifactId>dhbcore</artifactId> > <version>${ibm.mq.version}</version> > </dependency> > <dependency> > <groupId>com.ibm.mq</groupId> > <artifactId>rmm</artifactId> > <version>${ibm.mq.version}</version> > </dependency> > <dependency> > <groupId>com.ibm.mq</groupId> > <artifactId>cl3-export</artifactId> > <version>${ibm.mq.version}</version> > </dependency> > </dependencies> > > <build> > <plugins> > <!-- Plugins for creating bundles for WMQ libraries --> > <plugin> > <groupId>org.ops4j</groupId> > <artifactId>maven-pax-plugin</artifactId> > <version>1.5</version> > <extensions>true</extensions> > </plugin> > <plugin> > <groupId>org.apache.felix</groupId> > <artifactId>maven-bundle-plugin</artifactId> > <version>2.3.7</version> > <configuration> > <instructions> > > <Bundle-SymbolicName>ibm-wmq-bundle</Bundle-SymbolicName> > <Bundle-Version>7.1.0.0</Bundle-Version> > <!-- > | export wrapped contents: don't use > Export-Package:* as this bundles everything on the classpath > --> > <_exportcontents>*</_exportcontents> > <Private-Package>!*</Private-Package> > <!-- > | each module can override these defaults in > their osgi.bnd file > --> > <_include>-osgi.bnd</_include> > <Import-Package>!com.ibm.*,*</Import-Package> > <DynamicImport-Package>*</DynamicImport-Package> > </instructions> > </configuration> > </plugin> > </plugins> > </build> > > > The osgi.bnd file just contains: > > Embed-Dependency: *;scope=compile|runtime;type=!pom;inline=true > > So, you can actually do that in your pom. > > On Thu, May 17, 2012 at 6:52 AM, Andrew Thorburn <[email protected]> wrote: >> And a quick Google search turns up the following: >> http://gnodet.blogspot.co.nz/2008/09/id-like-to-talk-bit-about-third-party.html >> >> That seems to apply to my situation, so presumably that's what I should do, >> then? That is, one of: Include each JAR inside the component JAR, extract >> the classes from the MQ JARs and add them to the component JAR, or >> re-bundle the MQ JARs so that they're OSGi-compliant. >> >> Thanks, >> >> - Andrew >> >> On Thu, May 17, 2012 at 10:36 PM, Andrew Thorburn <[email protected]> wrote: >>> So, I would like to add some libraries to ServiceMix in order to have >>> a custom component make use of them. In particular, these are free >>> (but not open) Java MQI jars from IBM Websphere MQ. As far as I can >>> tell, they are not OSGi-ified, so do I need to - somehow - apply OSGi >>> to them to make my component see them in SMX? Or can I get away with >>> just making my component OSGi-ified? Alternatively, is there a way to >>> bundle them all up inside a single archive (like a WAR)? >>> >>> Unfortunately, my knowledge of OSGi is basically non-existent, so I'm >>> not sure what I should be doing here... >>> >>> - Andrew
