我的项目一直使用 grails 2.0.1,我的控制器将它们的操作定义为方法而不是闭包。以前这些操作一直有效(即浏览器可以首先通过控制器中的操作方法呈现正确的 gsp 页面)。
最近我们注意到定制操作不再起作用,浏览器报告“404 资源未找到”。我们仍在使用 grails 2.0.1,这可以通过运行的每个 grails 命令中的“加载 grails 2.0.1”注释来确认。尽管有一些控制器/域/服务更改,但这些更改都不会影响操作方法的使用。据我所知,我们没有降级 grails/groovy 的版本。
如果我将操作更改为定义为闭包,那么它可以正常工作。但我对此并不满意,因为我的解决方案是方法是首选方式,而且它曾经有效。
我已经尝试过解决 grails 怪异的常用方法:适当的清理和重建,但没有任何乐趣。此外,这在 eclipse 和 unix envs 中都是一个问题(项目作为由 grails 命令运行的战争交付),因此它必须是项目文件中的某些内容,但我无法发现任何已更改的内容。
有什么建议我的项目可能发生了什么以及如何解决?