前提・実現したいこと
Servletクラス外で例外で処理が止まる際に、止まった原因をviewで出力したいです。
例えば、DB接続をする際に接続できなかった場合に、
catch文で、DB接続ができませんでした。
のようにviewに出力するような処理にしたいです。
Java
1// DB接続 2Connection conn = null; 3try { 4 conn = DriverManager.getConnection(url, user, password); 5} catch (SQLException e) { 6 out.println("DB接続に失敗しました。"); 7}
試したこと
WriteLogicクラスを作成し、
Java
1import java.io.IOException; 2import java.io.PrintWriter; 3 4import javax.servlet.http.HttpServletResponse; 5 6public class WriteLogic { 7 8 /** 9 * viewに文字を出力させるコード 10 * @throws IOException 11 */ 12 public void print(HttpServletResponse response, String text) throws IOException { 13 // 文字列出力用のストリームを出力するためにPrintWriterオブジェクトを取得 14 PrintWriter out = response.getWriter(); 15 out.println(text); 16 } 17}
使いたいクラスでオリジナルクラスWriteLogicのprint()メソッドを呼び出し、
引数にresponseとtextを渡したいのですが、
サーブレットクラスのresponseは、HttpServletResponseクラス、インターフェイスのためインスタンス化できません。
Java
1Connection conn = null; 2try { 3 conn = DriverManager.getConnection(url, user, password); 4} catch (SQLException e) { 5 String text = "DB接続に失敗しました。"; 6 writeLogic.print(response, text); 7}
どうすれば解決につながりますでしょうか?また、どうアプローチすべきでしょうか?
補足情報(FW/ツールのバージョンなど)
VPSを作成し、その中にtomcatをインストールし、
tomcatで動かそうとしています。
回答3件
あなたの回答
tips
プレビュー