make user info interceptor more compatible with standalone OIDC client software (with no user info service)

pull/607/head
Justin Richer 2014-05-29 12:13:38 -04:00
parent dfdc4ed52d
commit 943fae25a1
1 changed files with 3 additions and 2 deletions

View File

@ -59,7 +59,7 @@ public class UserInfoInterceptor extends HandlerInterceptorAdapter {
}) })
.create(); .create();
@Autowired @Autowired (required = false)
private UserInfoService userInfoService; private UserInfoService userInfoService;
@Override @Override
@ -85,7 +85,8 @@ public class UserInfoInterceptor extends HandlerInterceptorAdapter {
modelAndView.addObject("userInfo", oidc.getUserInfo()); modelAndView.addObject("userInfo", oidc.getUserInfo());
modelAndView.addObject("userInfoJson", oidc.getUserInfo().toJson()); modelAndView.addObject("userInfoJson", oidc.getUserInfo().toJson());
} else { } else {
if (p != null && p.getName() != null) { // don't bother checking if we don't have a principal // don't bother checking if we don't have a principal or a userInfoService to work with
if (p != null && p.getName() != null && userInfoService != null) {
// try to look up a user based on the principal's name // try to look up a user based on the principal's name
UserInfo user = userInfoService.getByUsername(p.getName()); UserInfo user = userInfoService.getByUsername(p.getName());