9.2. Custom Processing for Declared Exceptions
Problem
Your application requires specialized handling for certain types of exceptions.
Solution
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 ...
Get Jakarta Struts Cookbook now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.