导航栏中未显示“请求映射”选项

时间:2017-07-25 17:22:10

标签: grails

我无法在导航栏中显示“requestmap”选项。我做了一些谷歌搜索,但无法解决问题。我和使用Grails 2.5.1&依赖插件是:

enter image description here

compile ":spring-security-core:2.0-RC5"
compile ":spring-security-ui:1.0-RC2"

我通过运行命令s2-quickstart com.domain.pack User Role Requestmap创建了域类。

我尝试了几个选项,例如根据文档将这两行放在confi.groovy文件中。

import grails.plugin.springsecurity.SecurityConfigType
grails.plugin.springsecurity.securityConfigType = SecurityConfigType.Requestmap

但是当我运行应用程序时,它会在浏览器中重定向ERR_TOO_MANY_REDIRECTS。然后我尝试了选项:

我的Bootstrap.groovy文件中的

springSecurityService.clearCachedRequestmaps()但都是徒劳的。我被困住了,任何帮助都会受到影响。 感谢。

def init = { servletContext ->
    User testuser = new User(username:'admin', password:'secret', enabled:true).save()
    Role  admin = new Role(authority: 'ROLE_ADMIN').save();

    UserRole.create(testuser, admin)

    if (!Requestmap.count()) {
    for (String url in [
            '/screen/index', '/index', '/index.gsp', '/**/favicon.ico',
            '/assets/**', '/**/js/**', '/**/css/**', '/**/images/**',
            '/login', '/login.*', '/login/*',
            '/logout', '/logout.*', '/logout/*']) {
        new Requestmap(url: url, configAttribute: 'permitAll').save()
    }
        new Requestmap(url: '/screen/*', configAttribute: 'ROLE_ADMIN').save()

   }
    springSecurityService.clearCachedRequestmaps()

}
def destroy = {
}

}

enter image description here

1 个答案:

答案 0 :(得分:0)

我也面临同样的问题。在Bootsrap.groovy中添加此代码为我修复了它。

new Requestmap(url: '/logout/**', configAttribute: 'IS_AUTHENTICATED_REMEMBERED,IS_AUTHENTICATED_FULLY').save();
new Requestmap(url: '/login/**', configAttribute: 'IS_AUTHENTICATED_ANONYMOUSLY').save()
new Requestmap(url: '/index/**', configAttribute: 'IS_AUTHENTICATED_ANONYMOUSLY').save();   

希望它也适合你。