Grails 3.0.2 не может разрешить аннотацию @Secured в контроллере

Я пытаюсь обновить свое приложение с Grails 2.4.4 до Grails 3.0.2, и у меня возникла проблема с аннотацией spring.

У меня есть контроллер, например:

import grails.plugins.springsecurity.annotation.Secured

class MyController {  

    @Secured(['ROLE_ADMINS_GROUP'])
    def index() {
        // some code
    }
}

В блоке depencencies в build.gradle у меня есть это:

dependencies {
    provided 'org.springframework.boot:spring-boot-starter-logging'
    provided "org.springframework.boot:spring-boot-starter-actuator"
    provided "org.springframework.boot:spring-boot-autoconfigure"
    provided "org.springframework.boot:spring-boot-starter-tomcat"

    compile "org.springframework.boot:spring-boot-starter-security"

    provided "org.grails:grails-web-boot"
    provided "org.grails:grails-dependencies"
    provided 'javax.servlet:javax.servlet-api:3.1.0'

    testCompile "org.grails:grails-plugin-testing"

    console "org.grails:grails-console"

    compile "org.grails.plugins:wslite:0.7.2.0"
}

Когда я пытаюсь скомпилировать свое приложение, я получаю сообщение об ошибке.

MyController.groovy: 4: unable to resolve class grails.plugins.springsecurity.annotation.Secured
@ line 4, column 1.
import grails.plugins.springsecurity.annotation.Secured
^

person jjaros    schedule 18.06.2015    source источник
comment
См. этот вопрос, пожалуйста: (stackoverflow.com/ вопросы/29286659/). Ошибка возникает из-за того, что вы используете импорт из подключаемого модуля, который не включен в ваши зависимости, и вы не можете этого сделать, поскольку, как объясняется в приведенном выше ответе, подключаемый модуль Spring Security несовместим с Grails 3.0. В данный момент я не знаю, как помочь вам в этом вопросе, но я думаю, что в этом вопросе есть сообщения в блоге, которые могли бы вам помочь.   -  person cantoni    schedule 18.06.2015


Ответы (1)


Подключаемый модуль Spring Security Core уже обновлен и теперь совместим с Grails 3.0. См. документацию: Что нового в версии 3.0

Просто добавьте следующую зависимость в блок dependencies файла build.gradle:

compile "org.grails.plugins:spring-security-core:3.0.0.M1"
person jan2jen    schedule 01.10.2015