有没有办法在CQ5中获取当前页面作者的电子邮件地址和其他个人资料详细信息?
我需要在我的页面上发布它.我可以把它作为一个文本组件,让作者自己添加它,但从后端显示它会很酷.
现在,我只能使用该名称 Page.LastModifiedBy()
你可以通过获得作者的用户名JCR:createdBy属性页面的JCR:内容节点.
然后,您可以通过UserManager查找电子邮件地址,您可以从JcrSession对象中进行调整.此页面包含有关加载用户信息的一些其他信息.
从JSP可以做到这样的事情:
<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" import="org.apache.jackrabbit.api.security.user.*, com.day.cq.commons.jcr.*" %>
...
<%
String createdBy = properties.get(JcrConstants.JCR_CREATED_BY, String.class);
UserManager userManager = resourceResolver.adaptTo(UserManager.class);
Authorizable authorizable = userManager.getAuthorizable(createdBy);
if (authorizable.hasProperty("profile/familyName")) {
String familyName = authorizable.getProperty("profile/familyName")[0].getString();
}
%>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1759 次 |
| 最近记录: |