exception
特定の問題が発生するたびに、次のようなカスタムをサーブレットからスローしたいと考えています。
public class CustomException extends Throwable {
private String[] errArray;
public CustomException(String[] errArray){
this.errArray = errArray;
}
public String[] getErrors(){
return errArray;
}
}
そして、この例外がスローされたときに、ユーザーを特定のエラー ページにリダイレクトしたいと考えています。
<error-page>
<exception-type>com.example.CustomException</exception-type>
<location>/WEB-INF/jsp/errorPage.jsp</location>
</error-page>
これがエラーページです。例外暗黙オブジェクトを使用したいです。
<%@ page isErrorPage="true" %>
<%@ taglib prefix="my" tagdir="/WEB-INF/tags" %>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1" %>
<my:head title="Error"></my:head>
<body>
<% String errArray = exception.getErrors(); %>
</body>
</html>
サーブレットのメソッドCustomException
の宣言を追加しようとすると、問題が発生します。次のエラーが表示されます。throws
doGet
Exception CustomException is not compatible with throws clause in HttpServlet.doGet(HttpServletRequest, HttpServletResponse)
さて、どうすれば問題を克服できますか?このようなカスタム例外を作成して、スローされたときにエラーページに転送することはできますか? それとも他に方法はありますか?前もって感謝します :)