我正在开发一个网络应用程序。
我希望在web.xml中配置错误页面。
我想针对不同的http错误(如400,404等)创建一个单个错误页面,其中包含不同的错误消息。
例如:我想对所有http错误使用相同的错误页面“error.jsp”。 假设如果出现错误400 ,则jsp应显示“错误请求” 并且如果出现错误404 ,jsp应该显示messgae “找不到页面”。
请帮忙。
感谢。
答案 0 :(得分:1)
这实际上是可行的并且相当简单。我会在这里发布3种方式。
1)Servlets 3.0方式:如果您已升级到最新的Servlets 3.0,则可以通过省略<error-code>
的{{1}}或exception-type
元素来轻松完成此操作提供<error-page>
并为您的应用程序创建默认的error.jsp。
`
2)明确输入所有400和500,并将它们映射到<location>
中的error.jsp;这是为了您使用旧容器而不希望升级。 them
3)还有第三种方式here(@ BalusC的答案,我承认我尊重那个人的知识和他在SO上的声誉)
要在error.jsp中输出特定于错误代码的消息,请在web.xml
或${requestScope['javax.servlet.error.status_code']}
构造中使用switch-case
。