- ベストアンサー
不思議なことが起こります。
Servlet & JSPでサーバサイドのアプリケーションを構築しています。Eclipse上でTomcatを起動するとうまくDBに接続できるのですが,%CATALINA_HOME%\bin\startup.batでTomcatを起動するとうまくDBに接続できません。このままでは開発用の環境ではきちんと動きますが,本稼動用のサーバではアプリケーションが動作しません。どなたかわかる方いらっしゃいませんか? 開発環境です。 IDE:Eclipse2.1 DataBase:Oracle8i JDBC:classes12.jar Application Server:Tomcat5.0 JNDI使ってます。 以上です。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
#1ですでに書かれているように、CLASSPATHが通っていないからでしょう。 Tomcat起動時にCLASSPATHを通すようにバッチファイルを記述しても良いのですが、 $CATALINA_HOME/common/lib にJDBCドライバを設置すれば解決するでしょう。 #拡張子は「.jar」でないと、Tomcatが認識してくれませんので注意。 #というか、classes12.jarなので問題ないですね。 また、JNDIを利用するとのことですから、Datasourceの設定をしないといけませんが、そこら辺はどうでしょか? DataSourceの設定自体は、Eclipseから起動する場合も同様のはずですので、やっていると思いますが・・・ ↓Tomcatのドキュメントにも説明がありますので、参照しましょう。 http://www.jajakarta.org/tomcat/tomcat5.0/mix/docs/tomcat-docs/jndi-datasource-examples-howto.html ↓あとここら辺とか。 http://www.atmarkit.co.jp/fjava/javatips/004container003.html 上記サイトでは、server.xmlを直接編集してますが、Tomcatの管理画面 http://localhost:8080/admin/ から設定した方が楽ですけど。 それから、蛇足になりますが・・・ JDK1.2,1.3の場合は問題ないですが、もしもJDK1.4を使用している場合には、classes12.jarではない方が良いでしょう。 JDK1.4の場合は、OTN(http://otn.oracle.co.jp/)から、Oracle9iまたは10g用のJDBCドライバ(ojdbc14.jar)をダウンロードし、そちらを使うようにした方が良いです。 また、classes12.jarを使う場合も、Oracle8i用のものではなくて、9iか10gのものを使った方が良いと思いますよ。
その他の回答 (1)
- yoneda_16
- ベストアンサー率47% (166/350)
思いつきというか、ありがちな話でしかありませんが。 データベース接続用ドライバが、Eclipseのクラスパスには入っていてTomcatのクラスパスに入っていないのではありませんか。