[英]Spring MVC REST : static files unaccessible because of url-pattern
我的Spring Dispatcher servlet url-pattern是/ *(正如Spring MVC REST建议的那样)
现在,所有请求都由此Servlet解决。 甚至CSS / JS / Images也可以通过servlet解决和处理。
所以,Spring MVC试图找到控制器.. :(
如何绕过这个? 有没有任何标准的方法解决这个问题?
&不想将url-pattern更改为/ rest / *(因此,/ css /或/ js等访问其他静态资源)
您可以将控制器映射到较小的URL集(即/ app / *),然后重写用户实际看到的URL,以便他们甚至不知道。 查看mvc-basic webapp示例 ,特别是web.xml和urlrewrite.xml,了解如何完成此操作。
将Spring调度程序映射到URL空间的某个子部分,并使用Tuckey重写用户处理的URL。
http://www.example.org/app/controller/action - > http://www.example.org/controller/action
只是对此进行了一次更新:Spring示例中定义的默认重写配置对我来说不是开箱即用的。 样式表,脚本等的重写规则仍然处理到/ app / *规则,随后由DispatchServlet
处理,这是不可取的。
我必须在styles / scripts / images规则中添加last="true"
属性,以指示其他规则不适用,并且我必须在任何CSS / JS包含路径中使用FreeMarker Spring URL宏。
以防有人遇到同样的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.