竹形誠司 ブログ
ご質問    »トピック一覧
掲示板へのスパムが多いため、「ご質問」のコーナーはユーザー登録制とさせていただきました。お手数ですが、上の「新規ユーザーの登録」メニューより登録をお願いします。
帳票Web
アプリケーション

受注開発始めました
詳しくは こちら
竹形 誠司 著/ラトルズ刊
JSP帳票アプリケーション実践開発入門
JSP帳票アプリケーション
実践開発入門

JSP業務アプリケーション短期開発入門
JSP業務アプリケーション
短期開発入門

Java+MySQL+Tomcatで始めるWebアプリケーション構築入門
Java+MySQL+Tomcatで始めるWebアプリケーション構築入門

Java+MySQL+Tomcatで作る掲示板とブログ
Java+MySQL+Tomcatで作る
掲示板とブログ
JAVA+MySQL+Tomcatでデーターベース接続
by javaSukiyaki[javaSk]
竹形誠司 様

「JAVA+MySQL+Tomcatで作る掲示板とブログ」でP48,49のコネクションプーリングの設定について質問です。他の質問でも御座いますがデーターソースが取れないエラーが発生します。
環境は、
Tomcat5.5.27
MySQL5.0.18
クラスパスは、
,;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet-api.jar;%CATALINA_HOME%\common\lib\jsp-api.jar;%CATALINA_HOME%\common\lib\mysql-connector-java-3.1.14-bin.jar
です。

質問1.
bbs.xmlのファイルの<Contextタグは、server.xmlでなくこちらに書くべきでしょうか。

質問2.
web.xmlの
<description>MySQL Test App</description>は何を参照する名称でしょうか。
<description>DB Connection</description>は、デフォルトでこのままで良いのでしょうか。
<res-ref-name>jdbc/TestDB</res-ref-name>は、bbs.xmlとjavaソースとで照合が取れていれば良いのでしょうか。

質問3.
server.xmlはどの様にすれば宜しいでしょうか。

質問4.
ログには、

admin,catalina,host-manager,jakaruta_service,localhost,manager,stderr,
stdoutがありますが、それぞれどのような意味があるのでしょうか。

お手数ですが、お返事頂ければ幸いです。
投稿:javaSukiyaki[javaSk]/2009年 01月 05日 22時 47分 /更新:2009年 01月 05日 22時 48分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by 竹形 誠司[takegata]
竹形です。こんにちは。

質問1.
bbs.xmlのファイルの<Contextタグは、server.xmlでなくこちらに書くべきでしょうか。
Tomcatの昔のバージョンでは、server.xmlに<Context>要素を書いていましたが、最近のバージョンではコンテキストごとにxmlファイルを作って、そこに書くのが一般的です。server.xmlにも<Context>要素を書くことはできますが、編集を間違えるとTomcat自体が起動しなくなってしまうので、お勧めしません。

ご質問ではbbs.xml(本書ではjamyto2.xml)となっていますが、設定に間違いはないでしょうか。可能であれば、一度本書の設定に合わせてテストしてみていただければと思います。

質問2.
web.xmlの
<description>MySQL Test App</description>は何を参照する名称でしょうか。
<description>DB Connection</description>は、デフォルトでこのままで良いのでしょうか。
<res-ref-name>jdbc/TestDB</res-ref-name>は、bbs.xmlとjavaソースとで照合が取れていれば良いのでしょうか。
執筆後に分かったことなのですが、本書で解説している方法を使っている限りではweb.xmlの<web-app>要素は記述しなくてもデータソースは使えます。タグライブラリを使ってデータを埋め込む場合などに、この記述が参照されます。

質問3.
server.xmlはどの様にすれば宜しいでしょうか。
コネクションプーリングに関しては、編集が必要な個所はありません。

質問4.
ログには、
admin,catalina,host-manager,jakaruta_service,localhost,manager,stderr,
stdoutがありますが、それぞれどのような意味があるのでしょうか。
これについては、調べてからお答えします。

コネクションプーリングがうまくいかない原因で多いのは、webappsディレクトリの下にアプリケーションディレクトリを置いている場合です。webappsディレクトリの下にアプリケーションディレクトリを作ってしまうと、コンテキストファイル(jamyto2.xmlなど)の記述が間違っていても、ウェブアプリケーションとして動いてしまいます(但し、コンテキストファイルの記述は無視されます)。

もしwebappsの下にアプリケーションディレクトリを置かれているのでしたら、試しにwebappsディレクトリ以外の場所にアプリケーションディレクトリを移動して、それに合わせてコンテキストファイルを修正し、Tomcatを再起動してウェブアプリケーションが動作するかどうかを確認してみてください。

投稿:竹形 誠司[takegata]/2009年 01月 06日 06時 53分 /更新:2009年 01月 06日 06時 54分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by javaSukiyaki[javaSk]
竹形誠司 様

お返事有難う御座います。
こんなに丁寧に解説頂けるのなら3冊とも購入したいと思います。
1.CD-ROM内のTomcat,MySQL,JDKのバージョンは最新の物でしょうか、また、そのソフトで動作確認されていますでしょうか。(先日解決しましたが、現在ダウンロード可能なMySQLでは、問題があり困っていました。)
2.読者が習得できる技術面から、其々の書籍の違いを簡単に教えて頂けますでしょうか。
3.Javaの開発には疑問があります。例えば、EJBでしたら、EJB3になってコード量は少なくなったのかも知れませんが、私は訳が解らなくなりました。開発者の中にマイクロソフトのスパイが居てより複雑にして、Javaの利用を少なくなるようにしているしか私には思えないのですが、如何なんでしょか。
投稿:javaSukiyaki[javaSk]/2009年 01月 06日 21時 17分 /更新:2009年 01月 06日 21時 18分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by 竹形 誠司[takegata]
竹形です。どうも。
是非拙著をお買い上げいただき、しつこく質問してください(笑)
冗談抜きに、読者の方からの質問は私にとっても、他の読者にとっても非常に有益なのです。
1.CD-ROM内のTomcat,MySQL,JDKのバージョンは最新の物でしょうか、また、そのソフトで動作確認されていますでしょうか。(先日解決しましたが、現在ダウンロード可能なMySQLでは、問題があり困っていました。)
発行から時間が経っていることもあり、添付のCD-ROMに収録されているプログラムのバージョンは最新ではありません。新しいバージョンで問題が生じる場合は、当サイトで対応させていただきたいと思います。
2.読者が習得できる技術面から、其々の書籍の違いを簡単に教えて頂けますでしょうか。
「Java+MySQL+Tomcatで始めるWebアプリケーション構築入門」はHTMLやCSS、JavaScriptも含め、基本的なことを広く浅く説明しています。

「Java+MySQL+Tomcatで作る掲示板とブログ」では、上記書籍の内容を踏まえて、掲示板やブログサイトの作り方を手順を追って説明しています。

「JSP業務アプリケーション短期開発入門」では、実例を多く用意して、業務アプリケーションのいろいろなパターンを説明しています。

それぞれを1冊で完結させる必要から、内容が重複している部分があります。

3.Javaの開発には疑問があります。例えば、EJBでしたら、EJB3になってコード量は少なくなったのかも知れませんが、私は訳が解らなくなりました。開発者の中にマイクロソフトのスパイが居てより複雑にして、Javaの利用を少なくなるようにしているしか私には思えないのですが、如何なんでしょか。
マイクロソフトのスパイがJava開発者の中にいるかどうかは知りませんが、J2EEが複雑すぎるという批判はよく聞きますね。私の書く本ではJ2EEを扱いませんのでご安心下さい(笑)。

前回のご質問で宿題にさせていただいたTomcatのログの件ですが、オフィシャルのサイトでは分かりやすい説明を見つけられませんでした。藤原さんという方のブログ「フジハラボ」に次のような説明がありました。http://daipresents.com/weblog/fujihalab/archives/2008/04/tomcat55-logs.php

ログ設定箇所説明
admin.logconf/logging.propertiesTomcat Web Server Administration Toolのログ
catalina.logconf/logging.propertiesサーバの起動、停止、サービスの開始、停止情報
host-manager.logconf/logging.propertiesTomcat Host Manager Web Appのログ
jakarta_service.logなしサービスのログ
localhost.logconf/logging.propertieshost(VirtualHostのようなもの)に限定したログ
manager.logconf/logging.propertiesTomcat Manager Web Appのログ
stderr.logなし標準エラー出力
stdout.logなし標準出力

投稿:竹形 誠司[takegata]/2009年 01月 07日 04時 03分 /更新:2009年 01月 07日 13時 46分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by javaSukiyaki[javaSk]
竹形 誠司 様

再度、御丁寧に回答有難う御座います。即、3冊購入致します。

ワークエリアを削除しても、ブラウザを設定しても私のPCのTomcatは、幽霊の削除したページを表示します。次回、また、整理して質問さして頂きます。有難う御座いました。これで、質問を一旦停止します。(終了ではありません。以前何度もTomatを構築したのですが、こんな筈ではなかった。悲しい。)
投稿:javaSukiyaki[javaSk]/2009年 01月 08日 00時 36分 /更新:2009年 01月 08日 00時 37分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by 竹形 誠司[takegata]
ワークエリアって、workディレクトリですか?ここを削除してもアプリケーションが動いてしまうのは、何か変ですね。Tomcatが複数インストールされたりしていませんか?

環境を作ったり壊したりするのに、Virtual PCのような仮想環境を使うと便利ですよ。私はvmwareを使っています。
投稿:竹形 誠司[takegata]/2009年 01月 08日 03時 08分 /更新:2009年 01月 08日 03時 12分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by javaSukiyaki[javaSk]
竹形 誠司 様

