在木兰中获取用户名
Get username in magnolia
我正在使用以下命令在自定义 magnolia class 中获取用户名:String userName = MgnlContext.getInstance().getJCRSession("website").getUserID();
我没有获取触发命令时在 magnolia 中登录的用户的名称,而是获取 admin 的值。我怎样才能获得真实的用户名 - 登录到 magnolia 的用户名?
您可以将 info.magnolia.cms.security.SecuritySupport
注入您的 class 并使用
info.magnolia.cms.security.SecuritySupport#getUserManager()
之后,您会接触到大量实用方法,可以获取所有用户或按组获取用户等。
实际上要获取当前用户,您想要的是注入 MgnlContext
或通过 MgnlContext.getInstance()
调用获取它。
获得上下文后,您可以调用 ctx.getUser().getName()
获取当前用户名。
我正在使用以下命令在自定义 magnolia class 中获取用户名:String userName = MgnlContext.getInstance().getJCRSession("website").getUserID();
我没有获取触发命令时在 magnolia 中登录的用户的名称,而是获取 admin 的值。我怎样才能获得真实的用户名 - 登录到 magnolia 的用户名?
您可以将 info.magnolia.cms.security.SecuritySupport
注入您的 class 并使用
info.magnolia.cms.security.SecuritySupport#getUserManager()
之后,您会接触到大量实用方法,可以获取所有用户或按组获取用户等。
实际上要获取当前用户,您想要的是注入 MgnlContext
或通过 MgnlContext.getInstance()
调用获取它。
获得上下文后,您可以调用 ctx.getUser().getName()
获取当前用户名。