struts2-spring2-hibernate3整合的一个问题

来源:互联网 发布:怎样做好数据分析 编辑:程序博客网 时间:2024/05/17 23:32

 struts2-spring2-hibernate3整合时候,如果TOMCAT下有ORACLE的一个JAR-------nls_charset12.jar。不管用什么连接池,都会报错,不知道是哪个JAR与nls_charset12.jar冲突了。不仅是nls_charset12.jar,只要是ORACLE处理字符的JAR都一样。如果nls_charset12.jar不是必要的话,就拿掉它吧。

具体报错如下:

 

2008-12-25 09:40:57,281 ERROR [org.springframework.web.context.ContextLoader] - <Context initialization failed>
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.LinkageError: Class oracle/sql/converter/CharacterConverters violates loader constraints
Caused by:
java.lang.LinkageError: Class oracle/sql/converter/CharacterConverters violates loader constraints
 at java.lang.ClassLoader.defineClass1(Native Method)
 at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
 at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
 at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1815)
 at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:869)
 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1322)
 at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1201)
 at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
 at oracle.sql.CharacterSet1Byte.getInstance(CharacterSet1Byte.java:85)
 at oracle.sql.CharacterSetWithConverter.getInstance(CharacterSetWithConverter.java:103)
 at oracle.sql.CharacterSetFactoryThin.make(CharacterSetFactoryThin.java:122)
 at oracle.sql.CharacterSet.make(CharacterSet.java:439)
 at oracle.jdbc.driver.DBConversion.<init>(DBConversion.java:144)
 at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:877)
 at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:267)
 at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:413)
 at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:164)
 at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:34)
 at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:752)
 at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38)
 at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294)
 at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1340)
 at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1224)
 at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:884)
 at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:81)
 at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:84)
 at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2073)
 at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1298)
 at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:805)
 at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:745)
 at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:134)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1203)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1172)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:427)
 at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249)
 at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155)
 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246)
 at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
 at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:285)
 at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
 at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:246)
 at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:189)
 at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
 at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3763)
 at org.apache.catalina.core.StandardContext.start(StandardContext.java:4211)
 at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
 at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
 at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
 at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:904)
 at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:867)
 at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:474)
 at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1122)
 at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:310)
 at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
 at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1021)
 at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
 at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
 at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
 at org.apache.catalina.core.StandardService.start(StandardService.java:450)
 at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
 at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
 at java.lang.reflect.Method.invoke(Method.java:585)
 at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
 at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
2008-12-25 09:40:57,281 ERROR [org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/yuyu]] - <Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener>