我运行了grails install-templates
并编辑了web.xml
以添加一些servlet过滤器。我无法理解的是为什么过滤器映射会被重新排序。
GRAILS_WORK/projects/myproject/web.xml.tmp
按正确顺序排列过滤器(A,B,C,D,E)
但是GRAILS_WORK/projects/myproject/resources/web.xml
是错误的(E,B,D,A,C)
什么会导致他们被重新订购?为什么web.xml
模板修改不会逐字传递到我的应用程序中?
答案 0 :(得分:0)
我找到了根本原因,但我不确定如何修复它。
某些插件(如缓存和资源)依赖于webxml插件,发布的版本存在缺陷,findFilterMappingNames
中的_Events.groovy
返回Set
而不是List
。因此,过滤器映射的原始排序在那时就丢失了。
看起来GitHub上有一个版本已修复,但我不确定如何让我的项目使用该特定版本,特别是当它被其他插件依赖项包含时< / p>
(包含修正的版本:https://github.com/burtbeckwith/grails-webxml/blob/master/scripts/_Events.groovy)