29 package de.uapcore.lightpit.modules; |
29 package de.uapcore.lightpit.modules; |
30 |
30 |
31 import de.uapcore.lightpit.AbstractLightPITServlet; |
31 import de.uapcore.lightpit.AbstractLightPITServlet; |
32 import de.uapcore.lightpit.HttpMethod; |
32 import de.uapcore.lightpit.HttpMethod; |
33 import de.uapcore.lightpit.RequestMapping; |
33 import de.uapcore.lightpit.RequestMapping; |
34 import de.uapcore.lightpit.ResponseType; |
|
35 |
34 |
|
35 import javax.servlet.ServletException; |
36 import javax.servlet.annotation.WebServlet; |
36 import javax.servlet.annotation.WebServlet; |
37 import javax.servlet.http.HttpServletRequest; |
37 import javax.servlet.http.HttpServletRequest; |
38 import javax.servlet.http.HttpServletResponse; |
38 import javax.servlet.http.HttpServletResponse; |
|
39 import java.io.IOException; |
39 import java.util.Optional; |
40 import java.util.Optional; |
40 |
41 |
41 @WebServlet( |
42 @WebServlet( |
42 name = "ErrorModule", |
43 name = "ErrorModule", |
43 urlPatterns = "/error/*" |
44 urlPatterns = "/error/*" |
50 protected String getResourceBundleName() { |
51 protected String getResourceBundleName() { |
51 return "localization.error"; |
52 return "localization.error"; |
52 } |
53 } |
53 |
54 |
54 @RequestMapping(requestPath = "generic", method = HttpMethod.GET) |
55 @RequestMapping(requestPath = "generic", method = HttpMethod.GET) |
55 public ResponseType onError(HttpServletRequest req, HttpServletResponse resp) { |
56 public void onError(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { |
56 Optional.ofNullable(req.getHeader("Referer")).ifPresent( |
57 Optional.ofNullable(req.getHeader("Referer")).ifPresent( |
57 referer -> req.setAttribute(REQ_ATTR_RETURN_LINK, referer) |
58 referer -> req.setAttribute(REQ_ATTR_RETURN_LINK, referer) |
58 ); |
59 ); |
59 |
60 |
60 setStylesheet(req, "error"); |
61 setStylesheet(req, "error"); |
61 setContentPage(req, "error"); |
62 setContentPage(req, "error"); |
62 |
63 |
63 return ResponseType.HTML; |
64 renderSite(req, resp); |
64 } |
65 } |
65 } |
66 } |