jspwiki-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ajaqu...@apache.org
Subject svn commit: r904798 - /incubator/jspwiki/trunk/src/java/org/apache/wiki/ui/stripes/WikiExceptionHandler.java
Date Sat, 30 Jan 2010 15:35:43 GMT
Author: ajaquith
Date: Sat Jan 30 15:35:43 2010
New Revision: 904798

URL: http://svn.apache.org/viewvc?rev=904798&view=rev
Log:
Tweaked the Stripes exception handler class. It will need to be re-tweaked, because I am still
not happy with it.

Modified:
    incubator/jspwiki/trunk/src/java/org/apache/wiki/ui/stripes/WikiExceptionHandler.java

Modified: incubator/jspwiki/trunk/src/java/org/apache/wiki/ui/stripes/WikiExceptionHandler.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/java/org/apache/wiki/ui/stripes/WikiExceptionHandler.java?rev=904798&r1=904797&r2=904798&view=diff
==============================================================================
--- incubator/jspwiki/trunk/src/java/org/apache/wiki/ui/stripes/WikiExceptionHandler.java
(original)
+++ incubator/jspwiki/trunk/src/java/org/apache/wiki/ui/stripes/WikiExceptionHandler.java
Sat Jan 30 15:35:43 2010
@@ -23,28 +23,37 @@
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import javax.servlet.jsp.PageContext;
 
+import net.sourceforge.stripes.action.ForwardResolution;
 import net.sourceforge.stripes.action.Resolution;
 import net.sourceforge.stripes.exception.DefaultExceptionHandler;
 
+import org.apache.wiki.action.MessageActionBean;
+
 /**
- * Stripes ExceptionHandler that catches exceptions of various types and returns appropriate
- * Resolutions.
+ * Stripes ExceptionHandler that catches exceptions of various types and returns
+ * appropriate Resolutions.
  */
 public class WikiExceptionHandler extends DefaultExceptionHandler
 {
 
     /**
-     * Catches any Exceptions not handled by other methods in this class, and prints a stack
trace.
+     * Catches any Exceptions not handled by other methods in this class,
+     * prints a stack trace, and forwards to {@link MessageActionBean}.
+     * It also adds the caught exception into page scope as an attribute
+     * with the standard error name {@link PageContext#EXCEPTION}.
+     * 
      * @param exception the exception caught by StripesFilter
      * @param req the current HTTP request
      * @param res the current HTTP response
-     * @return always returns <code>null</code> (that is, it does not redirect)
+     * @return always returns a ForwardResolution to the handler method
+     *         {@link MessageActionBean#error()}
      */
-    public Resolution catchAll(Throwable exception, HttpServletRequest req, HttpServletResponse
res)
+    public Resolution catchAll( Throwable exception, HttpServletRequest req, HttpServletResponse
res )
     {
         exception.printStackTrace();
-        return null;
+        req.setAttribute( PageContext.EXCEPTION, exception );
+        return new ForwardResolution( MessageActionBean.class, "error" );
     }
-    
 }



Mime
View raw message