3

私はこの Java アプリを開発しています。Eclipse ではすべて正常に動作しますが、sqlserver ドライバーが見つからないため、このプログラムは Apache Tomcat 7.0 では実行されません。

このアプリは sqlserver 2005 データベースに接続することを想定していますがClass.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")、サーバー側で , を通過しません。

私が見つけたので、それがその行であることを知っています:

java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver

私のログファイルに。、、およびsqljdbc.jarごとに を配置しました。catalinaHome/libcatalinaHome/shared/libweb-inf/lib

また、フォルダーcatalina.propertiesから読み取るように編集しました。shared/lib

私はアイデアがありません、どんな助けも素晴らしいでしょう!

更新 #1 - 問題は解決しました

.class ファイルを手動で war ファイルに含めたところ、動作するようになりました。

4

2 に答える 2

2

CATALINA_HOME/lib が機能するはずです。その後Tomcatを再起動しましたか?

また、SQL ドライバーにはいくつかの DLL が必要なようです。それらを正しく設定していますか?クラスが静的に初期化に失敗した場合、クラスがまったく見つからないと見なされるため、目に見えるエラーは依然として ClassNotFound である可能性があります。

ドライバーを Tomcat にデプロイする前に、小規模なローカル テスト (ドライバーをロードして接続を試みるスタンドアロン Java クラス) を作成します。問題をより明確に指摘することができます。

于 2011-04-29T15:28:03.370 に答える
1

正しい場所は ですapplication/WEB-INF/lib/。大文字に注意してくださいWEB-INF

于 2011-04-29T15:37:03.187 に答える