Grails从2.2.1升级到2.3.4 @Secured Annotation

时间:2014-01-11 21:39:46

标签: grails groovy spring-security

我刚刚将我的grails应用程序从2.2.1升级到2.3.4,主要是成功并将spring spring安全插件从1.2.7.3升级到2.0-RC2。但是,我收到关于spring安全插件的错误(spring-security-core:2.0-RC2)。

    Annotation @grails.plugin.springsecurity.annotation.Secured is not allowed on element FIELD

我认为它可能与仅限于能够注释方法而不是动作的新限制有关,但我注释的方法不是动作......所以......

这是带注释的控制器(尽管所有注释都会显示该消息):

    @Secured(['IS_AUTHENTICATED_FULLY', 'ROLE_SHOW'])
        def history = {
            def instanceList = super.history(Perm.get(params.id))
            [instanceList: impInstanceList]
        }

1 个答案:

答案 0 :(得分:11)

我相信您需要将其更改为

    @Secured(['IS_AUTHENTICATED_FULLY', 'ROLE_SHOW'])
    def history() {
        def instanceList = super.history(Perm.get(params.id))
        [instanceList: impInstanceList]
    }

即。将其更改为闭包定义中的方法