felix-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From elMateo <soyelma...@gmail.com>
Subject Re: Connect a bundle to a data base
Date Thu, 22 Mar 2012 14:56:18 GMT
ManifestLocation is for indicate exactly where is the manisfest file.
 Removeheader is used for one of the test to try the application, it isn't
important.

On Thu, Mar 22, 2012 at 1:29 PM, Christian Schneider <
chris@die-schneider.net> wrote:

> 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.
>

Ok, I'm going to test this.

>
> 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.
>
Yes, I do this: DataSource dataSource = new
com.mysql.jdbc.jdbc2.optional.MysqlDataSource();

>
> Can you upload your whole project somewhere?
>

Sorry, I don't have any server to upload my project. But my Activator class
only do this:

                  DataSource dataSource = new
com.mysql.jdbc.jdbc2.optional.MysqlDataSource();
                  registration =
bc.registerService(DataSource.class.getName(), dataSource, null);

And when I start the bundle, Apache Felix show me exceptions write above.

Thanks a lot for yours answers :) !

>
> 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/**<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<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 <http://felix.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 <http://felix.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
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message