我不想通过控制器映射我的所有xhtml页面



但我想使用Spring安全性。我想我必须在web.xml 中使用DispatcherServlet及其配置

我正在开发一个既不是jsp也不是jsf项目的应用程序,我将通过服务器通信基于javascript/ajax/jquery进行所有连接。

因此,我不想将我的xhtml页面映射到控制器。

但我有一个带有@RequestMapping(/auth/login)的控制器,我只希望它在我请求/auth/login时运行——这不是问题,它工作得很好。

但是当我使用时

春天org.springframework.web.servlet.DispatcherServletcontextConfigLocationclasspath:META-INF/spring-servlet.xml1.

春天/海瑟/*

并调用http://localhost:8080/app/myhtml.xhtml,它告诉我没有这个uri的映射。

我不想映射,也不想控制器运行,只想看到页面。

但是DispatcherServlet需要映射它,我怎么能告诉DispatcherServlet不要映射普通的xhtml页面呢?

选项1:

在您的springwebmvc应用程序上下文XML中,您应该放置以下内容:

<mvc:view-controller path="/myhtml.xhtml"/>

不利的一面是你必须每页都这样做。

选项2:

使用资源处理程序:

<!-- Handles HTTP GET requests for /resources/** by efficiently serving up static resources -->
<mvc:resources location="/, classpath:/META-INF/web-resources/" mapping="/static/**"/>

您的页面将像http://localhost:8080/app/static/myhtml.xhtml一样可见。

更多信息可以在Spring的文档中找到。

最新更新