5

我有我的应用程序弹簧安全登录弹簧3.1。我正在尝试添加使用Spring社交的Facebook登录。 它进入Facebook登录页面,但后登录它会引发404错误。我有这样的URL:春季社交 - 404登录错误

http://localhost:8080/TestProject/signin?error=provider#_=_ 

这里去我的春天社会配置:

<bean class="org.springframework.social.connect.web.ProviderSignInController"> 
<!-- relies on by-type autowiring for the constructor-args -->  
<constructor-arg ref="signInAdapter" /> 
</bean> 

<bean id="connectionFactoryLocator" 
    class="org.springframework.social.connect.support.ConnectionFactoryRegistry"> 
<property name="connectionFactories"> 
    <list> 
     <bean class="org.springframework.social.facebook.connect.FacebookConnectionFactory"> 
      <constructor-arg value="${fb.id}" /> 
      <constructor-arg value="${fb.passwrd}" />    
     </bean> 
    </list> 
</property> 
</bean> 

<bean id="connectionRepository" factory-method="createConnectionRepository" 
    factory-bean="usersConnectionRepository" scope="request"> 
<constructor-arg value="#{request.userPrincipal.name}" /> 
<aop:scoped-proxy proxy-target-class="false" /> 
</bean> 

<bean id="signInAdapter" class="com.Test.social.SimpleSignInAdapter"/> 

<bean id="usersConnectionRepository" 
    class="org.springframework.social.connect.jdbc.JdbcUsersConnectionRepository"> 
<constructor-arg ref="dataSource" /> 
<constructor-arg ref="connectionFactoryLocator" /> 
<constructor-arg ref="textEncryptor" /> 
</bean> 

<bean id="textEncryptor" class="org.springframework.security.crypto.encrypt.Encryptors" 
     factory-method="noOpText" /> 
</beans> 

有什么想法?

回答

0

你正在使用什么春季社交版? (必须是1.0.X)

您是否创建了Facebook应用程序? (您需要在FacebookConnectionFactory构造函数中提供应用程序密钥/秘密)。看来你正在使用你的Facebook用户/密码。

+0

是的,我使用春季社交1.0.2。 – shazinltc 2012-08-02 04:15:05

+0

和我已经创建了Facebook应用程序,并给出了appid,键.. – shazinltc 2012-08-02 05:56:25

+0

配置看起来确定..你可以分享你在日志中看到的东西。 – 2012-08-02 15:00:26

0

我也只是suddently碰巧得到重定向到signin?error=provider#_=_

原因是在这个“错误消息”重复发生之前,我更新了本地JDK安装。通过这个新的JDK安装,我对Java安装安全设置的任何更改都被重新设置为“全新安装默认值”。特别是,我手动安装的UnlimitedJCEPolicy不再可用。 重新安装UnlimitedJCEPolicy解决了我的问题

在我的特殊情况下,我没有使用noOpText() TextEncryptor,而是使用queryableText(..) TextEncryptor

+0

对我来说,这是应用程序Id的一些问题.. :)谢谢你的回答 – shazinltc 2013-03-16 14:18:12