免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2339 | 回复: 0
打印 上一主题 下一主题

用连接池时找不到jar包问题! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-18 11:24 |只看该作者 |倒序浏览

        在J2EE应用开发当中,或许你碰到过虽然你已把DB驱动放在了你部署的war包或者directory里,但tomcat还是视而不见,提示诸如下面的信息给你:
Cannot load JDBC driver class 'com.ibm.db2.jcc.DB2Driver'
java.lang.ClassNotFoundException: com.ibm.db2.jcc.DB2Driver
at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:854)
at org.apache.catalina.loader.StandardClassLoader.loadClass(StandardClassLoader.java:721)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:141)
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:760)
        如果你是用DriverManager而不是Datasource也不会出现这问题。问题就在于用Datasource的情况下,在Datasource被激发初始化时,Tomcat是用其自身的classloader 去load相关的驱动jar文件,而应用程序部署目录下的db驱动jar文件并不在tomcat这个classloader的“可视范围”内,相反,它会尝试去找/common/lib等目录下的jar文件,这就是要把db驱动copy到common/lib下的原因。
        同样的道理,当你在weblogic,websphere等Applicatioin Server下部署应用时,也是如此,道理一样。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/16799/showart_1133001.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP