刚接触 Java,所以...
现在的调用堆栈是这样的,(可能缺少细节,但这些是基本步骤)
- 在java中的http请求的预处理中,如果身份验证信息错误,从UI说错误的密码,我们会发送
403
回来
response.sendError(403);
- web.xml 有这个
<error-page>
<error-code>403</error-code>
<location>/error/forbidden</location>
</error-page>
- ErrorController.java 将/error/forbidden 映射到
new ModelAndView("errorPage");
- errorPage.jsp 将向用户显示静态错误消息。
现在在第 1 步,我们有函数可以为 http 响应附加详细的错误消息
sendErrorInResponse(response, errorMessage);
基本上我们会用 403
发回特定的错误消息。
我的问题是,如何将此特定错误消息传递到 errorPage.jsp
进行显示?
最佳答案
你在哪里:
new ModelAndView("errorPage");
更改为:
ModelAndView model = new ModelAndView("errorPage");
String yourCustomErrorMessage = "This is a test";
model.addObject("msg", yourCustomErrorMessage);
然后将 yourCustomErrorMessage 替换为您想要的值。
在JSP中直接在html代码中使用${msg}。像这样的东西:
<html>
<body>
<h1>HTTP 403 Forbidden</h1>
<h2>${msg}</h2>
</body>
</html>
希望有帮助。
关于java - 如何使用Java web.xml显示特定的错误消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59830980/