如何在Spring MVC 3中处理未映射的请求

时间:2012-05-27 11:48:36

标签: spring-mvc http-status-code-404

我想使用spring mvc 3将所有未映射的请求映射到404错误页面,并在web.xml和控制器中为其配置以下内容:

的web.xml

<error-page>
    <error-code>404</error-code>
    <location>/error404</location>
</error-page>

控制器中的请求处理程序

@RequestMapping(value="/error404")
public String get404() {
    return "error-404.html";
}

假设我在域 mydomain 上运行,如果我在未映射的请求中没有/(例如http://mydomain/abc),它就可以正常工作,但我仍然可以获得页面error-404.html但我丢失了页面的所有样式。

所以http://mydomain/abc工作正常但http://mydomain/abc/z没有。

有人可以帮我吗?

感谢。

1 个答案:

答案 0 :(得分:2)

您可以在页面中使用$ {pageContext.request.contextPath}来查找包含锚标记链接的所有网址。 像:

<link href="${pageContext.request.contextPath}/style/front.css" rel="stylesheet" type="text/css" />