Tomcat3.3&JDK1.3でJSPの勉強をしています。

JDBCでDB(MySQL)に接続するために、
Class.forName("org.gjt.mm.mysql.Driver");
でJDBCドライバをロードしようとすると、ClassNotFoundExceptionが発生します。

同じようなルーチンをJSPではなく、普通のJAVAアプリケーションとしてjavacでコンパイルしてjavaで実行したときは、うまく動きます。

多分、JSP実行時のCLASSPATHにあたるものにJDBCドライバの場所を設定すればいいと思うのですが、どこを設定すればいいのかわかりません。
それとも、CLASSPATHの問題ではないのでしょうか。

ぜひご教授ください。よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

OS は何でしょうか?



JSP の実行時の CLASSPATH は、tomcat を起動するときの環境が引き継がれる
ので、

・tomcat.bat / tomcat.sh をいじる
・unix 環境であれば、$(HOME)/.tomcatrc に CLASSPATH を追加する記述を書く
・もっと安直に JDBC ドライバが入っている jar を WEB-INF/classes/ に置く

ってなところを思いつきます。
    • good
    • 0
この回答へのお礼

すいません、OS書き忘れてました。Windows2000です。

お答えの通りやってみたら、うまくいきました。
tomcat.bat をいじって解決しました。
ありがとうございました。

さらに、今、サービスとしてTomcatを動かしているので、この話を参考に探したところ、%TOMCAT_HOME%\conf\wrapper.propertiesに、これに相当する設定があり、そこを書き換えてうまくいきました。

ありがとうございました。

お礼日時:2001/08/24 15:27

Java Applicatoin ServerのCLASSPATHにorg.gjt.mm.mysql.Driverが追加されているかどうかを確認してください。

    • good
    • 0
この回答へのお礼

ありがとうございます。
やはり、TomcatにもCLASSPATHというのがあるんですね。

今回の場合はWindowsNTのサービスとしてTomcatを使ってますので、%TOMCAT_HOME%\conf\wrapper.propertiesの中にその設定項目がありました。

ありがとうございました。

お礼日時:2001/08/24 15:23

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QクラスTシャツの作成について

クラスTシャツというか
部活(吹奏楽部)でみんなでそろえてTシャツを作りたいと思ってます
お値段もお手ごろでデザインも可愛い
Tシャツ作成会社をご存知の方
教えてください

Aベストアンサー

安いトコロです
http://www.nook-market.com/
http://www.shimizu-seihan.com/

いろいろオプションがあるトコロです
http://www.nakaki.net/index.html
http://www.p1-intl.com/index.html

Qjava.lang.ClassNotFoundException: com.mysql.jdbc.Driverと出てしまいます。

ご質問させてください。
まずは環境は、

・Windows Vista Home Premium
・j2sdk1.4.2_16
・mysql-connector-java-5.1.5
・Mysql 5.0
・Tomcat 5.5
・eclipse-SDK-3.1.2-win32

となっております。

次に、環境変数を
http://www.hellohiro.com/jdbcmysql.htm
http://www.hellohiro.com/appli.htm
を参考に、
CLASSPASS:.;%JAVA_HOME%\lib\tools.jar;
C:\mysql\mysql-connector-java-5.1.5\mysql-connector-java-5.1.5-bin.jar;
C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib\servlet-api.jar;
C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib\mysql-connector-java-5.1.5-bin.jar;.
JAVA_HOME:C:\j2sdk1.4.2_16
PATH:%JAVA_HOME%\bin
と設定しました。

そして以下のプログラムを実行すると
import java.sql.*;
public class test
{
public static void main(String args[])
{
try{
//接続の準備
String drv = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql:///cardb";
String usr = "root";
String pw = "Gob3=104";

//データベースへの接続
Class.forName(drv);
Connection cn = DriverManager.getConnection(url, usr, pw);

//問い合わせの準備
Statement st = cn.createStatement();
String qry = "SELECT * FROM car_table";

//問い合わせ
ResultSet rs = st.executeQuery(qry);

//データの取得
ResultSetMetaData rm = rs.getMetaData();
int cnum = rm.getColumnCount();

while(rs.next()){
for(int i=1; i<=cnum; i++){
System.out.print(rm.getColumnName(i) + ":"+ rs.getObject(i) + " ");
}
System.out.println("");
}

//接続のクローズ
rs.close();
st.close();
cn.close();
}
catch(Exception e){
e.printStackTrace();
}
}
}

