- PR -

JDBC接続について

1
投稿者投稿内容
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-04 13:28
おせわになります

現在、JSPについて勉強をしているのですが、
JDBCへの接続方法でわからないところがあります。

いろいろと調べたつもりなのですが、CLASSPATHへの接続や
JDBCの接続方法が具体的に何が悪いのかよくわかりません。
どこが悪いのかご指摘いただけるとありがたいです。
また、何か設定で確認した方が良いことがあれば教えて下さい。

宜しくおねがいします。

プログラム

<%@ page contentType="text/html; charset=EUC_JP" import="java.sql.*" %>
<html>
<head>
<title>test</title>
</head>
<body>
<h1>test</h1>
<%
Class.forName("com.mysql.jdbc.Driver").newInstance();
out.println("DataBase add");
%>
</body>
</html>

エラーメッセージ
exception
org.apache.jasper.JasperException: com.mysql.jdbc.Driver
root cause
javax.servlet.ServletException: com.mysql.jdbc.Driver

環境:
redhat 9
java 1.4.2
tomcat 4.1.29
jdbc mysql-connector-java-3.0.9-stable
mysql mysql-standard-4.0.16

CLASSPATH
CLASSPATH=:/usr/local/java/jdk/jre/lib/ext:/usr/local/java/jdk/lib

たーぞう
ぬし
会議室デビュー日: 2003/08/08
投稿数: 317
お住まい・勤務地: お花畑
投稿日時: 2003-12-04 13:32
引用:

msoさんの書き込み (2003-12-04 13:28) より:
CLASSPATH=:/usr/local/java/jdk/jre/lib/ext:/usr/local/java/jdk/lib


CLASSPATHの指すディレクトリに、JDBCドライバはインストールされてますか?
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-04 13:37
引用:

CLASSPATH=:/usr/local/java/jdk/jre/lib/ext:/usr/local/java/jdk/lib

CLASSPATHの指すディレクトリに、JDBCドライバはインストールされてますか?




下記のようにインストールされていることを確認しています。
ただ、まだ経験が浅いためこれで正しくインストールされているのか
不安があります。

[root@localhost root]# ls /usr/local/java/jdk/jre/lib/ext/mysql*
/usr/local/java/jdk/jre/lib/ext/mysql-connector-java-3.0.9-stable-bin.jar
ちば
大ベテラン
会議室デビュー日: 2003/02/14
投稿数: 114
お住まい・勤務地: 都内勤務
投稿日時: 2003-12-04 13:42
引用:

msoさんの書き込み (2003-12-04 13:37) より:
引用:

CLASSPATH=:/usr/local/java/jdk/jre/lib/ext:/usr/local/java/jdk/lib

CLASSPATHの指すディレクトリに、JDBCドライバはインストールされてますか?




下記のようにインストールされていることを確認しています。
ただ、まだ経験が浅いためこれで正しくインストールされているのか
不安があります。

[root@localhost root]# ls /usr/local/java/jdk/jre/lib/ext/mysql*
/usr/local/java/jdk/jre/lib/ext/mysql-connector-java-3.0.9-stable-bin.jar



$JAVA_HOME/jre/lib/extにjarを入れるとコンパイルの際にはjarを見てくれますが
実行の際にはCLASSPATHに追加する必要があったと思います。
tomcatを使用されているので、$CATALINA_HOME/webapp/アプリ名/WEB-INF/libに
jarファイルをコピーして実行してみてください。
でくのぼう
大ベテラン
会議室デビュー日: 2003/10/06
投稿数: 162
投稿日時: 2003-12-04 13:42
"Tomcatの" CLASSPATHにJDBCドライバが配置されていないのが問題のように思えます。
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-04 14:01
引用:

ちばさんの書き込み (2003-12-04 13:42) より:

$JAVA_HOME/jre/lib/extにjarを入れるとコンパイルの際にはjarを見てくれますが
実行の際にはCLASSPATHに追加する必要があったと思います。
tomcatを使用されているので、$CATALINA_HOME/webapp/アプリ名/WEB-INF/libに
jarファイルをコピーして実行してみてください。



$CATALINA_HOME/webapp/アプリ名/WEB-INF/libをさがしていたのですが、
みつかりませんでした。
削除をしたということは恐らくありません。
tomcatはbinaryをつかっているのですが、
ソースからコンパイルをしないといけないのでしょうか?

[root@localhost WEB-INF]# ll /usr/local/tomcat/webapps/ROOT/WEB-INF/
合計 4
-rw-r--r-- 1 root root 317 10月 28 00:26 web.xml


また、libディレクトリを作製し、JDBCファイルをコピーしたのですが、
動作をしませんでした。
でくのぼう
大ベテラン
会議室デビュー日: 2003/10/06
投稿数: 162
投稿日時: 2003-12-04 14:46
$CATALINA_HOME は /usr/local/tomcat なのですね。
テストに用いているJSPは /usr/local/tomcat/webapps/ROOT 以下にあるのですか?
であれば /usr/local/tomcat/webapps/ROOT/WEB-INF/lib に
該当する JAR を配置して Tomcat を再起動すれば認識されるはずですが・・・。

発生する例外のスタックトレースに変化は無いですか?
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2003-12-04 14:52
引用:

でくのぼうさんの書き込み (2003-12-04 14:46) より:
$CATALINA_HOME は /usr/local/tomcat なのですね。
テストに用いているJSPは /usr/local/tomcat/webapps/ROOT 以下にあるのですか?
であれば /usr/local/tomcat/webapps/ROOT/WEB-INF/lib に
該当する JAR を配置して Tomcat を再起動すれば認識されるはずですが・・・。

発生する例外のスタックトレースに変化は無いですか?



環境はご指摘の通りです。
ただ、Tomcatの再起動をしていませんでした。

再起動後、確認をしたところ予想どおりの動作結果得ることが
できました。

ありがとうございます
1

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