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

Java 使用Spring框架的静态资源版本控制不起作用,java,spring,Java,Spring,我正在尝试使用Spring设置静态资源版本控制。我可以在jsp中获取版本化URL。但是,当该请求被发出时,我得到了ERR_中止404(未找到) 在web.xml中,我有这个 <filter> <filter-name>resourceUrlEncodingFilter</filter-name> <filter-class> org.springframework.web.servlet.reso

我正在尝试使用Spring设置静态资源版本控制。我可以在jsp中获取版本化URL。但是,当该请求被发出时,我得到了ERR_中止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>

资源编码过滤器
org.springframework.web.servlet.resource.ResourceUrEncodingFilter
资源编码过滤器
/*
我已经配置了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 net::ERR_中止404(未找到)

更新:


我创建了一个简单的SpringMVC应用程序,并如上所述将版本控制放在其中。效果很好。因此,这与我们的应用程序配置中有其他元素有关。主要的变化是我们有了Spring Security。有人知道一起使用版本控制和Spring安全性有什么问题吗?谢谢。

这是一个Java问题,不是javascript问题。更正标记。我正在尝试进行javascript版本控制,这就是javascript的原因。我应该把这两个都放在标签里。我明白,但你的问题实际上是服务器端的。不在客户端JS上。您将从Java tag.true获得更好的帮助。我看到你换了标签。谢谢。这是一个Java问题,不是javascript问题。更正标记。我正在尝试进行javascript版本控制,这就是javascript的原因。我应该把这两个都放在标签里。我明白,但你的问题实际上是服务器端的。不在客户端JS上。您将从Java tag.true获得更好的帮助。我看到你换了标签。谢谢