felix-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christian Schneider <ch...@die-schneider.net>
Subject Re: Connect a bundle to a data base
Date Thu, 22 Mar 2012 12:29:44 GMT
Some questions /remarks:

Why do you use <manifestLocation> and <_removeheaders>? I never used 
those till now.
I think you do not have to export any packages as you just provide a 
service.

Do you initialize the DataSource in java code? If yes then you probably 
do not need any dynamic imports and you typically do not need to define 
Import-Package as the plugin normally does the correct thing.

Can you upload your whole project somewhere?

Christian





Am 22.03.2012 11:50, schrieb elMateo:
> This is an extract of my pom file:
>
>             <plugin>
> <groupId>org.apache.felix</groupId>
> <artifactId>maven-bundle-plugin</artifactId>
> <extensions>true</extensions>
> <configuration>
> <manifestLocation>META-INF</manifestLocation>
> <instructions>
> <_removeheaders>Ignore-Package</_removeheaders>
> <Bundle-SymbolicName>bundleDBConnector</Bundle-SymbolicName>
> <Bundle-Name>bundleDBConnector</Bundle-Name>
> <Bundle-Activator>com.database.bundle.Activator</Bundle-Activator>
> <Export-Package>com.database.bundle;-split-package:=merge-last</Export-Package>
> <Import-Package>org.osgi.framework</Import-Package>
> <DynamicImport-Package>javax.sql.*,com.mysql.jdbc.jdbc2.optional.*</DynamicImport-Package>
> </instructions>
> </configuration>
> </plugin>
>
> Is it correct?? Uff, still it appears the same exception :(
>
> On Thu, Mar 22, 2012 at 10:23 AM, elMateo<soyelmateo@gmail.com>  wrote:
>
>> Yes, I'm developing my application with Maven. I'm going to read this
>> tutorial. Maybe I'm doing something wrong
>>
>>
>> On Wed, Mar 21, 2012 at 7:43 PM, Christian Schneider<
>> chris@die-schneider.net>  wrote:
>>
>>> In the bundle that creates the DataSource you have to have an
>>> Import-Package statement in the Manifest for each package you use.
>>> So at least com.mysql.jdbc.optional and javax.sql.DataSource. It is quite
>>> hard to do that by hand. If you use maven to build your bundle then
>>> you should use the maven bundle plugin which analyzes your java code and
>>> creates the necessary statements for the Manifest.
>>>
>>> In this tutorial I describe how to do it:
>>> http://www.liquid-reality.de/**display/liquid/2011/02/15/**
>>> Karaf+Tutorial+Part+1+-+**Installation+and+First+**application<http://www.liquid-reality.de/display/liquid/2011/02/15/Karaf+Tutorial+Part+1+-+Installation+and+First+application>
>>>
>>> The tutorial is about karaf but the bundle creation is the same if you
>>> use pure felix. Only the deployment may be different.
>>>
>>> Christian
>>>
>>>
>>> Am 21.03.2012 18:35, schrieb elMateo:
>>>
>>>> I'm struggling with this exception of
>>>> Apache java.lang.**NoClassDefFoundError:
>>>> com/mysql/jdbc/jdbc2/optional/**MysqlDataSource. Because I have the
>>>> MySQL
>>>> Connect/J bundle running in Apache Felix. Sometimes I have another
>>>> exception, java.lang.**NoClassDefFoundError: javax/sql/DataSource, and I
>>>> don't know why :(
>>>>
>>>> On Wed, Mar 21, 2012 at 5:20 PM, Christian Schneider<
>>>> chris@die-schneider.net>   wrote:
>>>>
>>>>   The solution described by Neil should allow that and should be easy to
>>>>> implement. Using the service to connect your other bundles to the
>>>>> datasource even makes them
>>>>> very indepentent of the implementation of the "bridge bundle". A user
>>>>> bundle could import the DataSource from my solution with blueprint or
>>>>> the
>>>>> handwritten java bridge bundle
>>>>> and would not have to be changed in any way.
>>>>>
>>>>> What exactly are you struggling with?
>>>>>
>>>>> Christian
>>>>>
>>>>> Am 21.03.2012 15:43, schrieb elMateo:
>>>>>
>>>>>   What I want it's only a bundle that work as a bridge to  whatever
>>>>>
>>>>>> database.
>>>>>> The other bundles access to this one to retrieve any information
from
>>>>>> external databases. But I don't get this :(
>>>>>>
>>>>>> On Wed, Mar 21, 2012 at 2:38 PM, Donald Whytock<dwhytock@gmail.com>
>>>>>>   wrote:
>>>>>>
>>>>>>   What you probably want in the long run is a datasource-generating
>>>>>>
>>>>>>> service, to which you pass the database URI.  You can put things
in
>>>>>>> the properties of the service to indicate whether it's Oracle,
mySQL,
>>>>>>> MSSQL, etc., so that you can have multiple generating services
at the
>>>>>>> same time.
>>>>>>>
>>>>>>> Don
>>>>>>>
>>>>>>> ------------------------------****----------------------------**--**
>>>>>>> ---------
>>>>>>> To unsubscribe, e-mail: users-unsubscribe@felix.**apac**he.org<http://apache.org>
>>>>>>> <users-unsubscribe@**felix.apache.org<users-unsubscribe@felix.apache.org>
>>>>>>> For additional commands, e-mail: users-help@felix.apache.org
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>   --
>>>>> Christian Schneider
>>>>> http://www.liquid-reality.de
>>>>>
>>>>> Open Source Architect
>>>>> Talend Application Integration Division http://www.talend.com
>>>>>
>>>>>
>>>>> ------------------------------****----------------------------**
>>>>> --**---------
>>>>> To unsubscribe, e-mail: users-unsubscribe@felix.**apac**he.org<http://apache.org>
>>>>> <users-unsubscribe@**felix.apache.org<users-unsubscribe@felix.apache.org>
>>>>> For additional commands, e-mail: users-help@felix.apache.org
>>>>>
>>>>>
>>>>>
>>> --
>>> Christian Schneider
>>> http://www.liquid-reality.de
>>>
>>> Open Source Architect
>>> Talend Application Integration Division http://www.talend.com
>>>
>>>
>>> ------------------------------**------------------------------**---------
>>> To unsubscribe, e-mail: users-unsubscribe@felix.**apache.org<users-unsubscribe@felix.apache.org>
>>> For additional commands, e-mail: users-help@felix.apache.org
>>>
>>>


-- 
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
Talend Application Integration Division http://www.talend.com


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
For additional commands, e-mail: users-help@felix.apache.org


Mime
View raw message