在木兰中获取用户名
Posted
技术标签:
【中文标题】在木兰中获取用户名【英文标题】:Get username in magnolia 【发布时间】:2020-02-19 14:36:41 【问题描述】:我正在使用以下命令在自定义 magnolia 类中获取用户名:String userName = MgnlContext.getInstance().getJCRSession("website").getUserID();
当命令被触发时,我没有获取在 magnolia 中登录的用户的名称,而是获取 admin 的值。如何获取真实用户名 - 登录 magnolia 的用户名?
【问题讨论】:
【参考方案1】:实际上要获取当前用户,您想要的是注入MgnlContext
或通过MgnlContext.getInstance()
调用获取它。
获得上下文后,调用 ctx.getUser().getName()
以获取当前用户名。
【讨论】:
【参考方案2】:您可以将info.magnolia.cms.security.SecuritySupport
注入您的班级并使用
info.magnolia.cms.security.SecuritySupport#getUserManager()
之后,您将接触到大量实用方法,可以获取所有用户或按组获取用户等。
【讨论】:
谢谢@ducaz035。我还可以获取 JCR 组件的 mgnl:lastModifiedBy 属性,因为更准确地说,我需要最后一个更改页面、组件或区域的用户。以上是关于在木兰中获取用户名的主要内容,如果未能解决你的问题,请参考以下文章