我正在尝试运行 socialauth spring 示例(http://code.google.com/p/socialauth/wiki/SpringSample),但是当我尝试与 Facebook 连接时,来自 SuccessController.java 的 socialAuthTemplate.getSocialAuthManager() 调用返回空值。我无法进行任何调试以找出我做错了什么,因为它是来自 sociaauth.jar 的函数,我无权访问它的代码。以前有人遇到过这个问题吗?我应该怎么办?我唯一的猜测是我没有正确配置项目(我没有包含一些库或smth)。我正在使用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;
}