エラーが、

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at test.main(test.java:15)

とでてしまいます。

EclipsでMySQLを用いて、データベースにアクセスするにはどうしたらよいのでしょうか。
お知恵をお貸しください。

ご質問させてください。
まずは環境は、

・Windows Vista Home Premium
・j2sdk1.4.2_16
・mysql-connector-java-5.1.5
・Mysql 5.0
・Tomcat 5.5
・eclipse-SDK-3.1.2-win32

となっております。

次に、環境変数を
http://www.hellohiro.com/jdbcmysql.htm
http://www.hellohiro.com/appli.htm
を参考に、
CLASSPASS:.;%JAVA_HOME%\lib\tools.jar;
C:\mysql\mysql-connector-java-5.1.5\mysql-connector-java-5.1.5-bin.jar;
C:\Program Files\Apache Software Foundation\Tomcat 5.5\comm...続きを読む

Aベストアンサー

エラーの内容を拝見する限り、mysql-connector-java-5.1.5を認識していないように見受けられます。
Eclipseのビルドパスのライブラリへの取り込みは正しくおこなわれていれば、デバッグの際のエラーは出なくなると思いますのでご確認ください。

Q文化祭等でのクラスTシャツ

僕のクラスでは文化祭でクラスのTシャツを作ります。
でも当日しか着ないのでお金の無駄、コストに対するリターン(賛成派はこれを盛り上がりと称しています)が少なすぎると思い、多数決では反対に回りました。
しかしほかの生徒は全員賛成でした。

皆さんだったら、文化祭を盛り上げるためにクラスでTシャツを作るのに賛成ですか、反対ですか?値段は一着1000円台前半です。人数は40人程度です。デザインなどは問いません。

いろいろな意見を聞いてみたいです。よろしくお願いします。

Aベストアンサー

「当日しか着ない」と考えてしまうところが若さですね。

当日の盛り上がりグッズとしての1000円の出費も高校生なら高くないと思います。
(休みの日にボーリングやカラオケ行って、ハンバーガー食べて帰って来たらそれ以上使ってませんか?)

それに文化祭が終わってからも男子は部屋着として使い、それを友達との話のネタとして盛り上がることも出来ますし、キレイに洗濯した上で保存しておけば数十年後の同窓会でウケをとれること間違いないですね。

私は賛成派です。

ただ、私なら1000円台前半は逆に「安い」と言ってしまいそうです。

大人に見せても恥ずかしくない、きちんとしたデザイン&作りで文化祭後も街中で普通に着られるクオリティー目指そうと言い出すと思うのでベースとなるTシャツだけで1000円いっちゃいます。(笑)

100均アンダーシャツ+手書きを息子が中学生の時に運動会で見ましたが【マジメな教師の正しさで作っちゃいました】感満載で中学生でも着るほうも見るほうも、ちょっと・・・。

高校生なら折角の大義名分のある無駄遣いを楽しむのも一手だと思います。

それをするためにたくさん問題が出てくると避けるのではなく、問題を解決しようと取り組む姿勢を養うにもいい機会ですから。

「当日しか着ない」と考えてしまうところが若さですね。

当日の盛り上がりグッズとしての1000円の出費も高校生なら高くないと思います。
(休みの日にボーリングやカラオケ行って、ハンバーガー食べて帰って来たらそれ以上使ってませんか?)

それに文化祭が終わってからも男子は部屋着として使い、それを友達との話のネタとして盛り上がることも出来ますし、キレイに洗濯した上で保存しておけば数十年後の同窓会でウケをとれること間違いないですね。

私は賛成派です。

ただ、私なら1000円台前半は逆に「安い...続きを読む

