2012-02-09 137 views
-1

后,我想登录与Facebook Grails中,错误访问应用程序登录

我使用Spring Security的核心,春季安全用户界面和春季安全Facebook在我的Grails应用提供与Facebook功能的登录界面,在我的应用程序。这是让我登录使用Facebook和弹出消失。然后在访问应用程序的任何部分与任何请求的地图设置也显示出

No such property: roles for class: SecUser 
No such property: roles for class: FacebookUser 

groovy.lang.MissingPropertyException: No such property: roles for class: com.redkan.FacebookUser 
    org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:49) 

回答

0

当用户通过Facebook注册,你需要适当的角色分配给用户一流的roles财产并保存错误。在你的情况下,用户似乎没有任何角色被保存。

个人而言,我不喜欢使用Facebook插件,因为使用Facebook API直接整合Facebook登录所需的代码总数少于100行。

我可以分享我用来添加Facebook集成(不使用插件)的代码,如果你需要它?

+0

谢谢唐其乐趣适当的名称,如果ü可以分享,这样我就可以继续工作 – vimalatha 2012-02-09 12:43:13

0

依我之见,你的方法getRolesFacebookAuthDao的有类似:

Collection<GrantedAuthority> roles = [] 
    FacebookUser.withTransaction { 
     roles = user.roles 
    } 
    return roles 

但你FacebookUser域没有roles财产。

我猜你对当局的名单不同的名字,如果这是真的,你必须使用有

+0

谢谢Splix我的Facebook用户域扩展secuser域,我有权威的secrole域,我的问题是我的用户正在登录到Facebook,但是当我尝试访问我的应用时,它给了我这样的错误groovy.lang.MissingPropertyException:没有这样的属性:角色类:com.redkan.FacebookUser org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:49) – vimalatha 2012-02-09 12:51:54

+0

那么,请问您的FacebookUser域有这样的属性吗? – 2012-02-09 13:12:13

+0

@ SPLIX没有我facebookUser域不具有这样的属性 – vimalatha 2012-02-09 13:24:47