ラベル JDBC の投稿を表示しています。 すべての投稿を表示
ラベル JDBC の投稿を表示しています。 すべての投稿を表示

2011年7月11日月曜日

Sample通りに構成できない〜JavaとJDBCで奮闘中〜

一向に進まないJavaの勉強。
JDBCを使ったMySQLDBへのアクセスがどうにもこうにも行き詰ってしまったので一旦離れてみることに。
で、Sampleとして提供されたプロジェクトをそっくりそのまま真似してクローンを作ってみることにした。
Sampleがやっていることはログインログアウトの実装、StrutsとMySQLなDBを使っている。

コピーするだけとは言ってもコードは全部自分で入力した。
必要なライブラリのインポートも一個一個確認しながら遂行。
どうにかこうにかできあがったので実行してみたけど動かない。

こんなエラーが出ている。
 The server encountered an internal error () that prevented it from fulfilling this request.

気になっているのは真似できていない箇所。
ライブラリの構成がSampleプロジェクトとは違っている。しかし同じにする方法がわからない。
Sampleのライブラリ

私が作ったプロジェクトのライブラリ

うーむ。
「Web Apps ライブラリー」フォルダの下にどうしても配置できない。
どうやったらいいんだろう。
これをSampleどおりに配置したところで問題が解決できるかどうかはわからないが、とりあえず同じにして間違いの可能性を検証したいところ。

もうひと踏ん張り調べてきますかぁ。


2011年7月6日水曜日

その2:MySQLへJDBCを使って接続する〜ドライバのインストール〜

2.MySQLドライバのインストール


その前に、やさしいJavaさんを読んでみると「共通するファイルの設定」というのがある。
Tomcatで共通して使用するファイルをTomcatがインストールされたディレクトリのlibディレクトリ内に配置する必要があるらしい。
で、その共通して使用するファイルというのは「derby.jar」でmこれはJDKに添付されているJavaDBなんだそうだ。
私の環境ではこのファイルが
「/Users/Anri/eclipse/plugins/com.aptana.ide.libraries_2.0.0.1253913567」
っていうところにあった。
勢いでインストールしたAptanaのプラグインの中?!
他には見当たらず。よくわからないけどこのまま続けてみよう。

というわけでこのファイルをコピーしてTomcatの下に配置する。
「/usr/local/lib」
がその場所みたい。このディレクトリには他に「tomcat-coyote.jar」とかっていう「tomcat〜」っていうjarのファイルが存在している。
※メモ:そもそも「Tomcat〜」っていうディレクトリが存在していない状態のTomcatのインストール状況には問題ないのかな?!
それと問題のMySQL用のドライバもここと同じ場所にコピーしておくらしい。
これは別のWebサイトを参考にしたもの。
"今回はサーブレットでの利用を前提としていますので"と書いてあるのが気になるんだけど(サーブレットの使用が前提ではなかったらここにコピーしないの?!)、ひとまず試してみることに。

※参考
JDBCドライバの取得(MySQL用)
http://www.javadrive.jp/servlet/database/index1.html

インストールはこれでおしまいみたい。
次は何をするんだ?

やさしいJavaの記載を参考にすると「web.xml」を編集するらしい。
Eclipseを使っているとどこまで自動でやってくれていて、どこは自分で設定してあげないといけないのかよくわからない。
この本はEclipseの使用を前提にしてはいないので、Eclipseを使用した場合にこの本にあることすべてをやる必要はないのかもしれない。

ま、わかんないことはやってみるしかない!ということで。

3.web.xmlの編集(※次のページへリンク予定)

その1:MySQLへJDBCを使って接続する〜ドライバの入手〜

やさしいJava活用編を参考にしながらEclipseを使ってMySQLへの接続を試みているが成功しない。
The requested resource () is not available.
というわけでエラーが返ってくる。
・MySQLのドライバがちゃんと設定出来ていないのか?
・URLが間違っているのか?
・クラスパスのところを見ればいいのか?

原因を探りつつあれこれ挑戦してみるも、出続けるのは同じエラー。
嫌になってやる気も失せてしまったり…しかしそれでは先に進めないので手順をひとつひとつ追いかけながらどうにかこうにか解決に導きたいと思う。
いろんなソースにあたればそのうち原因がわかるかもしれない…よね…(とてもとても淡い希望)


1.JDBCドライバの取得

MySQLのサイトから当該ドライバをもらってくる。
http://dev.mysql.com/downloads/
Java用のドライバはここ

で、私はMacを使って勉強しているので拡張子tar.gzの方をダウンロードする。
アカウントは作りませんよ、を選択してミラーサイトからダウンロード。
解凍するとファイルがざざっと出現。
「mysql-connector-java-5.1.16-bin.jar」ってのがそのドライバらしい。

【Berak Point】
…多分ここまでは手順(準備)として間違っていないと思う。
で、ダウンロードしたら次の課題はこれだよね?

2.MySQLドライバのインストール(※次の記事へリンク予定)