使用Spring框架进行静态资源版本控制不起作用

时间:2019-07-18 21:16:05

标签: java spring

我正在尝试使用Spring设置静态资源版本控制。我可以在我的jsp中获得版本化的URL。但是当发出该请求时,我得到ERR_ABORTED 404(未找到)。

在web.xml中,我有这个。

<filter>
      <filter-name>resourceUrlEncodingFilter</filter-name>
        <filter-class>
            org.springframework.web.servlet.resource.ResourceUrlEncodingFilter
        </filter-class>
    </filter>
    <filter-mapping>
        <filter-name>resourceUrlEncodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

我已经配置了mvc:resources

<mvc:resources mapping="/components/**" location="/components/" cache-period="31556926">
        <mvc:resource-chain resource-cache="true">
            <mvc:resolvers>
                <mvc:version-resolver>
                    <mvc:content-version-strategy patterns="/**"/>
                </mvc:version-resolver>
            </mvc:resolvers>
        </mvc:resource-chain>
    </mvc:resources>

在我的jsp中,我有

<script type="text/javascript" src="<c:url value='/components/abc/foo.js' />"></script>

我看到Spring返回foo-2ef843dad601376b6c3eaa6fec7df9b2.js。

但是当从浏览器发出此请求时,我在浏览器控制台中看到以下错误。 GET http://localhost:8080/a/components/abc/foo-2ef843dad601376b6c3eaa6fec7df9b2.js net :: ERR_ABORTED 404(未找到)

更新:

我创建了一个简单的Spring MVC应用程序,并如上所述将版本控制放入其中。很好。因此,这与在我们的应用程序配置中包含其他元素有关。主要的变化是我们具有Spring Security。是否有人知道将版本控制和Spring Security一起使用会遇到任何问题?谢谢。

0 个答案:

没有答案