2012-05-21 3 views
1

Я пытаюсь запустить образец весны socialauth (http://code.google.com/p/socialauth/wiki/SpringSample), но когда я пытаюсь connect with facebook вызов socialAuthTemplate.getSocialAuthManager() из SuccessController.java возвращает null. Я не могу отлаживать, чтобы узнать, что я делаю неправильно, потому что это функция из sociaauth.jar, и у меня нет доступа к ее коду. У кого-нибудь была эта проблема раньше? Что мне делать? Мое единственное предположение, что я не настроил проект правильно (я не включил какую-то библиотеку или smth). Я работаю с netbeans.Java-библиотека SocialAuth не работает должным образом (используя NetBeans)

это код:

@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; 
    } 

ответ

0

Можете ли вы verifythe объем класса 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

+0

У меня точно такая же проблема, но с Google +, 'socialAuthTemplate.getSocialAuthManager()' возвращает нуль. Я установил код, который вы отправили в src \ main \ webapp \ WEB-INF \ socialauthdemo-servlet.xml (его демонстрационный проект socialauth), но он все еще не работает, а я должен попробовать? – Buksy