我正在使用Spring Security,我想创建一个页面,向我显示所有当前登录的用户。
为此,我有以下代码。
@RequestMapping(value="/users" , method=RequestMethod.GET)
public String users(Model model)
{
List<Object> loggedUsers = sessionRegistry.getAllPrincipals();
for (Object principal : loggedUsers) {
final User loggedUser = (User) principal;
model.addAttribute("loggedInUser", loggedUser);
}
List<Benutzer> users = userRepository.findAll();
if(users !=null)
{
model.addAttribute("benutzern",users);
}
return "users";
}
但是,我总是只有ADMIN用户。
在 最终用户登录用户=(用户)主体; 我总是得到我的ADMIN用户以及其他用户。所以这很好用。
我认为我的问题出在网页上,但是我不知道确切在哪里。
以下用户当前已登录:
<table class="table table-striped">
<thead>
<tr>
<th>Benutzername</th>
<th>Anzeigename</th>
<th>Dienstnummer</th>
</tr>
</thead>
<dl th:each="user : ${loggedInUser}">
<tr>
<td th:text="${user.username}">benutzername</td>
</tr>
</table>
也许有人可以指出我正确的方向。
谢谢。
答案 0 :(得分:0)
好了,问了问题之后,我立即找到了解决方案。 我必须更改以下行。我不知道我是如何监督的。
model.addAttribute("loggedInUser", loggedUsers);