如何在JSP错误页面中显示请求的URL?
在错误页面中,我想显示用户请求的URL。
在我的web.xml中 :
MyStuff 404 /WEB-INF/error-404.jsp
这将转发到error-404.jsp ,这是该文件的内容:
Page Not found
问题是request.getRequestURL()
需要更改,但不知道搜索内容的关键字。
当我启动浏览器http://localhost:8080/MyStuff
我收到以下错误:
Requested resource: http://localhost:8080/MyStuff/WEB-INF/error-404.jsp not found
怎么解决这个?
以下是JSP错误页面的一个简单示例,它显示了错误代码和请求页面的URL:
404.jsp :
<%@ page language="java" isErrorPage="true" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Error page 404 Page Not Found.
Error code: ${pageContext.errorData.statusCode}
Request URI: ${pageContext.request.scheme}://${header.host}${pageContext.errorData.requestURI}
有用的阅读:
- JavaServer Pages规范(JSR 245)中的“ JSP.1.4error handling ”部分。
- 处理JSP页面错误 (来自官方Java EE 5教程)
PS
不鼓励在JSP中使用scriptlet。 阅读这篇文章 。