Grails控制器请求变量

Grails控制器请求变量,grails,Grails,在我们的Grails1.3.x应用程序中,我们曾经做过def user=request.userDefinedInAFilter,这不是在控制器方法中,而是在类的主体中,效果很好。现在,当升级到2.1.2时,在尝试创建bean时会出现以下错误: Caused by: groovy.lang.MissingMethodException: No signature of method: com.MyController.getRequest() is applicable for argument

在我们的Grails1.3.x应用程序中,我们曾经做过
def user=request.userDefinedInAFilter
,这不是在控制器方法中,而是在类的主体中,效果很好。现在,当升级到2.1.2时,在尝试创建bean时会出现以下错误:

Caused by: groovy.lang.MissingMethodException: No signature of method: com.MyController.getRequest() is applicable for argument types: () values: []

我可以把它放在controller方法或before块中,只是想找出处理它的最佳方法。

我假设这是因为这些方法以前添加到元类中,但现在通过AST转换添加到字节码中。如果所有方法都需要它,您可以将它添加到拦截之前的
中,并在那里设置字段,或者在需要它的每个方法中进行调用。

谢谢。这是很少和遥远的,所以现在我只是把它移动到必要的方法。它只是一个控制器,每个方法都需要它。