포럼: Open Discussion (Thread #10489)

バージョン1.0.0 (2006-03-11 17:02 by shimakazuro #20589)

ResultSetからデータを取得する方法を、画面で指示出来るようにしました。うまくデータを取得できない時に使用すれば、数多くのDBMSに対応出来ると思っています。
画像ビューワを追加しました。画像データをDBに格納している時簡単に内容を確認できます。

driver.connectがnullを返すとき (2009-02-25 13:47 by ogwtak #42148)

Helpに投稿したとおり、apache derbyを見るのに使わせてもらいました。助かりました。

そこで設定をごちゃごちゃやっているときに、
DB接続ダイアログで"NullPointerException"が出たのですが、
Driver設定が悪いのか、URLが悪いのかよくわかりませんでした。

Eclipseで追ったところ、
SQLExec,javaの126行目
> _con = driver.connect(jdbcUrl, info);
の_conがnullの時に、そのまま
> _con.setAutoCommit(true);
を読んで、Null例外が出ていまして、原因は、
EmbeddedDriverでなくorg.apache.derby.jdbc.ClientDriver を使おうとしていたせいでした。

derbyのClientDriver が、接続失敗時に
例外返さずにしれっとnullを返すのはどうよ・・・という気もしますが、
それはそれとして、driver.connectの後に、

if (_con == null){
throw new SQLException("Failed to Connect.","no connection");
}

こんな感じのnullチェックをつけてやるというのはいかがでしょうか?
(jdbc詳しくないので文字列は適当なんですが)
Reply to #20589