February 2005
Intermediate to advanced
528 pages
12h 53m
English
Your application requires specialized handling for certain types of exceptions.
Extend the Struts
ExceptionHandler
with your own class such as the one
shown in Example 9-4.
Example 9-4. Extending the Struts exception handler
package com.oreilly.strutsckbk.ch09; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionMessage; import org.apache.struts.action.ExceptionHandler; import org.apache.struts.config.ExceptionConfig; public class CustomExceptionHandler extends ExceptionHandler { public ActionForward execute(Exception ex, ExceptionConfig ae, ActionMapping mapping, ActionForm formInstance, HttpServletRequest request, HttpServletResponse response) throws ServletException { // TODO Add custom code here to completely control handling return super.execute(ex, ae, mapping, formInstance, request, response); } protected void logException(Exception e) { // TODO Add custom code here for exception logging System.out.println("Customized logException for:"+e); super.logException(e); } protected void storeException(HttpServletRequest request, String property, ActionMessage error, ActionForward forward, String scope) { // TODO Add custom code here for storing errors System.out.println("Customized ...