そうなのです。おかしいのです。テストした対象のhtmlファイルを削除し、workディレクトリも絶えず削除して、インターネットエクスプローラの設定を、新しいページを参照するにして、尚且つ、Tomcatのreload設定をtrueにし、念のためにTomcatを再起動していますが、削除したhtmlが表示されます。

1つ、良くないかも知れないことを行ったのは、Tomcatをインストールしたままユーザーにパスワードを設定したことです。以前、apatchか何かのソフトで、ユーザーにパスワードを設定しなければいけないことが有ったように記憶しているからです。

vmwareについては、知りませんでした。容易にインストール、設定可能でしょうか。Tomcatの別のバージョンをインストールしなおして、再度設定いたします。
(可也疲れていますので、少し休んで頭を冷やします。)

本当にいつも有難う御座います。

投稿:javaSukiyaki[javaSk]/2009年 01月 08日 18時 04分 /更新:2009年 01月 08日 18時 05分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by 竹形 誠司[takegata]
あ、htmlですか。Tomcat以外のウェブサーバは動いていませんか?パスワードの設定はあまり関係ないでしょうねぇ。

何が悪いのかさっぱり分からない場合は、OSを再インストールして環境をまるごと作り直してしまうのが一番早いと思います。そういう時に仮想環境は便利ですね。インストールや使い方はそれほど難しくないと思います。

私はだいぶ前からvmware workstationを使っていますが、最近は無料で入手できるものがいろいろあるので、ネット等で調べられてはどうでしょう。Windows XP以降をお使いなら、Microsoftが配布しているVirtual PCが情報が豊富でいいと思います。その他にもSunが配布しているVirtual Boxというのもありますし、vmwareも無料のバージョンを配布しているようです。
投稿:竹形 誠司[takegata]/2009年 01月 08日 20時 02分 /更新:2009年 02月 14日 08時 08分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by javaSukiyaki[javaSk]
竹形 誠司 様

お返事有難う御座います。

Tomcat以外のウェブサーバは動いていません。こんなことは初めてです。仮想環境については将来検討致します。とりあえずは、別のバージョンのTomcatを再インストールして頑張ります。有難う御座いました。
投稿:javaSukiyaki[javaSk]/2009年 01月 09日 00時 16分 /更新:2009年 01月 09日 00時 16分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by 竹形 誠司[takegata]
了解です。またいつでも質問してください。
投稿:竹形 誠司[takegata]/2009年 01月 09日 21時 38分 /更新:2009年 01月 09日 21時 38分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by javaSukiyaki[javaSk]
竹形 誠司 様

執筆されていられます其々3冊の、Tomcatのバージョン、4か5どちらかと、DB接続の方法でDatasourceかDriveManagerのどちらかだけ教えて頂けますでしょうか。お手数ですが宜しくお願い致します。
投稿:javaSukiyaki[javaSk]/2009年 01月 10日 20時 12分 /更新:2009年 01月 10日 20時 15分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by 竹形 誠司[takegata]
Tomcatのバージョンは「JSP業務アプリケーション短期開発入門」が6.0、それ以外は5.5です。データベースの接続方法は3冊ともDriverManagerとDBCP(データソース)の両方を説明しています。
投稿:竹形 誠司[takegata]/2009年 01月 11日 13時 17分 /更新:2009年 01月 11日 13時 18分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by javaSukiyaki[javaSk]
竹形 誠司 様

お返事有難う御座いました。

なんとか、データベースに接続し、日本語も表示できるようになりました。いろいろな問題は総て解決しました。それでも、明日ネットで書籍3冊購入致します。丁寧なお返事有難う御座いました。
投稿:javaSukiyaki[javaSk]/2009年 01月 12日 23時 51分 /更新:2009年 01月 12日 23時 51分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by 竹形 誠司[takegata]
ご報告ありがとうございます。
もしよかったら、当サイトの談話室や、ご自身のブログ(もしあれば)などで問題の原因や解決に到った経緯などを書いていただけると、私や他のユーザーの参考になるので、お時間のあるときで結構ですので是非お願いします。
投稿:竹形 誠司[takegata]/2009年 01月 13日 00時 19分 /更新:2009年 01月 13日 00時 19分
RE:JAVA+MySQL+Tomcatでデーターベース接続
by javaSukiyaki[javaSk]
竹形 誠司 様

今は忙しい為、後日、私の恥ずかしい失敗談と解決の経緯をお知らせ致します。(使用したTomcatのバージョンでは、英文のドキュメントが間違っていました。)書籍3冊発注致しました。これで、私も晴れて胸をはって質問出来ます。楽しくなりそうです。有難う御座いました。
投稿:javaSukiyaki[javaSk]/2009年 01月 14日 03時 44分 /更新:2009年 01月 14日 03時 47分