访问Spring MVC中404的URL

时间:2013-06-27 18:39:42

标签: spring-mvc

我正在尝试获取返回404状态的URL以显示在我的错误页面上。

我在我的web.xml中有这个

<error-page>
    <error-code>404</error-code>
    <location>/errors/404.html</location>
</error-page>

此控制器设置

@Controller
public class HTTPErrorController {

@RequestMapping(value="/errors/404.html", method = RequestMethod.GET)
    public String handle404(Model model, HttpServletRequest request) {
        model.addAttribute("referer", request.getRequestURL());

        return "error404";
    }
}

这给了我/error/404.html网址。

如果我尝试从HttpServletRequest访问“referer”标头:

request.getHeader("referer");

它始终为空。

我想通过模型传递URL,以便我可以在错误页面上显示它。

因此,例如,如果我在我的应用程序和404s中转到“http://www.example.com/garbage”,它将显示“error404”视图,并且我希望“http://www.example.com/garbage”可用于图。

1 个答案:

答案 0 :(得分:0)

https://tomcat.apache.org/tomcat-7.0-doc/servletapi/constant-values.html

static final java.lang.String ERROR_REQUEST_URI 调用自定义错误处理servlet或JSP页面时应由容器设置的请求属性的名称。该属性的值是java.lang.String类型。请参阅&#34;错误处理&#34;在Servlet规范中了解详细信息。 以来: Servlet 3.0 也可以看看: 常数字段值