我正在使用过滤器来处理Grails应用程序的身份验证和一些其他前置条件检查.我遇到过这样一种情况,即确保在过滤器B之前始终调用过滤器A.
根据文档," 过滤器按照它们被定义的顺序执行 ",但不清楚该定义所指的是什么.我熟悉Java EE ServletFilters是如何工作的,其中序列是通过web.xml中相应标签的顺序声明的,但是由于部署是在Grails中自动处理的,我不确定在哪里可以影响订单其中设置了过滤器.
这在Grails中是否可能,如果是这样,怎么样?
更新
如果在一个类中声明了几个过滤器,很明显它们将按照声明的顺序执行.我更关心在不同类中定义的过滤器以及将考虑这些类的顺序.
我们的团队一直在使用SVN来管理体面大小的应用程序,随着时间的推移,已建立了相当复杂的分支和标签层次结构,这是遵循SVN存储库的基本标准布局,但更嵌套:
|-trunk
|-branches
| |-releases
| | |-releaseA
| | `-releaseB
| `-features
| |-featureX
| `-featureY
|-tags
|-releaseA
| |-beta
| `-RTP
`-releaseB
|-beta
`-RTP
(特征分支显然是临时分支,但我们必须考虑它们,因为在不久的将来不可能立即关闭所有这些分支)
由于几个原因,但主要是因为合并已经变得越来越痛苦,我们正在考虑转向Mercurial.
我们目前面临的主要问题是迁移现有代码库而不会丢失历史记录.我已经尝试了几个迁移工具(例如,yasvn2hg,hg convert和svn2hg),yasvn2hg是最有希望的,但它们似乎都没有能够处理嵌套的层次结构,但它们都假设分支和标签组织在一个单元中目录分别.
在这种情况下,作为旧SVN分支的转换目标的命名分支或克隆之间的选择不是限制因素,因为将理解任一解决方案.我们目前正在试验这两种选择以及它们如何适应我们当前的流程,但还没有决定.我显然对有关该问题的类似设置的建议或经验感兴趣.
那么,将嵌套的SVN分支层次结构转换为Mercurial的最佳方法是什么?
将一个分支一次转换为一个单独的存储库会非常烦人,我不确定这是否是正确的方法,这取决于工具如何处理历史合并并需要了解所有其他分支?