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. |