catch 句で HttpServletResponse エラーを設定している興味深いシナリオがあります。「response.sendError(..)」も例外をスローします。元の例外の詳細を保持するために、例外処理中に例外を処理する最良の方法は何ですか?
私はこのようなものを持っています:
try {
...
} catch(Exception e) {
try {
response.sendError(500);
} catch(IOException e2) {
//Can I do something like:
//'throw new ServletException(e,e2)' here?
}
}
つまり、両方の例外からの情報を次にスローされる例外にまとめる最善の方法は何でしょうか? 2番目の例外を処理するときに、最初の例外からの情報を失いたくありません。
一般に、try catch ブロックが複数あると、可読性が低下します。理想的には、その混乱を避けたいと思います。メソッドに埋め込まれた try/catch を常にバンドルできます...それでもまだ悪いようで、すべての例外の詳細を保持しても解決しません。