我正在学习Spring Security的细节......它一直很慢......
现在我正在尝试从index.gsp页面访问当前登录的用户Username。我有从控制器工作的代码,但我无法获得任何其他页面的代码。我有一种感觉,我错过了关于User对象的一些关键。
这是我用于控制器的内容:
class BookController {
def springSecurityService
static allowedMethods = [save: "POST", update: "POST", delete: "POST"]
def index() {
redirect(action: "list", params: params)
}
def list(Integer max) {
def userDetails = springSecurityService.principal
params.max = Math.min(max ?: 10, 100)
[bookInstanceList: Book.list(params), bookInstanceTotal: Book.count(), muds: userDetails]
}
...
... etc
...
然后在View(gsp)中,我可以简单地执行以下操作:
Username: ${muds.getUsername() }
我如何在index.gsp中执行此操作?
答案 0 :(得分:4)
最好使用插件附带的内置标记库。 documentation显示所有各种标签,其中一个标签用于获取当前登录用户的属性。举个例子:
<sec:loggedInUserInfo field="username"/>
答案 1 :(得分:0)
$ {muds.getUsername()}是否有任何错误?尝试使用$ {muds}或更好地检查$ {muds}
的类