如何将Spring ResourceUrlEncodingFilter与速度模板一起使用

时间:2016-03-07 13:02:35

标签: java spring spring-mvc velocity

Spring boot docs建议速度模板支持ResourceUrlEncodingFilter,以便通过版本控制重写静态资产网址。从文档引用:

  

资源链接在运行时在模板中重写,这要归功于为Thymeleaf,Velocity和FreeMarker自动配置的ResourceUrlEncodingFilter。

我从this blog中找到了百里香重写的语法。但是经过几个小时的谷歌搜索后,我无法找到Velocity模板语言的语法或宏。任何人都可以向我指出解释这一点的资源。

1 个答案:

答案 0 :(得分:1)

这是一个错误,请参阅SPR-14027。 在此期间,您可以像这样定义自己的宏:

#macro( springResourceUrl $relativeUrl )$springMacroRequestContext.getContextUrl(${relativeUrl})#end

并称之为:

<script src="#springResourceUrl("/script.js")"></script>

请注意,从Spring 4.3开始不推荐使用Velocity支持(请参阅SPR-13235),应该在Spring 5.0中删除它(参见SPR-13795)。