org/apache/commons/pool/impl/GenericObjectPool 解决

来源:百度文库 编辑:神马文学网 时间:2024/04/29 16:29:41
整合Spring、Hibernate、Struts好几次了,反反复复的new Web Project,一直发生这个错误,以为是导入的包有冲突...现在才找到原因。
呵呵,搞得上个项目中没有使用Spring。
今天下午再继续整合时,才在网上找到症结所在。
本文小结参考:
http://www.blogjava.net/lusm/archive/2007/09/28/149363.html
每次在整合了Spring和Hibernate后,就做了下小测试,发现总是读取spring的配置文件时错误。
MyEclipse6.0控制台下的错误提示:
Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [applicationContext.xml]: Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool
Caused by: java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357)
at java.lang.Class.getConstructor0(Class.java:2671)
at java.lang.Class.getDeclaredConstructor(Class.java:1953)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:54)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:752)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:717)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:386)
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:291)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:122)
at org.springframework.context.support.ClassPathXmlApplicationContext.(ClassPathXmlApplicationContext.java:66)
at org.ethip.fundsystem.test.Test.main(Test.java:8)
简要分析:
1.MyEclipse在建立SessionFactory的时候,缺少一个包 commons-pool-1.3.jar
工程中少了org/apache/commons/pool/impl/GenericObjectPool 所在的包
下载链接:http://mirrors.ibiblio.org/pub/mirrors/maven2/commons-pool/commons-pool/1.3/commons-pool-1.3.jar (或见附件)
2.如果加入该包之后还出现问题,请检查你的数据库驱动包是否配置正确(由于是通过MyEclipse配置的,我这里没有出现这个错误)
解决方法:
当然是在项目中导入commons-pool-1.3.jar了.
如果你的工程中已经有了这个包,请检查你的tomcat和jre中是否有这个包,
有的话删除掉,以免因为重复而出现错误。