今、「やさしいJAVA活用編」という本でデーターベースの基本を勉強しています。
Tomcat3.2.3でローカルサーバーとしてServletでAccessで作った3列2行の表をデータベースとしてアクセスしようとしています。
設定の仕方は本に書いてありましたので、そのとおりにしました。(ODBCドライバーを設定して、Accessの表を関連付けて、、)。
うまく行かなかったので、使用するServletは雑誌に付いていた「Sampleファイル」を使用してみましたが、やはり駄目でした。
エラーとして以下の通りです。
(なにせ間違いが多い本で、ホームページの誤植表を見ても、間違っている場合があったりと少々、困惑している状態です。)
Error: 500
Location: /YJKpractice/06/servlet/Sample1
Internal Servlet Error:
java.lang.ClassCastException: Sample1
at org.apache.tomcat.core.ServletWrapper.loadServlet(ServletWrapper.java:268)
at org.apache.tomcat.core.ServletWrapper.init(ServletWrapper.java:289)
at org.apache.tomcat.core.Handler.service(Handler.java:254)
at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:812)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:758)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:213)
at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:501)
at java.lang.Thread.run(Thread.java:536)
No.2
- 回答日時:
データベース接続がどうとかいう以前に、Servletとして動作していませんよ。
ServletでないSample1というクラスをTomcatから呼ぶから、
上記のようなエラーになるのだと思います。
Sample1というクラスはServletではないのですが、
どうしてTomcatを使っているのでしょうか?
単にSample1を動作させたいのでしたら、Tomcatは無関係で、
java.exeを使って、ApplicationとしてSample1を使えば、
動作すると思います。
Tomcatを使ってサーブレットしてSample1を動作させたいのでしたら、
Sample1はHttpServletを継承して作って、doGetメソッドなどに
処理を記述してください。
この回答への補足
ありがとうございます。
なるほど、そうですね。
初めにJSPとサーブレットのレッスンがあって、次にデータベースのレッスンだってので、サーブレットと思い込んでいました。ですが、本当不親切な書籍です。
HPの誤植表をみても最新版では対応しているとなってますが、また同様の場所に誤植があったりと、大変な本を購入してしまいました。
初めてプログラムの勉強をしているのですが、このように誤植が多いものなのでしょうか?プログラムで誤植があると初心者には致命的です。
No.1ベストアンサー
- 回答日時:
>java.lang.ClassCastException: Sample1
Sample1.classがおかしいようです。
ClassCastExceptionになっているので、
変数の型変換に失敗したのでしょう。
この回答への補足
早速、ありがとうございます。
Sample1のコードは書籍に添付していたCD-ROMについてたものをそのまま使用ものです。書籍のと見比べても間違いはありません。以下がこのプログラムです。
「CarDB」というのがAccsessの表データ(表名:車表)です。どこが悪いのかわかりますでしょうか?
お手数ですがお願いします。
import java.sql.*;
public class Sample1
{
public static void main(String args[])
{
try{
//接続の準備
String drv = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:CarDB";
String usr = "";
String pw = "";
//データベースへの接続
Class.forName(drv);
Connection cn = DriverManager.getConnection(url, usr, pw);
//問い合わせの準備
Statement st = cn.createStatement();
String qry = "SELECT * FROM 車表";
//問い合わせ
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();
}
}
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP eclipse pleiades phpのインストールについて 1 2023/02/03 17:15
- サーバー 別サーバに構築したApache+Tomcatの連携について 2 2023/03/06 23:23
- Java Javaで個人ブログサイトを作りたい 7 2022/04/03 17:37
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Java Java です 途中は省いてますが for(int i = 0; i < 25; i ++) { s 4 2022/05/20 23:36
- C言語・C++・C# C#の基本文法が詳しく書かれている教科書的な本ありますか 2 2023/02/11 03:48
- Java mac mini 2009 でのmac OS における Java の入れ替えについて 1 2022/12/27 19:23
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- IT・エンジニアリング プログラマの仕事内容 4 2022/08/13 00:34
- CPU・メモリ・マザーボード マイクラ(java)で影modを使用しながら快適に遊びたい!! 1 2022/08/02 18:20
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JSPのクラスをコンパイルできな...
-
IISとローカルと別サーバのTomc...
-
[apache+tomcat]なぜ!?実行し...
-
html上で、バッチやexeファイル...
-
Eclipseのアンインストールの仕方
-
Eclipseで、プロジェクト名のと...
-
マイクラjavaでForgeを入れたい...
-
eclipse実行ができない
-
正しいURL指定しているにもかか...
-
javaでuseBeanエラーの解決方法
-
vs codeはオフラインでも使用で...
-
eclipseのショトカットキー
-
Javascriptの値をJava(JSP)へ渡...
-
OptiFineをJAVAで開こうとする...
-
eclipseのjavaを実行できない
-
【Eclipse】パッケージ・エクス...
-
JSP内でString型からint型に変...
-
コンパイル時にエラーが出てし...
-
HTMLファイルからexeファイルを...
-
MSDNのコレクションがありませ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JSPのクラスをコンパイルできな...
-
eclipseでTomcat起動時にエラー...
-
isapi_redirect.dllのダウンロード
-
Eclipseでサーブレットを使用す...
-
tomcatの不具合
-
ApachePOIでエラー
-
apache2.2-tomcat6.0の連携のエ...
-
jspプログラムについて
-
javax.servlet.ServletExceptio...
-
自分で作成したservletを起動す...
-
TOMCATで上手く起動しない
-
IISとローカルと別サーバのTomc...
-
「サーブレットインスタンスを...
-
No collection foundと出てしま...
-
jsp:useBean の使い方???
-
ant1.7.1がほしい
-
struts2のMaven ProjectをEclip...
-
Microsoft Visual Studio Code ...
-
eclipseのtomcatでエラーが発生...
-
[apache+tomcat]なぜ!?実行し...
おすすめ情報