1 31 32 package org.opencms.main; 33 34 import org.opencms.jsp.util.CmsJspStatusBean; 35 import org.opencms.util.CmsStringUtil; 36 37 import java.io.IOException ; 38 39 import javax.servlet.ServletConfig ; 40 import javax.servlet.ServletException ; 41 import javax.servlet.http.HttpServletRequest ; 42 import javax.servlet.http.HttpServletResponse ; 43 44 63 public class OpenCmsServletErrorHandler extends OpenCmsServlet { 64 65 66 private static final long serialVersionUID = 5316004893684482816L; 67 68 73 public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException , ServletException { 74 75 Integer errorStatus = (Integer )req.getAttribute(CmsJspStatusBean.ERROR_STATUS_CODE); 77 if (errorStatus != null) { 78 if (OpenCmsCore.getInstance().getRunLevel() > OpenCms.RUNLEVEL_3_SHELL_ACCESS) { 80 super.doGet(req, res); 82 } else { 83 String errorMessage = (String )req.getAttribute(CmsJspStatusBean.ERROR_MESSAGE); 85 if (CmsStringUtil.isEmptyOrWhitespaceOnly(errorMessage)) { 86 errorMessage = ""; 87 } 88 String output = "<html><body>" 89 + CmsStringUtil.escapeHtml(Messages.get().getBundle().key( 90 Messages.ERR_OPENCMS_NOT_INITIALIZED_2, 91 errorStatus, 92 errorMessage)) 93 + "</body></html>"; 94 res.setStatus(errorStatus.intValue()); 95 res.getWriter().println(output); 96 } 97 } else { 98 res.sendError(HttpServletResponse.SC_FORBIDDEN); 100 } 101 } 102 103 106 public void init(ServletConfig config) { 107 108 } 110 } | Popular Tags |