[pgsql-jp: 28265] Re: postgresqlとの接続エラー

fwif0083 @ mb.infoweb.ne.jp fwif0083 @ mb.infoweb.ne.jp
2002年 12月 12日 (木) 02:11:42 JST


本田です。

From: "Takeuchi" <takeu-al @ tf6.so-net.ne.jp>
Subject: [pgsql-jp: 28262] postgresqlとの接続エラー
Date: Wed, 11 Dec 2002 19:21:37 +0900

>     try {
>       // ドライバクラスをロード
>       Class.forName("postgresql.Driver"); // PostgreSQLの場合
> 
>       // データベースへ接続
>       con = DriverManager.getConnection(urlname,user,pwd);
>       if (con == null) {
>    show(req,resp,"error",null);
>    return;
>       }
>       }catch ( ClassNotFoundException e) {
>    e.printStackTrace();
> 
>       } // end of catch
>       catch ( SQLException e) {
>    e.printStackTrace();
> 
>       } // end of catch

ここのcatchでe.printStackTrace();するだけではなく、画面に表示するよう
に変更してはいかがでしょう。
tomcat4.1.2で、適当に、かつ意図的に、試したところ、e.printStackTrace();では、
catalina.out に出力されました。
java.lang.ClassNotFoundException: postgresql.Driver
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1428)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1274)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:140)

ここのcatchで特に終了処理していませんので、con はnullのままで進み、

> try {
>       Statement stmt = con.createStatement(); #61行目

でnullPointerExceptionが発生したのでは…というシナリオです。



pgsql-jp メーリングリストの案内