0

Java を使用した Web アプリケーション プログラミングは初めてです。2 つの質問があります。

最初: postgresql データベースがあります。サーブレットの外部で(JUnit4テストとして)実行すると、データベースに問題なくアクセスできます。ただし、サーブレット経由でアクセスしようとすると、次のようになります。

java.sql.SQLException: No suitable driver found for jdbc:postgresql://localhost:5432/comic_store
at java.sql.DriverManager.getConnection(DriverManager.java:602)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at ilya.database.DBService.<clinit>(DBService.java:15)
at ilya.database.UserGateway.getUserByEmail(UserGateway.java:29)
at ilya.controller.Login.<init>(Login.java:12) 

など。サーブレットからアクセスしているときにこの例外がスローされるのはなぜですか。

2 番目: サーブレットでデータベース接続を初期化するための推奨される方法は何ですか? web.xml で DataSource を作成する必要がありますか?

4

1 に答える 1

0

ここで私の答えを見つけました。また、ApacheのJNDIデータソースHOW-TOも役立ちました。動作したものは次のとおりです。ドライバーjarをWEB-INF/libではなく%CATALINA_HOME%/ libに追加し、Class.forName()を使用してドライバーをロードします。Class.forName()を除外しようとしましたが、同じ例外が発生しました。また、WEB-INF / libのドライバーでClass.forName()を試しましたが、それも機能しませんでした。上で述べたように、Tomcat7とjdk1.6.0を実行しています。

于 2012-07-01T03:30:07.433 に答える