1

socialauth スプリング サンプル (http://code.google.com/p/socialauth/wiki/SpringSample) を実行しようとしていますが、Facebook に接続しようとすると、SuccessController.java から socialAuthTemplate.getSocialAuthManager() が呼び出されます。 null を返します。sociaauth.jar の関数であり、そのコードにアクセスできないため、何が間違っているかを調べるためにデバッグを行うことはできません。誰かが以前にこの問題を抱えていましたか? 私は何をすべきか?私の唯一の推測は、プロジェクトを正しく構成しなかったことです (ライブラリや機能を含めていませんでした)。私はネットビーンズを扱っています。

これはコードです:

@Controller
public class SuccessController {

    @Autowired
    private SocialAuthTemplate socialAuthTemplate;

    @RequestMapping(value = "/authSuccess")
    public ModelAndView getRedirectURL(final HttpServletRequest request)
                    throws Exception {
            ModelAndView mv = new ModelAndView();
            List<Contact> contactsList = new ArrayList<Contact>();
            SocialAuthManager manager = socialAuthTemplate.getSocialAuthManager();     //returns null
            AuthProvider provider = manager.getCurrentAuthProvider();
            contactsList = provider.getContactList();
            if (contactsList != null && contactsList.size() > 0) {
                    for (Contact p : contactsList) {
                            if (!StringUtils.hasLength(p.getFirstName())
                                            && !StringUtils.hasLength(p.getLastName())) {
                                    p.setFirstName(p.getDisplayName());
                            }
                    }
            }
            mv.addObject("profile", provider.getUserProfile());
            mv.addObject("contacts", contactsList);
            mv.setViewName("/jsp/authSuccess.jsp");

            return mv;
    }  
4

1 に答える 1

0

spring 構成ファイルで socialAuthTemplate クラスのスコープを確認できますか。セッションスコープが必要です。

 <bean id="socialAuthTemplate" class="org.brickred.socialauth.spring.bean.SocialAuthTemplate" scope="session">
    <aop:scoped-proxy/>
</bean>

socialauth のコード ベースが必要な場合は、次の場所から socialauth-java-sdk-2.3.zip ファイルをダウンロードできます。すべてのソース コードとサンプルが含まれています。

http://code.google.com/p/socialauth/downloads/list

于 2012-08-14T18:04:37.953 に答える