我正在尝试在其他登录用户(例如“ Admin”)的jsp页面中重定向,并在另一视图中重定向未登录的用户。到目前为止,这是我的方法...
@RequestMapping(value = "/lidhOfruesKerkues", method = RequestMethod.POST)
public ModelAndView lidhOfruesKerkues(@ModelAttribute("merrPersiperKerkues") Kerkues k, Ofrues ofrues,
Authentication authResult) {
ofruesService.addOfrues(ofrues);
int kerkuesId = k.getKerkuesId();
ofruesService.matchOfruesKerkues(kerkuesId);
String role = authResult.getAuthorities().toString();
if (role.contains("ROLE_ADMIN")) {
return new ModelAndView("redirect:/adminHome");
}
return new ModelAndView("redirect:/ofrojNdihmeView/getKerkuesAktiv");
}
当我作为未登录用户时,抛出的错误是java.lang.NullPointerException: null
,它来自“角色”。如果我以ADMIN身份登录,它将正常工作并重定向我。
预先感谢。
答案 0 :(得分:0)
您需要在代码中添加一个空检查,如下所示:
String role = null;
if (authResult != null && authResult.getAuthorities() != null) {
role = authResult.getAuthorities().toString();
}
if (role != null && role.contains("ROLE_ADMIN")) {