In what you copy/paste ;-)

The bundle 142 imports this package (com.mysql.jdbc.jdbc2.optional) from
the bundle 76.



On Mon, Aug 13, 2012 at 6:16 PM, Julien Martin <[email protected]> wrote:

> Good point Charles. I have installed spring-jms.
>
> *Now look: I have this in my pom: *
>
> <Import-Package>com.mysql.jdbc.jdbc2.optional,javax.crypto,javax.crypto.spec,javax.jms,javax.naming,javax.naming.spi,javax.sql,javax.transaction,javax.transaction.xa,org.slf4j</Import-Package>
>
> *and this in the Karaf console:*
> karaf@root> package:import 142
> System Bundle (0): javax.crypto; version=0.0.0
> System Bundle (0): javax.crypto.spec; version=0.0.0
> System Bundle (0): javax.naming; version=0.0.0
> System Bundle (0): javax.naming.spi; version=0.0.0
> System Bundle (0): javax.sql; version=0.0.0
> OPS4J Pax Logging - API (4): org.slf4j; version=1.6.4
> OPS4J Pax Logging - API (4): org.slf4j; version=1.6.1
> OPS4J Pax Logging - API (4): org.slf4j; version=1.5.11
> OPS4J Pax Logging - API (4): org.slf4j; version=1.4.3
> Sun Microsystems' JDBC Driver for MySQL (76):
> com.mysql.jdbc.jdbc2.optional; version=5.1.18
> geronimo-jta_1.1_spec (117): javax.transaction.xa; version=1.1.0
> geronimo-jta_1.1_spec (117): javax.transaction; version=1.1.0
> geronimo-jms_1.1_spec (139): javax.jms; version=1.1.0
> karaf@root>
>
> Where is the* com.mysql.jdbc.jdbc2.optional *package??
> J.
>
> 2012/8/13 Charles Moulliard <[email protected]>
>
>> Have you installed the bundle containing this package (*javax.jms) ? *
>> *features:install spring-jms
>> *
>>
>> On Mon, Aug 13, 2012 at 5:51 PM, Julien Martin <[email protected]> wrote:
>>
>>> Charles,
>>>
>>> I have got past the compile error. What is odd is that the container
>>> won't start my bundle:
>>>
>>> <plugin>
>>>  <groupId>org.apache.felix</groupId>
>>> <artifactId>maven-bundle-plugin</artifactId>
>>>  <version>2.1.0</version>
>>> <extensions>true</extensions>
>>>  <configuration>
>>> <instructions>
>>>   <Bundle-SymbolicName>osgi.org.codehaus.btm</Bundle-SymbolicName>
>>>   <Export-Package>bitronix.tm.resource.jdbc,bitronix.tm
>>> ,bitronix.tm.internal,bitronix.tm.journal,bitronix.tm.recovery,bitronix.tm.resource,bitronix.tm.resource.common,bitronix.tm.resource.jdbc.lrc,bitronix.tm.timer,bitronix.tm.twopc,bitronix.tm.twopc.executor,bitronix.tm.utils</Export-Package>
>>>
>>> <Import-Package>com.mysql.jdbc.jdbc2.optional,javax.crypto,javax.crypto.spec,javax.jms,javax.naming,javax.naming.spi,javax.sql,javax.transaction,javax.transaction.xa,org.slf4j</Import-Package>
>>>  </instructions>
>>>   <unpackBundle>true</unpackBundle>
>>>  </configuration>
>>> </plugin>
>>> The error I get from Karaf is:
>>> *karaf@root> osgi:restart 108*
>>> *org.osgi.framework.BundleException: Unresolved constraint in bundle
>>> osgi.org.codehaus.btm [108]: Unable to resolve 108.0: missing requirement
>>> [108.0]*
>>> *package; (package=javax.jms)*
>>>
>>> Whereas the package is imported and exported...
>>>
>>> Julien.
>>>
>>> 2012/8/13 Charles Moulliard <[email protected]>
>>>
>>>> You have to add these packages in the Import-Package tag as they are
>>>> required by the bnd tool. This is due to the fact that you define your self
>>>> the packages to be used and does not let the tool to discover them using *
>>>> symbol
>>>>
>>>>
>>>> On Mon, Aug 13, 2012 at 5:34 PM, Julien Martin <[email protected]>wrote:
>>>>
>>>>> Charles,
>>>>>
>>>>> I see... Do you see anything wrong with my pom? It does not compile
>>>>> with the following error:
>>>>>
>>>>> *[ERROR] Error building bundle osgi.org.codehaus.btm:btm:bundle:2.1.2
>>>>> : Unresolved references to [javax.crypto, javax.crypto.spec, javax.jms,
>>>>> *
>>>>>
>>>>> Do you have any idea why it requires JMS for instance??
>>>>>
>>>>> Regards,
>>>>> J.
>>>>>
>>>>>
>>>>> 2012/8/13 Charles Moulliard <[email protected]>
>>>>>
>>>>>> This is because the maven bundle tool (= bnd) will calculate and add
>>>>>> missing packages. So don't worry about that for the moment.
>>>>>>
>>>>>>
>>>>>> On Mon, Aug 13, 2012 at 5:22 PM, Julien Martin <[email protected]>wrote:
>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> I am having problem understanding how to configure the shade plugin:
>>>>>>>
>>>>>>> What I have in the actual manifest does not match what I have
>>>>>>> specified in the POM's plugin i.e. there are many more entries in the
>>>>>>> actual  manifest than there are in the POM's plugin...
>>>>>>>
>>>>>>> Any idea?
>>>>>>>
>>>>>>> Regards,
>>>>>>>
>>>>>>> Julien.
>>>>>>>
>>>>>>> Here is my POM:
>>>>>>>
>>>>>>> <project xmlns="http://maven.apache.org/POM/4.0.0"; xmlns:xsi="
>>>>>>> http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="
>>>>>>> http://maven.apache.org/POM/4.0.0
>>>>>>> http://maven.apache.org/xsd/maven-4.0.0.xsd";>
>>>>>>>  <modelVersion>4.0.0</modelVersion>
>>>>>>> <groupId>osgi.org.codehaus.btm</groupId>
>>>>>>>  <artifactId>btm</artifactId>
>>>>>>> <version>2.1.2</version>
>>>>>>>  <packaging>bundle</packaging>
>>>>>>> <dependencies>
>>>>>>> <dependency>
>>>>>>>  <groupId>org.codehaus.btm</groupId>
>>>>>>> <artifactId>btm</artifactId>
>>>>>>>  <version>2.1.2</version>
>>>>>>> <optional>true</optional>
>>>>>>>  </dependency>
>>>>>>> </dependencies>
>>>>>>> <build>
>>>>>>>  <defaultGoal>install</defaultGoal>
>>>>>>> <plugins>
>>>>>>> <plugin>
>>>>>>>  <groupId>org.apache.maven.plugins</groupId>
>>>>>>> <artifactId>maven-shade-plugin</artifactId>
>>>>>>>  <version>1.1</version>
>>>>>>> <executions>
>>>>>>> <execution>
>>>>>>>  <phase>package</phase>
>>>>>>> <goals>
>>>>>>> <goal>shade</goal>
>>>>>>>  </goals>
>>>>>>> <configuration>
>>>>>>> <artifactSet>
>>>>>>>  <includes>
>>>>>>> <include>org.codehaus.btm:btm</include>
>>>>>>>  </includes>
>>>>>>> </artifactSet>
>>>>>>> <filters>
>>>>>>>  <filter>
>>>>>>> <artifact>org.codehaus.btm:btm</artifact>
>>>>>>>  <excludes>
>>>>>>> <exclude>**</exclude>
>>>>>>> </excludes>
>>>>>>>  </filter>
>>>>>>> </filters>
>>>>>>> <promoteTransitiveDependencies>true</promoteTransitiveDependencies>
>>>>>>>  <createDependencyReducedPom>true</createDependencyReducedPom>
>>>>>>> </configuration>
>>>>>>>  </execution>
>>>>>>> </executions>
>>>>>>> </plugin>
>>>>>>>  <plugin>
>>>>>>> <groupId>org.apache.felix</groupId>
>>>>>>> <artifactId>maven-bundle-plugin</artifactId>
>>>>>>>  <version>2.1.0</version>
>>>>>>> <extensions>true</extensions>
>>>>>>>  <configuration>
>>>>>>> <instructions>
>>>>>>>   <Bundle-SymbolicName>osgi.org.codehaus.btm</Bundle-SymbolicName>
>>>>>>>   <Export-Package>bitronix.tm.resource.jdbc,bitronix.tm
>>>>>>> ,bitronix.tm.internal,bitronix.tm.journal,bitronix.tm.recovery,bitronix.tm.resource,bitronix.tm.resource.common,bitronix.tm.resource.jdbc.lrc,bitronix.tm.timer,bitronix.tm.twopc,bitronix.tm.twopc.executor,bitronix.tm.utils</Export-Package>
>>>>>>>   <Import-Package>com.mysql.jdbc.jdbc2.optional</Import-Package>
>>>>>>> </instructions>
>>>>>>>   <unpackBundle>true</unpackBundle>
>>>>>>> </configuration>
>>>>>>>  </plugin>
>>>>>>> </plugins>
>>>>>>> </build>
>>>>>>>
>>>>>>> </project>
>>>>>>>
>>>>>>> 2012/8/13 Charles Moulliard <[email protected]>
>>>>>>>
>>>>>>>> It is time now that you discover the maven-bundle-plugin in charge
>>>>>>>> to generate properly the MANIFEST.mf file containing bundle 
>>>>>>>> instructions (
>>>>>>>> http://felix.apache.org/site/apache-felix-maven-bundle-plugin-bnd.html&;
>>>>>>>> http://karaf.apache.org/manual/2.2.8/developers-guide/creating-bundles.html
>>>>>>>> )
>>>>>>>>
>>>>>>>> Add this package into the Import-Package tag
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Mon, Aug 13, 2012 at 4:11 PM, Julien Martin <[email protected]>wrote:
>>>>>>>>
>>>>>>>>> Thanks again Charles!
>>>>>>>>>
>>>>>>>>> No it does not import it (see output):
>>>>>>>>>
>>>>>>>>> *karaf@root> packages:imports 79*
>>>>>>>>> *System Bundle (0): javax.crypto; version=0.0.0*
>>>>>>>>> *System Bundle (0): javax.crypto.spec; version=0.0.0*
>>>>>>>>> *System Bundle (0): javax.naming; version=0.0.0*
>>>>>>>>> *System Bundle (0): javax.naming.spi; version=0.0.0*
>>>>>>>>> *System Bundle (0): javax.rmi; version=0.0.0*
>>>>>>>>> *System Bundle (0): javax.sql; version=0.0.0*
>>>>>>>>> *System Bundle (0): javax.swing; version=0.0.0*
>>>>>>>>> *System Bundle (0): javax.swing.border; version=0.0.0*
>>>>>>>>> *System Bundle (0): javax.swing.event; version=0.0.0*
>>>>>>>>> *System Bundle (0): javax.swing.table; version=0.0.0*
>>>>>>>>> *System Bundle (0): javax.swing.tree; version=0.0.0*
>>>>>>>>> *OPS4J Pax Logging - API (4): org.slf4j; version=1.6.4*
>>>>>>>>> *OPS4J Pax Logging - API (4): org.slf4j; version=1.6.1*
>>>>>>>>> *OPS4J Pax Logging - API (4): org.slf4j; version=1.5.11*
>>>>>>>>> *OPS4J Pax Logging - API (4): org.slf4j; version=1.4.3*
>>>>>>>>> *jta (70): javax.transaction; version=0.0.0*
>>>>>>>>> *jta (70): javax.transaction.xa; version=0.0.0*
>>>>>>>>>
>>>>>>>>> How do I configure it so that is properly imports the required
>>>>>>>>> packages?
>>>>>>>>> Regards,
>>>>>>>>> J.
>>>>>>>>>
>>>>>>>>> 2012/8/13 Charles Moulliard <[email protected]>
>>>>>>>>>
>>>>>>>>>> Can you check please that your bundle 79 imports well this
>>>>>>>>>> package (*com.mysql.jdbc.jdbc2.optional) by using this command ?*
>>>>>>>>>> *
>>>>>>>>>> *
>>>>>>>>>> *packages:imports 79
>>>>>>>>>> *
>>>>>>>>>>
>>>>>>>>>> On Mon, Aug 13, 2012 at 4:03 PM, Julien Martin 
>>>>>>>>>> <[email protected]>wrote:
>>>>>>>>>>
>>>>>>>>>>> Hello,
>>>>>>>>>>>
>>>>>>>>>>> I've successfully managed for Karaf to pick up my Spring
>>>>>>>>>>> configuration files. However, I get now a ClassNotFoundException:
>>>>>>>>>>>
>>>>>>>>>>> *Caused by: java.lang.ClassNotFoundException:
>>>>>>>>>>> com.mysql.jdbc.jdbc2.optional.MysqlXADataSource not found by btm
>>>>>>>>>>> * [79]
>>>>>>>>>>>         at
>>>>>>>>>>> org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:787)
>>>>>>>>>>>         at
>>>>>>>>>>> org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:71)
>>>>>>>>>>>         at
>>>>>>>>>>> org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1768)
>>>>>>>>>>>         at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
>>>>>>>>>>>         at java.lang.Class.forName0(Native Method)
>>>>>>>>>>>         at java.lang.Class.forName(Class.java:169)
>>>>>>>>>>>         at
>>>>>>>>>>> bitronix.tm.utils.ClassLoaderUtils.loadClass(ClassLoaderUtils.java:63)
>>>>>>>>>>>         at
>>>>>>>>>>> bitronix.tm.resource.common.XAPool.createXAFactory(XAPool.java:300)
>>>>>>>>>>>         at
>>>>>>>>>>> bitronix.tm.resource.common.XAPool.<init>(XAPool.java:63)
>>>>>>>>>>>         at
>>>>>>>>>>> bitronix.tm.resource.jdbc.PoolingDataSource.buildXAPool(PoolingDataSource.java:89)
>>>>>>>>>>>         at
>>>>>>>>>>> bitronix.tm.resource.jdbc.PoolingDataSource.init(PoolingDataSource.java:76)
>>>>>>>>>>>         ... 21 more
>>>>>>>>>>>
>>>>>>>>>>> What strikes me is that my Mysql driver is properly installed
>>>>>>>>>>> into Karaf (see bold line below):
>>>>>>>>>>>
>>>>>>>>>>> START LEVEL 100 , List Threshold: 50
>>>>>>>>>>>    ID   State         Blueprint      Spring    Level  Name
>>>>>>>>>>> [  50] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Integration Core (2.1.3.RELEASE)
>>>>>>>>>>> [  51] [Active     ] [            ] [       ] [   80]
>>>>>>>>>>> commons-dbcp (1.2.2)
>>>>>>>>>>> [  52] [Active     ] [            ] [       ] [   80] OSGi R4
>>>>>>>>>>> Core Bundle (4.1)
>>>>>>>>>>> [  53] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Test (3.0.7.RELEASE)
>>>>>>>>>>> [  54] [Active     ] [            ] [       ] [   80] c3p0
>>>>>>>>>>> (0.9.1.2)
>>>>>>>>>>> [  55] [Active     ] [            ] [       ] [   80] Commons IO
>>>>>>>>>>> (2.0.1)
>>>>>>>>>>> [  56] [Active     ] [            ] [       ] [   80]
>>>>>>>>>>> aopalliance (1.0)
>>>>>>>>>>> [  57] [Active     ] [            ] [       ] [   80] xstream
>>>>>>>>>>> (1.3)
>>>>>>>>>>> [  58] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Expression Language (3.0.7.RELEASE)
>>>>>>>>>>> [  59] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Context Support (3.0.7.RELEASE)
>>>>>>>>>>> [  61] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Integration File Support (2.1.3.RELEASE)
>>>>>>>>>>> [  62] [Resolved   ] [            ] [       ] [   80]
>>>>>>>>>>> slf4j-log4j12 (1.6.1)
>>>>>>>>>>>                                        Hosts: 69
>>>>>>>>>>> [  63] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Object/XML Mapping (3.0.7.RELEASE)
>>>>>>>>>>> [  64] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> JDBC (3.0.7.RELEASE)
>>>>>>>>>>> [  65] [Active     ] [            ] [       ] [   80]
>>>>>>>>>>> commons-collections (3.2)
>>>>>>>>>>> [  66] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Beans (3.0.7.RELEASE)
>>>>>>>>>>> [  67] [Active     ] [            ] [       ] [   80] Spring ASM
>>>>>>>>>>> (3.0.7.RELEASE)
>>>>>>>>>>> [  68] [Active     ] [            ] [       ] [   80] junit
>>>>>>>>>>> (4.10)
>>>>>>>>>>> [  69] [Active     ] [            ] [       ] [   80] slf4j-api
>>>>>>>>>>> (1.6.1)
>>>>>>>>>>>                                        Fragments: 62
>>>>>>>>>>> [  70] [Active     ] [            ] [       ] [   80] jta (1.1)
>>>>>>>>>>> [  71] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Batch Infrastructure (2.1.8.RELEASE)
>>>>>>>>>>> [  72] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Batch Test (2.1.8.RELEASE)
>>>>>>>>>>> [  73] [Active     ] [            ] [       ] [   80] xpp3_min
>>>>>>>>>>> (1.1.0.4c)
>>>>>>>>>>> [  74] [Active     ] [            ] [       ] [   80]
>>>>>>>>>>> jcl-over-slf4j (1.6.1)
>>>>>>>>>>> [  75] [Active     ] [            ] [       ] [   80]
>>>>>>>>>>> hamcrest-core (1.1)
>>>>>>>>>>> *[  76] [Active     ] [            ] [       ] [   80] Sun
>>>>>>>>>>> Microsystems' JDBC Driver for MySQL (5.1.18)*
>>>>>>>>>>> [  77] [Active     ] [            ] [       ] [   80]
>>>>>>>>>>> commons-pool (1.3)
>>>>>>>>>>> [  78] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Transaction (3.0.7.RELEASE)
>>>>>>>>>>> [  79] [Active     ] [            ] [       ] [   80] btm (2.1.2)
>>>>>>>>>>> [  80] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Batch Integration (1.2.1.RELEASE)
>>>>>>>>>>> [  81] [Active     ] [            ] [       ] [   80] Spring AOP
>>>>>>>>>>> (3.0.7.RELEASE)
>>>>>>>>>>> [  82] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Context (3.0.7.RELEASE)
>>>>>>>>>>> [  83] [Active     ] [            ] [       ] [   80] jettison
>>>>>>>>>>> (1.1)
>>>>>>>>>>> [  84] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Core (3.0.7.RELEASE)
>>>>>>>>>>> [  85] [Active     ] [            ] [       ] [   80] Spring
>>>>>>>>>>> Batch Core (2.1.8.RELEASE)
>>>>>>>>>>> [  93] [Active     ] [            ] [Failed ] [   80]
>>>>>>>>>>> spring-batch-demo-trc (1.0.0.SNAPSHOT)
>>>>>>>>>>>
>>>>>>>>>>> Can anyone please help?
>>>>>>>>>>>
>>>>>>>>>>> Regards,
>>>>>>>>>>>
>>>>>>>>>>> J.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Charles Moulliard
>>>>>>>>>> Apache Committer / Sr. Pr. Consultant at FuseSource.com
>>>>>>>>>> Twitter : @cmoulliard
>>>>>>>>>> Blog : http://cmoulliard.blogspot.com
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Charles Moulliard
>>>>>>>> Apache Committer / Sr. Pr. Consultant at FuseSource.com
>>>>>>>> Twitter : @cmoulliard
>>>>>>>> Blog : http://cmoulliard.blogspot.com
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Charles Moulliard
>>>>>> Apache Committer / Sr. Pr. Consultant at FuseSource.com
>>>>>> Twitter : @cmoulliard
>>>>>> Blog : http://cmoulliard.blogspot.com
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Charles Moulliard
>>>> Apache Committer / Sr. Pr. Consultant at FuseSource.com
>>>> Twitter : @cmoulliard
>>>> Blog : http://cmoulliard.blogspot.com
>>>>
>>>>
>>>>
>>>
>>
>>
>> --
>> Charles Moulliard
>> Apache Committer / Sr. Pr. Consultant at FuseSource.com
>> Twitter : @cmoulliard
>> Blog : http://cmoulliard.blogspot.com
>>
>>
>>
>


-- 
Charles Moulliard
Apache Committer / Sr. Pr. Consultant at FuseSource.com
Twitter : @cmoulliard
Blog : http://cmoulliard.blogspot.com

Reply via email to