いつもお世話になります。 SAStrutsでWebアプリケーションを作っているのですが、エラー画面の遷移について教えて頂きたいことがあります。 SAStrutsでは、strutsがベースになっていることから、以下の2つの方法があると思っています。 (1)struts-config.xmlのglobal-exceptions (2)web.xmlのerror-page (1)の場合、Actionクラス外でエラーが起きた場合、そのエラーを捕捉できないので、全てのエラーに対応するため、 (2)で作るようにしました。 以下のように定義しています。locationにはエラー専用のActionクラスを定義し、jspへの直接のアクセスはしないようにしました。 java.lang.Throwable /error/ しかし、(2)の方法だと、エラー発生時のスタックトレースを取得することができません。 エラー発生時は、どのクラスのどのメソッドの何行目でどういう理由でエラーになった、という情報が必要なのに、 その情報が取得できなければ(2)も採用できないなと思いました。 どこかのサイトでは、基本(1)にしておき、それでは捕捉できない404、500などをerror-pageで対応するといった方法をやっているのを 見かけたのですが、自分としては、全てのエラーに対応できた方がいいのではないか、と思っています。 そこまで考えなくてもいいのかとも思っているのですが、一般的にはどのような対策をするのでしょうか。 宜しくお願いします。
↧