- PR -

Tomcat4.1でDB2を使ったときエラーになる

1
投稿者投稿内容
m.hosoi
会議室デビュー日: 2002/10/10
投稿数: 13
お住まい・勤務地: 東京
投稿日時: 2002-11-14 17:31
環境===========
コンテナ:Tomcat4.1
JDK:jdk1.4.0
DB:DB2
factory:org.apache.commons.dbcp.BasicDataSourceFactory
Driver:COM.ibm.db2.jdbc.net.DB2Driver
===============

Servletのinitでjndiを使って取得したDataSourceに対して
getConnection()
すると例外が発生してしまいます。
Servletのinit以外ですと正常にConnectionを取得できます。
どなたがご教授くださいよろしくお願いします。


====以下例外内容================
SQLException:
Cannot load JDBC driver class 'null'
ANSI-92 SQL State: null
Vendor Error Code: 0
Cannot load JDBC driver class 'null'
java.sql.SQLException: Cannot load JDBC driver class 'null'
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:529)
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:312)
at jp.co.quality.util.ConnectionFactory.<init>(ConnectionFactory.java:83)
...


おかもと
大ベテラン
会議室デビュー日: 2003/06/08
投稿数: 182
投稿日時: 2003-10-31 14:08
Windows2000
Tomcat 4.1.27
DB2 UDB 8.1
Eclipse 2.1.1
の環境で同じようなエラーが出ました。
私のほうの例外は
java.sql.SQLException: Cannot load JDBC driver class 'null'
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:529)
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:312)
at DataSrcSrv.doGet(DataSrcSrv.java:58)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:466)
at org.apache.catalina.servlets.InvokerServlet.doGet(InvokerServlet.java:180)
以下略

このような内容です。
テストは下記サイトのとおり行いました。
http://www-6.ibm.com/jp/software/data/developer/library/techdoc/tomcat.html

DataSourceを使った場合のみドライバクラスがロードできないようです。
元質問者に回答がついていないので、通常は発生せず且つ、まったく
見当もつかないエラーなのでしょうか?

以上、もしわかる方がいらっしゃいましたらよろしくお願いします。
おかもと
大ベテラン
会議室デビュー日: 2003/06/08
投稿数: 182
投稿日時: 2003-11-04 13:38
解決しましたので報告します。

Tomcatのserver.xmlに対するContextの追加をEcliseのTomcatプラグインにて
行っていたのですが、その際にContextの終了タグを省略した形式で追記される
ことを失念しておりまして、<Context></Context>としているつもりが、
<Context/></Context>となっていたのが原因でした。

大変初歩的なミスでお騒がせしました。
1

スキルアップ/キャリアアップ(JOB@IT)