ログアウトボタンをクリックした後にユーザーロールを取得します。 役割は管理者であれば、私は役割がユーザーであれば、私は/ログアウトに事前に春のセキュリティとJavaでログアウトした後にユーザーロールを取得する方法は?
おかげ
を/index.jsp返す必要が/ログアウトに/login.jsp返却する必要があり
私controller.java:
@RequestMapping(value="/logout",method=RequestMethod.GET)
public String logout(HttpServletRequest request,ModelMap model)
{
model.addAttribute("userForms",userService.getActiveUserList());
model.addAttribute("Success",true);
return "/login";
}
UserService.java
public List<UserForm> getActiveUserList()
{
List<UserForm> userForms = new ArrayList<UserForm>();
List<User> users = new ArrayList<User>();
users = userDAO.getActiveList();
for (User user : users) {
String crmDomainLink=crmProperties.getProperty("CRMAppDomain");
UserForm userForm = new UserForm(
user.getUserId(),user.getName(), user.getCode(),
CRMConstants.convertUSAFormatWithTime(user.getCreatedDateTime()),
user.getIsEnabled(), null);
userForms.add(userForm);
}
return userForms;
}
あなたは次にあなたが次のメソッドを呼び出すことにより、ログインしているユーザーの役割を取得することができます
@RequestMapping(value="/logout", method = RequestMethod.GET)
public String logout(ModelMap model, Authentication authentication) {
}
に従うことによって、コントローラでAuthentication
オブジェクトを取得することができます
public List<User> getActiveList() {
return this.sessionFactory.getCurrentSession().createCriteria(User.class).add(Restrictions.and(Restrictions.eq("isEnabled", 1),Restrictions.ne("userId", 1))).list();
}