[CDO] Using HSQLDB with CDO 4.2 [message #1034445] |
Fri, 05 April 2013 12:42 |
|
Hi everyone,
I'm creating a product that allows to launch a cdo server with all
supported back-ends. It worked well with CDO 4.0.X, but now I'm trying
to move to CDO 4.2 and when I launch a HSQLDB-based server configuration
I encounter the following issue:
[ERROR] org/hsqldb/jdbc/JDBCDataSource
java.lang.NoClassDefFoundError: org/hsqldb/jdbc/JDBCDataSource
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188)
at
org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClassHoldingLock(ClasspathManager.java:632)
at
org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:614)
at
org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:568)
at
org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:492)
at
org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:465)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
at
org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:395)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:464)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
at
org.eclipse.osgi.internal.loader.buddy.RegisteredPolicy.loadClass(RegisteredPolicy.java:79)
at
org.eclipse.osgi.internal.loader.buddy.PolicyHandler.doBuddyClassLoading(PolicyHandler.java:135)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:489)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
at
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
at
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.eclipse.net4j.util.ReflectUtil.instantiate(ReflectUtil.java:436)
at org.eclipse.net4j.db.DBUtil.createDataSource(DBUtil.java:157)
at org.eclipse.net4j.db.DBUtil.createDataSource(DBUtil.java:150)
at org.eclipse.net4j.db.DBUtil.createDataSource(DBUtil.java:145)
at
org.eclipse.emf.cdo.server.internal.db.DBStoreFactory.getDataSource(DBStoreFactory.java:128)
I originally though that this was due to my build, but I get all the
back-ends from the net4j update site http://net4j.sourceforge.net/update
and it works like a charm for other back-ends contained in this update
site (e.g. MySQL).
Then I took a look at my server configuration file, and indeed the
datasource may be incorrect:
<dataSource
class="org.eclipse.net4j.db.hsqldb.HSQLDBDataSource"
This configuration file worked well with a CDO 4.0-based cdoserver,
should I change it for CDO 4.2 or am I missing something here?
Best regards,
Alex Lagarde (Morel)
|
|
|
Re: [CDO] Using HSQLDB with CDO 4.2 [message #1034448 is a reply to message #1034445] |
Fri, 05 April 2013 12:46 |
|
I have a similar issue with Derby so this is definitely related to my
build system :
[ERROR] java.lang.ClassNotFoundException:
org.apache.derby.jdbc.EmbeddedDataSource
org.eclipse.net4j.db.DBException: java.lang.ClassNotFoundException:
org.apache.derby.jdbc.EmbeddedDataSource
at org.eclipse.net4j.db.DBUtil.createDataSource(DBUtil.java:161)
at org.eclipse.net4j.db.DBUtil.createDataSource(DBUtil.java:150)
at org.eclipse.net4j.db.DBUtil.createDataSource(DBUtil.java:145)
at
org.eclipse.emf.cdo.server.internal.db.DBStoreFactory.getDataSource(DBStoreFactory.java:128)
at
org.eclipse.emf.cdo.server.internal.db.DBStoreFactory.createStore(DBStoreFactory.java:53)
at
org.eclipse.emf.cdo.spi.server.RepositoryConfigurator.createStore(RepositoryConfigurator.java:370)
at
org.eclipse.emf.cdo.spi.server.RepositoryConfigurator.getRepository(RepositoryConfigurator.java:169)
at
org.eclipse.emf.cdo.spi.server.RepositoryConfigurator.configure(RepositoryConfigurator.java:111)
at
org.eclipse.emf.cdo.internal.server.bundle.CDOServerApplication.doStart(CDOServerApplication.java:61)
at org.eclipse.net4j.util.om.OSGiApplication.start(OSGiApplication.java:63)
What net4j update site should I use to build a CDO 4.2 server ?
Best regards,
Alex
|
|
|
Re: [CDO] Using HSQLDB with CDO 4.2 [message #1034452 is a reply to message #1034445] |
Fri, 05 April 2013 12:53 |
|
Am 05.04.2013 14:42, schrieb Alex Lagarde:
> Hi everyone,
>
> I'm creating a product that allows to launch a cdo server with all supported back-ends. It worked well with CDO 4.0.X,
> but now I'm trying to move to CDO 4.2 and when I launch a HSQLDB-based server configuration I encounter the following
> issue:
>
>
> [ERROR] org/hsqldb/jdbc/JDBCDataSource
> java.lang.NoClassDefFoundError: org/hsqldb/jdbc/JDBCDataSource
I think this might be caused by:
398167: [DB] Remove JDBC driver dependencies from DBAdapter bundles
https://bugs.eclipse.org/bugs/show_bug.cgi?id=398167
Are you sure that the HSQLDB driver bundle is properly deployed?
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
> at java.lang.ClassLoader.defineClass1(Native Method)
> at java.lang.ClassLoader.defineClass(Unknown Source)
> at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188)
> at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClassHoldingLock(ClasspathManager.java:632)
> at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:614)
> at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:568)
> at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:492)
> at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:465)
> at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
> at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:395)
> at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:464)
> at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
> at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
> at org.eclipse.osgi.internal.loader.buddy.RegisteredPolicy.loadClass(RegisteredPolicy.java:79)
> at org.eclipse.osgi.internal.loader.buddy.PolicyHandler.doBuddyClassLoading(PolicyHandler.java:135)
> at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:489)
> at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
> at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
> at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
> at java.lang.ClassLoader.loadClass(Unknown Source)
> at org.eclipse.net4j.util.ReflectUtil.instantiate(ReflectUtil.java:436)
> at org.eclipse.net4j.db.DBUtil.createDataSource(DBUtil.java:157)
> at org.eclipse.net4j.db.DBUtil.createDataSource(DBUtil.java:150)
> at org.eclipse.net4j.db.DBUtil.createDataSource(DBUtil.java:145)
> at org.eclipse.emf.cdo.server.internal.db.DBStoreFactory.getDataSource(DBStoreFactory.java:128)
>
>
> I originally though that this was due to my build, but I get all the back-ends from the net4j update site
> http://net4j.sourceforge.net/update and it works like a charm for other back-ends contained in this update site (e.g.
> MySQL).
>
> Then I took a look at my server configuration file, and indeed the datasource may be incorrect:
> <dataSource class="org.eclipse.net4j.db.hsqldb.HSQLDBDataSource"
>
> This configuration file worked well with a CDO 4.0-based cdoserver, should I change it for CDO 4.2 or am I missing
> something here?
>
>
> Best regards,
> Alex Lagarde (Morel)
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: [CDO] Using HSQLDB with CDO 4.2 [message #1034496 is a reply to message #1034452] |
Fri, 05 April 2013 13:52 |
|
Hi Eike,
thanks for your fast answer !
Here are the plugins related to HSQLDB I have in my built product:
- org.hsqldb_1.8.0.v20110215-0651.jar
- org.eclipse.net4j.db_4.2.0.v20130115-1033.jar
- org.eclipse.net4j.db.hsqldb_4.2.0.v20130116-0901.jar
- org.eclipse.emf.cdo_4.2.0.v20130314-1120.jar
- org.eclipse.emf.cdo.server_4.2.0.v20130126-0958.jar
- org.eclipse.emf.cdo.server.net4j_4.1.0.v20130112-1217.jar
- org.eclipse.emf.cdo.server.db_4.2.0.v20130125-0507.jar
Is something seem wrong to you here ?
Another regression I have: my .product is defined with :
- the org.eclipse.emf.cdo.server.product product
- the org.eclipse.emf.cdo.server.app application
In the 4.0 version, when launching the executable I had access to an
osgi console that allowed me to list branches, locks...
But with 4.2, I don't have access to the osgi console anymore (juste a
plain text console). Should I use a new product/application or modify my
product ?
Best regards,
Alex
|
|
|
Re: [CDO] Using HSQLDB with CDO 4.2 [message #1035018 is a reply to message #1034496] |
Sat, 06 April 2013 07:17 |
|
Am 05.04.2013 15:52, schrieb Alex Lagarde:
> Hi Eike,
>
> thanks for your fast answer !
>
> Here are the plugins related to HSQLDB I have in my built product:
> - org.hsqldb_1.8.0.v20110215-0651.jar
> - org.eclipse.net4j.db_4.2.0.v20130115-1033.jar
> - org.eclipse.net4j.db.hsqldb_4.2.0.v20130116-0901.jar
> - org.eclipse.emf.cdo_4.2.0.v20130314-1120.jar
> - org.eclipse.emf.cdo.server_4.2.0.v20130126-0958.jar
> - org.eclipse.emf.cdo.server.net4j_4.1.0.v20130112-1217.jar
> - org.eclipse.emf.cdo.server.db_4.2.0.v20130125-0507.jar
>
> Is something seem wrong to you here ?
That looks correct. I fear I need to try that out myself. Please submit a bugzilla.
>
> Another regression I have: my .product is defined with :
> - the org.eclipse.emf.cdo.server.product product
> - the org.eclipse.emf.cdo.server.app application
>
> In the 4.0 version, when launching the executable I had access to an osgi console that allowed me to list branches,
> locks...
>
>
> But with 4.2, I don't have access to the osgi console anymore (juste a plain text console). Should I use a new
> product/application or modify my product ?
I can't remember any changes to CDO in this context, so maybe it's related to the Felix Gogo Shell that had been
introduced into the Platform some time ago? When I run a CDOServerApplication through the shipped launch config I get
the normal OSGi console.
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Re: [CDO] Using HSQLDB with CDO 4.2 [message #1036316 is a reply to message #1035018] |
Mon, 08 April 2013 08:19 |
|
Hi Eike,
as always thanks a lot for your help, answers inline:
Le 06/04/2013 09:17, Eike Stepper a écrit :
> Am 05.04.2013 15:52, schrieb Alex Lagarde:
>> Hi Eike,
>>
>> thanks for your fast answer !
>>
>> Here are the plugins related to HSQLDB I have in my built product:
>> - org.hsqldb_1.8.0.v20110215-0651.jar
>> - org.eclipse.net4j.db_4.2.0.v20130115-1033.jar
>> - org.eclipse.net4j.db.hsqldb_4.2.0.v20130116-0901.jar
>> - org.eclipse.emf.cdo_4.2.0.v20130314-1120.jar
>> - org.eclipse.emf.cdo.server_4.2.0.v20130126-0958.jar
>> - org.eclipse.emf.cdo.server.net4j_4.1.0.v20130112-1217.jar
>> - org.eclipse.emf.cdo.server.db_4.2.0.v20130125-0507.jar
>>
>> Is something seem wrong to you here ?
> That looks correct. I fear I need to try that out myself. Please submit
> a bugzilla.
Done : https://bugs.eclipse.org/bugs/show_bug.cgi?id=405131
>
>>
>> Another regression I have: my .product is defined with :
>> - the org.eclipse.emf.cdo.server.product product
>> - the org.eclipse.emf.cdo.server.app application
>>
>> In the 4.0 version, when launching the executable I had access to an
>> osgi console that allowed me to list branches, locks...
>>
>>
>> But with 4.2, I don't have access to the osgi console anymore (juste a
>> plain text console). Should I use a new product/application or modify
>> my product ?
> I can't remember any changes to CDO in this context, so maybe it's
> related to the Felix Gogo Shell that had been introduced into the
> Platform some time ago? When I run a CDOServerApplication through the
> shipped launch config I get the normal OSGi console.
I'll try to investigate this issue
>
> Cheers
> /Eike
>
> ----
> http://www.esc-net.de
> http://thegordian.blogspot.com
> http://twitter.com/eikestepper
>
>
Best Regards,
Alex
|
|
|
Re: [CDO] Using HSQLDB with CDO 4.2 [message #1036482 is a reply to message #1036316] |
Mon, 08 April 2013 12:41 |
|
Hi Eike,
just FYI, in regards to the OSGI console, CDO is not involved at all.
I just had to explicitelly add dependencies from by product to the
org.eclipse.equinox.console and org.apache.felix.gogo.shell plugins to
get it back.
Best regards,
Alex
|
|
|
Powered by
FUDForum. Page generated in 0.04052 seconds