QJDBC + JAVA Servlet、JSP、でMysqlのレコード更新、レコード参照について

 標記につき勉強中ですが素人です。何とか道筋を教えて下さい。宜しくオ願いします。
 http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/mysql_05.htmを懸命に見ています。
以下 
■MySQL JDBC + JAVA Servlet、JSP レコード更新

・レコード追加で、日本語データが指定できるかテストする。
問題なく追加できる。

<%@ page import="java.util.*,java.sql.*;" contentType="text/html; charset=Shift_JIS"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<TITLE>JAVA Server Page(JSP) - MySQL JDBC Test</TITLE>
</HEAD>
<BODY>
<P>JAVA Server Page(JSP) - MySQL JDBC Test</P>
<%
String drv = "com.mysql.jdbc.Driver";
String dsn = "jdbc:MySQL://localhost:3306/sak?user=sak&password=";
Connection cn = null;
Statement st = null;
ResultSet rs = null;

// MySQL JDBC ドライバロード
以下

ここで説明しているのは上記をJSPで記述すれば動作するということなのでしょうか、お教え下さい。
前提条件が良く分からないのです。或いは何が分からないのか良く分からないレベルです。
多分上記をaaa.JSPに作ればコンパイルされるので動くということかなと考えています。
コンテキスト、Web.Xml、Jap、Java、ViewBeanの関係が分かりません何とか御願致します。

 標記につき勉強中ですが素人です。何とか道筋を教えて下さい。宜しくオ願いします。
 http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/mysql_05.htmを懸命に見ています。
以下 
■MySQL JDBC + JAVA Servlet、JSP レコード更新

・レコード追加で、日本語データが指定できるかテストする。
問題なく追加できる。

<%@ page import="java.util.*,java.sql.*;" contentType="text/html; charset=Shift_JIS"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML>
<HEAD>
<META http-...続きを読む

Aベストアンサー

> ここで説明しているのは上記をJSPで記述すれば動作するということなのでしょうか

動作しません。
JSPのコンテナをサポートしたAPサーバやMySQLが必要で、
データソースの設定も必要です。
またJDBCのドライバも取得してクラスパスを通す必要があります。

>前提条件が良く分からないのです。或いは何が分からないのか良く分からないレベルです。

何が分からないのか分からない人に
何も教えることはできません。

>多分上記をaaa.JSPに作ればコンパイルされるので動くということかなと考えています

JSPを動作させる環境はあるということですか?
先にも述べましたが、動作させるにはドライバとデータソースの設定が必要です。

>コンテキスト、Web.Xml、Jap、Java、ViewBeanの関係が分かりません何とか御願致します。

そんなに丸投げをされてもあなた程の初心者に
ここですべての解説なんてできません。
もう少し質問事項を絞る必要があると思います。
あるいは適切な回答を得るためにはもう少しご自身の力で
せめて何が分からないのか整理する必要があるでしょう。

こっちのサイトの方が初心者向きでわかりやすいかと思います。
http://www.hellohiro.com/jdbcmysql.htm
http://www.hellohiro.com/datasource.htm

> ここで説明しているのは上記をJSPで記述すれば動作するということなのでしょうか

動作しません。
JSPのコンテナをサポートしたAPサーバやMySQLが必要で、
データソースの設定も必要です。
またJDBCのドライバも取得してクラスパスを通す必要があります。

>前提条件が良く分からないのです。或いは何が分からないのか良く分からないレベルです。

何が分からないのか分からない人に
何も教えることはできません。

>多分上記をaaa.JSPに作ればコンパイルされるので動くということかなと考えています

JSPを動作...続きを読む

Q学祭のクラスTシャツに

学祭のクラスTシャツに
皆にメッセージ
書いてもらってるんですが
記念に塾の先生に
書いてもらってもいいでしょうかね?

何で?ってなったら
どうしようと思って…

Aベストアンサー

クラスTシャツとは、貴方個人の物なのですか?

それとも学祭でみんなで使う物ですか?

塾の先生とはあなた個人としか繋がりが無いのですよね。学祭と塾の先生は何かの理由で繋がりでもあるのですか?

