You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by dsaraswa <de...@hotmail.com> on 2011/08/30 16:06:39 UTC
Hibernate bundle is not able to find Oracle JDBC driver in OSGI
Hi,
I am developing an application where I am using Hibernate to query the DB. I
have successfully deployed my application bundle as well as hibernate.
However, in run time hibernate is not able to fund the Oracle JDBC driver
class. I am using Felix to create a bundle.Any suggestion how to fix this.
Here is the stack trace for your reference. Thanks for the help in advance.
Regards,
Deepak
16:21:12,160 | INFO | xtenderThread-12 | DriverManagerConnectionProvider |
235 - com.springsource.org.hibernate - 3.3.2.GA | Hibernate connection pool
size: 2016:21:12,160 | INFO | xtenderThread-12 |
DriverManagerConnectionProvider | 235 - com.springsource.org.hibernate -
3.3.2.GA | autocommit mode: false16:21:12,160 | ERROR | xtenderThread-12 |
DriverManagerConnectionProvider | 235 - com.springsource.org.hibernate -
3.3.2.GA | JDBC Driver class not found:
oracle.jdbc.driver.OracleDriverjava.lang.ClassNotFoundException:
oracle.jdbc.driver.OracleDriver not found by com.springsource.org.hibernate
[235]at
org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)at
org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)at
org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1806)at
java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_26]at
java.lang.Class.forName0(Native Method)[:1.6.0_26]at
java.lang.Class.forName(Class.java:169)[:1.6.0_26]at
org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:192)at
org.hibernate.connection.DriverManagerConnectionProvider.configure(DriverManagerConnectionProvider.java:84)at
org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:137)at
org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:79)at
org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:425)[235:com.springsource.org.hibernate:3.3.2.GA]at
org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:89)[235:com.springsource.org.hibernate:3.3.2.GA]at
org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2119)[235:com.springsource.org.hibernate:3.3.2.GA]at
org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2115)[235:com.springsource.org.hibernate:3.3.2.GA]at
org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1339)[235:com.springsource.org.hibernate:3.3.2.GA]at
org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)[235:com.springsource.org.hibernate:3.3.2.GA]at
com.cisco.hcm.sa.dminventory.model.DMMappingDAOImpl.getSessionFactory(DMMappingDAOImpl.java:67)[224:cdm-dm-sync:2.0.0.M1-SNAPSHOT]at
com.cisco.hcm.sa.dminventory.model.DMMappingDAOImpl.setStatus(DMMappingDAOImpl.java:142)[224:cdm-dm-sync:2.0.0.M1-SNAPSHOT]at
com.cisco.hcm.sa.dbsync.CDM_DMDatabaseSync.init(CDM_DMDatabaseSync.java:98)[224:cdm-dm-sync:2.0.0.M1-SNAPSHOT]at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.6.0_26]at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:1.6.0_26]at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_26]at
java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_26]at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1544)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1485)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)[70:org.springframework.context:3.0.5.RELEASE]at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.access$1600(AbstractDelegatedExecutionApplicationContext.java:69)[82:org.springframework.osgi.core:1.2.1]at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:355)[82:org.springframework.osgi.core:1.2.1]at
org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)[82:org.springframework.osgi.core:1.2.1]at
org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:320)[82:org.springframework.osgi.core:1.2.1]at
org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:132)[85:org.springframework.osgi.extender:1.2.1]at
java.lang.Thread.run(Thread.java:662)[:1.6.0_26]16:21:12,166 | INFO |
xtenderThread-12 | DefaultListableBeanFactory | 68 -
org.springframework.beans - 3.0.5.RELEASE | Destroying singletons in
org.springframework.beans.factory.support.DefaultListableBeanFactory@3f8c2858:
defining beans [cdm-dm-sync,cdmDataSource,hcmsaDataSource,cdmDAO]; root of
factory hierarchy16:21:12,166 | ERROR | xtenderThread-12 |
ContextLoaderListener | 85 - org.springframework.osgi.extender - 1.2.1 |
Application context refresh failed
(OsgiBundleXmlApplicationContext(bundle=cdm-dm-sync,
config=osgibundle:/META-INF/spring/*.xml))org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'cdm-dm-sync' defined in URL
[bundle://224.0:0/META-INF/spring/spring-config.xml]: Invocation of init
method failed; nested exception is org.hibernate.HibernateException: JDBC
Driver class not found: oracle.jdbc.driver.OracleDriverat
va:1485)[68:org.springframework.beans:3.0.5.RELEASE]at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417)[68:org.springframework.beans:3.0.5.RELEASE]...
14 moreCaused by: java.lang.ClassNotFoundException:
oracle.jdbc.driver.OracleDriver not found by com.springsource.org.hibernate
[235]at
org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)at
org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)at
org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1806)at
java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_26]at
java.lang.Class.forName0(Native Method)[:1.6.0_26]at
java.lang.Class.forName(Class.java:169)[:1.6.0_26]at
org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:192)at
org.hibernate.connection.DriverManagerConnectionProvider.configure(DriverManagerConnectionProvider.java:84)...
32 more
--
View this message in context: http://servicemix.396122.n5.nabble.com/Hibernate-bundle-is-not-able-to-find-Oracle-JDBC-driver-in-OSGI-tp4750168p4750168.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.
RE: Hibernate bundle is not able to find Oracle JDBC driver in OSGI
Posted by dsaraswa <de...@hotmail.com>.
Thanks Freeman for the reply. I created a Fragment bundle as suggested by you. However, I am still not able to make it working I am not sure what is the problem. Here is the MANIFEST.MF file for your reference.
Manifest-Version: 1.0
Built-By: dsaraswa
Tool: Bnd-0.0.357
Bundle-Name: Oracle Driver Fragment
Created-By: Apache Maven Bundle Plugin
Bundle-Vendor: FuseSource
Fragment-Host: com.springsource.org.hibernate
Build-Jdk: 1.6.0_26
Bundle-Version: 1.0.0
Bnd-LastModified: 1314949073848
Bundle-ManifestVersion: 2
Bundle-Description: This pom provides project information that is comm
on to all ServiceMix branches.
Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt
Bundle-SymbolicName: dbcp-oracle-fragment
Bundle-DocURL: http://fusesource.com/
Import-Package: oracle.jdbc.driver
I have put the Bundle-SymbolicName: com.springsource.org.hibernate as the Fragment Host in my MANIFEST.MF file. This is the service where I have a Class loading exception coming.
at java.lang.Thread.run(Thread.java:662)
Caused by: org.hibernate.HibernateException: JDBC Driver class not found: oracle.jdbc.driver.OracleDriver
at org.hibernate.connection.DriverManagerConnectionProvider.configure(DriverManagerConnectionProvider.java:89)
at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:137
at org.hibernate.connection.ConnectionProviderFactory.newConnectionProvider(ConnectionProviderFactory.java:79)
at org.hibernate.cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:425)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:89)
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2119)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2115)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1339)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
Deepak Saraswat
Date: Tue, 30 Aug 2011 17:53:40 -0700
From: ml-node+4752457-134793227-248273@n5.nabble.com
To: deepak_saraswat@hotmail.com
Subject: Re: Hibernate bundle is not able to find Oracle JDBC driver in OSGI
Hi,
Please take a look at this link[1] to get more details why JDBC driver
can't be found in OSGi container and also the suggested solution there.
[1]http://fusesource.com/forums/thread.jspa?messageID=9780☴
Freeman
On 2011-8-30, at 下午10:06, dsaraswa wrote:
> Hi,
>
> I am developing an application where I am using Hibernate to query
> the DB. I
> have successfully deployed my application bundle as well as hibernate.
> However, in run time hibernate is not able to fund the Oracle JDBC
> driver
> class. I am using Felix to create a bundle.Any suggestion how to
> fix this.
>
> Here is the stack trace for your reference. Thanks for the help in
> advance.
>
> Regards,
> Deepak
>
>
>
> 16:21:12,160 | INFO | xtenderThread-12 |
> DriverManagerConnectionProvider |
> 235 - com.springsource.org.hibernate - 3.3.2.GA | Hibernate
> connection pool
> size: 2016:21:12,160 | INFO | xtenderThread-12 |
> DriverManagerConnectionProvider | 235 -
> com.springsource.org.hibernate -
> 3.3.2.GA | autocommit mode: false16:21:12,160 | ERROR |
> xtenderThread-12 |
> DriverManagerConnectionProvider | 235 -
> com.springsource.org.hibernate -
> 3.3.2.GA | JDBC Driver class not found:
> oracle.jdbc.driver.OracleDriverjava.lang.ClassNotFoundException:
> oracle.jdbc.driver.OracleDriver not found by
> com.springsource.org.hibernate
> [235]at
> org
> .apache
> .felix
> .framework
> .ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)at
> org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)at
> org.apache.felix.framework.ModuleImpl
> $ModuleClassLoader.loadClass(ModuleImpl.java:1806)at
> java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_26]at
> java.lang.Class.forName0(Native Method)[:1.6.0_26]at
> java.lang.Class.forName(Class.java:169)[:1.6.0_26]at
> org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:
> 192)at
> org
> .hibernate
> .connection
> .DriverManagerConnectionProvider
> .configure(DriverManagerConnectionProvider.java:84)at
> org
> .hibernate
> .connection
> .ConnectionProviderFactory
> .newConnectionProvider(ConnectionProviderFactory.java:137)at
> org
> .hibernate
> .connection
> .ConnectionProviderFactory
> .newConnectionProvider(ConnectionProviderFactory.java:79)at
> org
> .hibernate
> .cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:
> 425)[235:com.springsource.org.hibernate:3.3.2.GA]at
> org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:
> 89)[235:com.springsource.org.hibernate:3.3.2.GA]at
> org
> .hibernate
> .cfg.Configuration.buildSettingsInternal(Configuration.java:2119)
> [235:com.springsource.org.hibernate:3.3.2.GA]at
> org.hibernate.cfg.Configuration.buildSettings(Configuration.java:
> 2115)[235:com.springsource.org.hibernate:3.3.2.GA]at
> org
> .hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:
> 1339)[235:com.springsource.org.hibernate:3.3.2.GA]at
> org
> .hibernate
> .cfg
> .AnnotationConfiguration
> .buildSessionFactory(AnnotationConfiguration.java:867)
> [235:com.springsource.org.hibernate:3.3.2.GA]at
> com
> .cisco
> .hcm
> .sa
> .dminventory
> .model.DMMappingDAOImpl.getSessionFactory(DMMappingDAOImpl.java:67)
> [224:cdm-dm-sync:2.0.0.M1-SNAPSHOT]at
> com
> .cisco
> .hcm
> .sa
> .dminventory.model.DMMappingDAOImpl.setStatus(DMMappingDAOImpl.java:
> 142)[224:cdm-dm-sync:2.0.0.M1-SNAPSHOT]at
> com
> .cisco.hcm.sa.dbsync.CDM_DMDatabaseSync.init(CDM_DMDatabaseSync.java:
> 98)[224:cdm-dm-sync:2.0.0.M1-SNAPSHOT]at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:
> 1.6.0_26]at
> sun
> .reflect
> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:
> 1.6.0_26]at
> sun
> .reflect
> .DelegatingMethodAccessorImpl
> .invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_26]at
> java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_26]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1544)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1485)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .initializeBean(AbstractAutowireCapableBeanFactory.java:1417)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .createBean(AbstractAutowireCapableBeanFactory.java:456)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org.springframework.beans.factory.support.AbstractBeanFactory
> $1.getObject(AbstractBeanFactory.java:291)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .DefaultSingletonBeanRegistry
> .getSingleton(DefaultSingletonBeanRegistry.java:222)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .DefaultListableBeanFactory
> .preInstantiateSingletons(DefaultListableBeanFactory.java:580)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .context
> .support
> .AbstractApplicationContext
> .finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
> [70:org.springframework.context:3.0.5.RELEASE]at
> org
> .springframework
> .osgi
> .context.support.AbstractDelegatedExecutionApplicationContext.access
> $1600(AbstractDelegatedExecutionApplicationContext.java:69)
> [82:org.springframework.osgi.core:1.2.1]at
> org
> .springframework
> .osgi.context.support.AbstractDelegatedExecutionApplicationContext
> $4.run(AbstractDelegatedExecutionApplicationContext.java:355)
> [82:org.springframework.osgi.core:1.2.1]at
> org
> .springframework
> .osgi
> .util
> .internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:
> 85)[82:org.springframework.osgi.core:1.2.1]at
> org
> .springframework
> .osgi
> .context
> .support
> .AbstractDelegatedExecutionApplicationContext
> .completeRefresh(AbstractDelegatedExecutionApplicationContext.java:
> 320)[82:org.springframework.osgi.core:1.2.1]at
> org
> .springframework
> .osgi
> .extender
> .internal
> .dependencies.startup.DependencyWaiterApplicationContextExecutor
> $
> CompleteRefreshTask
> .run(DependencyWaiterApplicationContextExecutor.java:132)
> [85:org.springframework.osgi.extender:1.2.1]at
> java.lang.Thread.run(Thread.java:662)[:1.6.0_26]16:21:12,166 | INFO |
> xtenderThread-12 | DefaultListableBeanFactory | 68 -
> org.springframework.beans - 3.0.5.RELEASE | Destroying singletons in
> org
> .springframework
> .beans.factory.support.DefaultListableBeanFactory@3f8c2858:
> defining beans [cdm-dm-sync,cdmDataSource,hcmsaDataSource,cdmDAO];
> root of
> factory hierarchy16:21:12,166 | ERROR | xtenderThread-12 |
> ContextLoaderListener | 85 - org.springframework.osgi.extender -
> 1.2.1 |
> Application context refresh failed
> (OsgiBundleXmlApplicationContext(bundle=cdm-dm-sync,
> config=osgibundle:/META-INF/spring/
> *.xml))org.springframework.beans.factory.BeanCreationException:
> Error creating bean with name 'cdm-dm-sync' defined in URL
> [bundle://224.0:0/META-INF/spring/spring-config.xml]: Invocation of
> init
> method failed; nested exception is org.hibernate.HibernateException:
> JDBC
> Driver class not found: oracle.jdbc.driver.OracleDriverat
> va:1485)[68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .initializeBean(AbstractAutowireCapableBeanFactory.java:1417)
> [68:org.springframework.beans:3.0.5.RELEASE]...
> 14 moreCaused by: java.lang.ClassNotFoundException:
> oracle.jdbc.driver.OracleDriver not found by
> com.springsource.org.hibernate
> [235]at
> org
> .apache
> .felix
> .framework
> .ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)at
> org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)at
> org.apache.felix.framework.ModuleImpl
> $ModuleClassLoader.loadClass(ModuleImpl.java:1806)at
> java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_26]at
> java.lang.Class.forName0(Native Method)[:1.6.0_26]at
> java.lang.Class.forName(Class.java:169)[:1.6.0_26]at
> org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:
> 192)at
> org
> .hibernate
> .connection
> .DriverManagerConnectionProvider
> .configure(DriverManagerConnectionProvider.java:84)...
> 32 more
>
> --
> View this message in context: http://servicemix.396122.n5.nabble.com/Hibernate-bundle-is-not-able-to-find-Oracle-JDBC-driver-in-OSGI-tp4750168p4750168.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
---------------------------------------------
Freeman Fang
FuseSource
Email:[hidden email]
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
If you reply to this email, your message will be added to the discussion below:http://servicemix.396122.n5.nabble.com/Hibernate-bundle-is-not-able-to-find-Oracle-JDBC-driver-in-OSGI-tp4750168p4752457.html
To unsubscribe from Hibernate bundle is not able to find Oracle JDBC driver in OSGI, click here.
--
View this message in context: http://servicemix.396122.n5.nabble.com/Hibernate-bundle-is-not-able-to-find-Oracle-JDBC-driver-in-OSGI-tp4750168p4761697.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.
Re: Hibernate bundle is not able to find Oracle JDBC driver in OSGI
Posted by Freeman Fang <fr...@gmail.com>.
Hi,
Please take a look at this link[1] to get more details why JDBC driver
can't be found in OSGi container and also the suggested solution there.
[1]http://fusesource.com/forums/thread.jspa?messageID=9780☴
Freeman
On 2011-8-30, at 下午10:06, dsaraswa wrote:
> Hi,
>
> I am developing an application where I am using Hibernate to query
> the DB. I
> have successfully deployed my application bundle as well as hibernate.
> However, in run time hibernate is not able to fund the Oracle JDBC
> driver
> class. I am using Felix to create a bundle.Any suggestion how to
> fix this.
>
> Here is the stack trace for your reference. Thanks for the help in
> advance.
>
> Regards,
> Deepak
>
>
>
> 16:21:12,160 | INFO | xtenderThread-12 |
> DriverManagerConnectionProvider |
> 235 - com.springsource.org.hibernate - 3.3.2.GA | Hibernate
> connection pool
> size: 2016:21:12,160 | INFO | xtenderThread-12 |
> DriverManagerConnectionProvider | 235 -
> com.springsource.org.hibernate -
> 3.3.2.GA | autocommit mode: false16:21:12,160 | ERROR |
> xtenderThread-12 |
> DriverManagerConnectionProvider | 235 -
> com.springsource.org.hibernate -
> 3.3.2.GA | JDBC Driver class not found:
> oracle.jdbc.driver.OracleDriverjava.lang.ClassNotFoundException:
> oracle.jdbc.driver.OracleDriver not found by
> com.springsource.org.hibernate
> [235]at
> org
> .apache
> .felix
> .framework
> .ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)at
> org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)at
> org.apache.felix.framework.ModuleImpl
> $ModuleClassLoader.loadClass(ModuleImpl.java:1806)at
> java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_26]at
> java.lang.Class.forName0(Native Method)[:1.6.0_26]at
> java.lang.Class.forName(Class.java:169)[:1.6.0_26]at
> org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:
> 192)at
> org
> .hibernate
> .connection
> .DriverManagerConnectionProvider
> .configure(DriverManagerConnectionProvider.java:84)at
> org
> .hibernate
> .connection
> .ConnectionProviderFactory
> .newConnectionProvider(ConnectionProviderFactory.java:137)at
> org
> .hibernate
> .connection
> .ConnectionProviderFactory
> .newConnectionProvider(ConnectionProviderFactory.java:79)at
> org
> .hibernate
> .cfg.SettingsFactory.createConnectionProvider(SettingsFactory.java:
> 425)[235:com.springsource.org.hibernate:3.3.2.GA]at
> org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:
> 89)[235:com.springsource.org.hibernate:3.3.2.GA]at
> org
> .hibernate
> .cfg.Configuration.buildSettingsInternal(Configuration.java:2119)
> [235:com.springsource.org.hibernate:3.3.2.GA]at
> org.hibernate.cfg.Configuration.buildSettings(Configuration.java:
> 2115)[235:com.springsource.org.hibernate:3.3.2.GA]at
> org
> .hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:
> 1339)[235:com.springsource.org.hibernate:3.3.2.GA]at
> org
> .hibernate
> .cfg
> .AnnotationConfiguration
> .buildSessionFactory(AnnotationConfiguration.java:867)
> [235:com.springsource.org.hibernate:3.3.2.GA]at
> com
> .cisco
> .hcm
> .sa
> .dminventory
> .model.DMMappingDAOImpl.getSessionFactory(DMMappingDAOImpl.java:67)
> [224:cdm-dm-sync:2.0.0.M1-SNAPSHOT]at
> com
> .cisco
> .hcm
> .sa
> .dminventory.model.DMMappingDAOImpl.setStatus(DMMappingDAOImpl.java:
> 142)[224:cdm-dm-sync:2.0.0.M1-SNAPSHOT]at
> com
> .cisco.hcm.sa.dbsync.CDM_DMDatabaseSync.init(CDM_DMDatabaseSync.java:
> 98)[224:cdm-dm-sync:2.0.0.M1-SNAPSHOT]at
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:
> 1.6.0_26]at
> sun
> .reflect
> .NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)[:
> 1.6.0_26]at
> sun
> .reflect
> .DelegatingMethodAccessorImpl
> .invoke(DelegatingMethodAccessorImpl.java:25)[:1.6.0_26]at
> java.lang.reflect.Method.invoke(Method.java:597)[:1.6.0_26]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1544)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1485)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .initializeBean(AbstractAutowireCapableBeanFactory.java:1417)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .createBean(AbstractAutowireCapableBeanFactory.java:456)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org.springframework.beans.factory.support.AbstractBeanFactory
> $1.getObject(AbstractBeanFactory.java:291)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .DefaultSingletonBeanRegistry
> .getSingleton(DefaultSingletonBeanRegistry.java:222)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .DefaultListableBeanFactory
> .preInstantiateSingletons(DefaultListableBeanFactory.java:580)
> [68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .context
> .support
> .AbstractApplicationContext
> .finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
> [70:org.springframework.context:3.0.5.RELEASE]at
> org
> .springframework
> .osgi
> .context.support.AbstractDelegatedExecutionApplicationContext.access
> $1600(AbstractDelegatedExecutionApplicationContext.java:69)
> [82:org.springframework.osgi.core:1.2.1]at
> org
> .springframework
> .osgi.context.support.AbstractDelegatedExecutionApplicationContext
> $4.run(AbstractDelegatedExecutionApplicationContext.java:355)
> [82:org.springframework.osgi.core:1.2.1]at
> org
> .springframework
> .osgi
> .util
> .internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:
> 85)[82:org.springframework.osgi.core:1.2.1]at
> org
> .springframework
> .osgi
> .context
> .support
> .AbstractDelegatedExecutionApplicationContext
> .completeRefresh(AbstractDelegatedExecutionApplicationContext.java:
> 320)[82:org.springframework.osgi.core:1.2.1]at
> org
> .springframework
> .osgi
> .extender
> .internal
> .dependencies.startup.DependencyWaiterApplicationContextExecutor
> $
> CompleteRefreshTask
> .run(DependencyWaiterApplicationContextExecutor.java:132)
> [85:org.springframework.osgi.extender:1.2.1]at
> java.lang.Thread.run(Thread.java:662)[:1.6.0_26]16:21:12,166 | INFO |
> xtenderThread-12 | DefaultListableBeanFactory | 68 -
> org.springframework.beans - 3.0.5.RELEASE | Destroying singletons in
> org
> .springframework
> .beans.factory.support.DefaultListableBeanFactory@3f8c2858:
> defining beans [cdm-dm-sync,cdmDataSource,hcmsaDataSource,cdmDAO];
> root of
> factory hierarchy16:21:12,166 | ERROR | xtenderThread-12 |
> ContextLoaderListener | 85 - org.springframework.osgi.extender -
> 1.2.1 |
> Application context refresh failed
> (OsgiBundleXmlApplicationContext(bundle=cdm-dm-sync,
> config=osgibundle:/META-INF/spring/
> *.xml))org.springframework.beans.factory.BeanCreationException:
> Error creating bean with name 'cdm-dm-sync' defined in URL
> [bundle://224.0:0/META-INF/spring/spring-config.xml]: Invocation of
> init
> method failed; nested exception is org.hibernate.HibernateException:
> JDBC
> Driver class not found: oracle.jdbc.driver.OracleDriverat
> va:1485)[68:org.springframework.beans:3.0.5.RELEASE]at
> org
> .springframework
> .beans
> .factory
> .support
> .AbstractAutowireCapableBeanFactory
> .initializeBean(AbstractAutowireCapableBeanFactory.java:1417)
> [68:org.springframework.beans:3.0.5.RELEASE]...
> 14 moreCaused by: java.lang.ClassNotFoundException:
> oracle.jdbc.driver.OracleDriver not found by
> com.springsource.org.hibernate
> [235]at
> org
> .apache
> .felix
> .framework
> .ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:812)at
> org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:72)at
> org.apache.felix.framework.ModuleImpl
> $ModuleClassLoader.loadClass(ModuleImpl.java:1806)at
> java.lang.ClassLoader.loadClass(ClassLoader.java:247)[:1.6.0_26]at
> java.lang.Class.forName0(Native Method)[:1.6.0_26]at
> java.lang.Class.forName(Class.java:169)[:1.6.0_26]at
> org.hibernate.util.ReflectHelper.classForName(ReflectHelper.java:
> 192)at
> org
> .hibernate
> .connection
> .DriverManagerConnectionProvider
> .configure(DriverManagerConnectionProvider.java:84)...
> 32 more
>
> --
> View this message in context: http://servicemix.396122.n5.nabble.com/Hibernate-bundle-is-not-able-to-find-Oracle-JDBC-driver-in-OSGI-tp4750168p4750168.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
---------------------------------------------
Freeman Fang
FuseSource
Email:ffang@fusesource.com
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com