<%@ page isErrorPage="true" %> <%@ page import="at.knowcenter.wag.egov.egiz.web.LocalRequestHelper" %> <%@ page import="at.knowcenter.wag.egov.egiz.web.servlets.SignServlet" %> <%@ page import="at.knowcenter.wag.egov.egiz.exceptions.*" %> <%@ page import="at.gv.egiz.pdfas.web.SignSessionInformation" %> <%@ page import="at.knowcenter.wag.egov.egiz.web.SessionAttributes" %> <%@ page import="org.apache.commons.httpclient.util.EncodingUtil" %> <%@ page import="org.apache.commons.httpclient.NameValuePair" %> <%@ page import="at.gv.egiz.pdfas.web.helper.SignServletHelper" %> <%@ page import="java.io.*" %> <%@ include file="language.jsp" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title><fmt:message key="error.title"/></title> <base href="<%=LocalRequestHelper.getLocalContextAddress(request,response)%>/"/> <meta http-equiv="Cache-Control" content="no-cache"/> <meta http-equiv="Pragma" content="no-cache"/> <meta http-equiv="Expires" content="-1"/> </head> <% PresentableException pe; if (exception != null && exception instanceof PresentableException) { pe = (PresentableException)exception; SignServlet.prepareDispatchToErrorPage(pe, request); } else { pe = (PresentableException)request.getAttribute("PresentableException"); } String error = request.getParameter("error"); boolean paramInvok = false; if (error == null) { error = (request.getAttribute("error") == null ? "" : request.getAttribute("error").toString()); } else { paramInvok = true; } String cause = request.getParameter("cause"); if (cause == null) { cause = (request.getAttribute("cause") == null ? "" : request.getAttribute("cause").toString()); } else { paramInvok = true; } boolean rb = Boolean.TRUE.equals((Boolean) request.getAttribute("resourcebundle")); SignSessionInformation si = (SignSessionInformation) session.getAttribute(SessionAttributes.ATTRIBUTE_SESSION_INFORMATION); boolean isExternalInvocation = (si != null && si.exappinf != null); if (isExternalInvocation) { String urlParams = EncodingUtil.formUrlEncode(new NameValuePair[] { new NameValuePair("error", error), new NameValuePair("cause", cause) }, "ISO8859_1"); if (si.exappinf.invoke_error_url == null) { // prevent circular redirect si.exappinf = null; String redirectUrl = response.encodeRedirectURL(request.getContextPath() + "/jsp/error.jsp" + "?" + urlParams); session.setAttribute(SessionAttributes.PARENT_WEBAPP_REDIRECT_URL, redirectUrl); } else { String errorUrl = si.exappinf.invoke_error_url + "?" + urlParams; session.setAttribute(SessionAttributes.PARENT_WEBAPP_REDIRECT_URL, errorUrl); } String redirectHelper = response.encodeRedirectURL(request.getContextPath() + "/jsp/redirect_to_parent.jsp"); SignServletHelper.disableBrowserCacheForResponse(response); response.sendRedirect(redirectHelper); } %> <body> <h1><fmt:message key="common.title"/></h1> <h2><fmt:message key="error.heading2"/></h2> <div class="pdfasnote"> <% if (rb) { %> <fmt:message key="<%= error %>"/> <% } else { out.write(error); } %> </div> <div class="pdfasnote"><fmt:message key="error.cause"/>: <strong> <% if (rb) { %> <fmt:message key="<%= cause %>"/> <% } else { out.write(cause); } %> </strong></div> <% if (!isExternalInvocation && !paramInvok) { %> <div class="pdfasverticalspace"></div> <a href="<%=LocalRequestHelper.getLocalContextAddress(request,response)%>/"><fmt:message key="common.back"/></a> <% } // end if %> <pre style="display:none"> <% if (pe != null) { StringWriter sw = new StringWriter(); PrintWriter pw = new PrintWriter(sw); pe.printStackTrace(pw); sw.close(); pw.close(); out.print(sw); } %> </pre> </body> </html>