その辺がわからないとお答えしにくいなあ

Qjavaは実行できてjavacは実行できない

現在Javacコマンドを使ってコンパイルしようとしているのですが、「内部コマンドまたは~」とでてコマンドが実行できません。
ただしjavaコマンドは実行できます。versionは1.6.0_27です。

以上ですがなにか気づいた点があれば、助言していただけると幸いです。

Aベストアンサー

>補足を書いていてきづいたのですがPath最後へんでしたね。
>$JAVA_HOME\bin;
>に修正しました。がjavacは相変わらずです。

Windowsなら…
%JAVA_HOME%\bin;
じゃないですか?

ただし、JAVA_HOMEが
C:\Program Files\Java\jdk1.6.0_27
となっていれば…ですが。
# セミコロンで終わらない。

Q体育祭のクラスtシャツデザイン

体育祭のクラスtシャツデザインをしなければならないのですが、なかなか良い案が浮かびません(><)

勝利の象徴の動物を描こうかと思っているのですが、どんな動物が当てはまるか、また虎は勝利の象徴の動物か教えていただきたいです。

他にも体育祭クラスtシャツにふさわしいデザインのアイデアがあればお願いします!

(条件)

・胸元に10㎝×10㎝くらいの大きさでプリントするのであまり細かすぎるデザインは出来ない
・実際存在するキャラクターはNG

Aベストアンサー

虎はたしか勇気の象徴だったと思います。ライオンは勝利の象徴です!
不死鳥とかどうですか?
どこかの王家の文様をオマージュしてもいいかも

QJDBCとJDBCドライバのライブラリについて

JDBCのライブラリと、DBベンダーのJDBCドライバのライブラリは、
どのような役割分担になっているのでしょうか?

JDBCのライブラリ(ex. java.sql.Connection)は当然使った事がありますが、
DBベンダーのライブラリ(例えば、OracleのOJDBCのライブラリ)は使った事が無いな、、、

と思って質問しました。

Aベストアンサー

>例えば PreparedStatementのexecuteQuery() などは、
>実際にはベンダーのドライバのライブラリ側のメソッドを使っていると言うことですか??
そういうことです。

QクラスTシャツ

クラスTシャツのデザインを考えなければならないのですが、なにせ私は絵が描けないので(汗)困っています!!
なので、参考になるようなイラストの載っているHPを何でも良いので教えてください~!!(>_<)

Aベストアンサー

こんにちわ^^僕もクラスTシャツを頼まれたのですが、その時は何とか乗り切りました。クラスTシャツというのは、しょせん記念にっていう程度ですよね。僕が思うに金を出したのだから長く着れる物がいいです。やっぱり、着たくない物に金を出す人は居ないですよ!つまらない話になってしまいすいません。話は変わりますが、僕は白黒写真なんかをプリントしてもらいました。けっこう、評判良かったです。わからなかったら、クラスの中のお洒落男の子に聞いたらいいと思いますよ!あと、無難に行きたいのならクラス全員の名前を書く事ですね。下のHPを参考にしてくださいね。
http://www.tsutano.com/yutaka/photo/usa/
http://yooyoh.cocolog-nifty.com/photos/america/
http://www.mas-yamazaki.com/washington16.html
http://www4.ocn.ne.jp/~puropera/

QClass.ForName("sun.jdbc.odbc.jdbcOdbcDriver")でエラー

JDBCでAccessへ接続しようとしているのですが、
ECLIPSE上で、Class.ForName("sun.jdbc.odbc.jdbcOdbcDriver")が「処理されない例外の型」とエラーになります。
これは、どうしてでしょうか?

環境は、
ECLIPSE3.0.2
j2sdk1.4.2を使用しています。

Aベストアンサー

>「処理されない例外の型」とエラーになります。

ECLIPSEのソースコードエディタに出てくるメッセージの話ですよね?

Class.ForName("sun.jdbc.odbc.jdbcOdbcDriver")

の例外を処理していないという意味でしょ。

tryで囲むとか、何らかの処理をすれば消えるはずです。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング