Revision: 2720 http://archive-access.svn.sourceforge.net/archive-access/?rev=2720&view=rev Author: bradtofel Date: 2009-05-20 02:22:20 +0000 (Wed, 20 May 2009) Log Message: ----------- FEATURE: now uses the possibly set context properties of the WaybackRequest to better return exceptions that do not disrupt replayed documents. Modified Paths: -------------- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java 2009-05-20 02:20:42 UTC (rev 2719) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java 2009-05-20 02:22:20 UTC (rev 2720) @@ -74,6 +74,9 @@ protected boolean requestIsImage(HttpServletRequest httpRequest, WaybackRequest wbRequest) { + if(wbRequest.isIMGContext()) { + return true; + } String requestUrl = wbRequest.getRequestUrl(); if (requestUrl == null) return false; @@ -83,14 +86,18 @@ protected boolean requestIsJavascript(HttpServletRequest httpRequest, WaybackRequest wbRequest) { - + if(wbRequest.isJSContext()) { + return true; + } String requestUrl = wbRequest.getRequestUrl(); return (requestUrl != null) && requestUrl.endsWith(".js"); } protected boolean requestIsCSS(HttpServletRequest httpRequest, WaybackRequest wbRequest) { - + if(wbRequest.isCSSContext()) { + return true; + } String requestUrl = wbRequest.getRequestUrl(); return (requestUrl != null) && requestUrl.endsWith(".css"); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
Revision: 3142 http://archive-access.svn.sourceforge.net/archive-access/?rev=3142&view=rev Author: bradtofel Date: 2010-06-01 20:03:38 +0000 (Tue, 01 Jun 2010) Log Message: ----------- New template system uses a single wrapper, which includes content from a delegate .jsp Modified Paths: -------------- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java 2010-06-01 20:01:58 UTC (rev 3141) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java 2010-06-01 20:03:38 UTC (rev 3142) @@ -102,16 +102,19 @@ return (requestUrl != null) && requestUrl.endsWith(".css"); } - public String getExceptionHandler(HttpServletRequest httpRequest, + public void renderException(HttpServletRequest httpRequest, HttpServletResponse httpResponse, WaybackRequest wbRequest, - WaybackException exception) { - // the "standard HTML" response handler: - String jspPath = errorJsp; + WaybackException exception, ResultURIConverter uriConverter) + throws ServletException, IOException { + httpRequest.setAttribute("exception", exception); + UIResults uiResults = new UIResults(wbRequest,uriConverter,exception); + boolean handled = false; if(!wbRequest.isReplayRequest()) { if(wbRequest.isXMLMode()) { - jspPath = xmlErrorJsp; + uiResults.forward(httpRequest, httpResponse, xmlErrorJsp); + handled = true; } } else if (requestIsEmbedded(httpRequest, wbRequest)) { @@ -119,40 +122,31 @@ // try to not cause client errors by sending the HTML response if // this request is ebedded, and is obviously one of the special // types: + handled = true; - if (requestIsJavascript(httpRequest, wbRequest)) { - jspPath = javascriptErrorJsp; + uiResults.forward(httpRequest, httpResponse, + javascriptErrorJsp); } else if (requestIsCSS(httpRequest, wbRequest)) { - jspPath = cssErrorJsp; + uiResults.forward(httpRequest, httpResponse, cssErrorJsp); } else if (requestIsImage(httpRequest, wbRequest)) { - jspPath = imageErrorJsp; + uiResults.forward(httpRequest, httpResponse, imageErrorJsp); + } else { + handled = false; } } - return jspPath; + if(!handled) { + uiResults.forwardWrapped(httpRequest, httpResponse, + errorJsp, wbRequest.getAccessPoint().getWrapperJsp()); + } } - /* (non-Javadoc) - * @see org.archive.wayback.ExceptionRenderer#renderException(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, org.archive.wayback.core.WaybackRequest, org.archive.wayback.exception.WaybackException) - */ - public void renderException(HttpServletRequest httpRequest, - HttpServletResponse httpResponse, WaybackRequest wbRequest, - WaybackException exception, ResultURIConverter uriConverter) - throws ServletException, IOException { - String jspPath = getExceptionHandler(httpRequest, httpResponse, - wbRequest, exception); - - httpRequest.setAttribute("exception", exception); - UIResults uiResults = new UIResults(wbRequest,uriConverter,exception); - uiResults.forward(httpRequest, httpResponse, jspPath); - } - public String getErrorJsp() { return errorJsp; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
Revision: 3180 http://archive-access.svn.sourceforge.net/archive-access/?rev=3180&view=rev Author: bradtofel Date: 2010-07-20 23:52:12 +0000 (Tue, 20 Jul 2010) Log Message: ----------- TWEAK: somewhat undoing wrapper code, at least allowing it to be optional Modified Paths: -------------- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java 2010-07-20 23:51:47 UTC (rev 3179) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java 2010-07-20 23:52:12 UTC (rev 3180) @@ -142,8 +142,13 @@ } } if(!handled) { - uiResults.forwardWrapped(httpRequest, httpResponse, - errorJsp, wbRequest.getAccessPoint().getWrapperJsp()); + String wrapperJsp = wbRequest.getAccessPoint().getWrapperJsp(); + if(wrapperJsp != null) { + uiResults.forwardWrapped(httpRequest, httpResponse, + errorJsp, wrapperJsp); + } else { + uiResults.forward(httpRequest, httpResponse, errorJsp); + } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
Revision: 3419 http://archive-access.svn.sourceforge.net/archive-access/?rev=3419&view=rev Author: bradtofel Date: 2011-03-09 05:35:36 +0000 (Wed, 09 Mar 2011) Log Message: ----------- BUGFIX: (unreported) wasn't checking for null WaybackRequest that caused a NPE Modified Paths: -------------- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java Modified: trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java =================================================================== --- trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java 2011-02-28 23:55:04 UTC (rev 3418) +++ trunk/archive-access/projects/wayback/wayback-core/src/main/java/org/archive/wayback/exception/BaseExceptionRenderer.java 2011-03-09 05:35:36 UTC (rev 3419) @@ -69,6 +69,9 @@ protected boolean requestIsImage(HttpServletRequest httpRequest, WaybackRequest wbRequest) { + if (wbRequest == null) { + return false; + } if(wbRequest.isIMGContext()) { return true; } @@ -81,6 +84,9 @@ protected boolean requestIsJavascript(HttpServletRequest httpRequest, WaybackRequest wbRequest) { + if (wbRequest == null) { + return false; + } if(wbRequest.isJSContext()) { return true; } @@ -90,6 +96,9 @@ protected boolean requestIsCSS(HttpServletRequest httpRequest, WaybackRequest wbRequest) { + if (wbRequest == null) { + return false; + } if(wbRequest.isCSSContext()) { return true; } @@ -105,7 +114,7 @@ httpRequest.setAttribute("exception", exception); UIResults uiResults = new UIResults(wbRequest,uriConverter,exception); boolean handled = false; - if(!wbRequest.isReplayRequest()) { + if((wbRequest != null) && !wbRequest.isReplayRequest()) { if(wbRequest.isXMLMode()) { uiResults.forward(httpRequest, httpResponse, xmlErrorJsp); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |