2013-02-21 2 views
3

Есть ли способ получить текущий адрес электронной почты автора и другие данные профиля в CQ5?Получить автора страницы в CQ5

Мне нужно его опубликовать на моей странице. Я мог бы сделать это текстовый компонент, и пусть сам автор добавить его, но было бы здорово, чтобы отобразить его из бэкэндом ..

На данный момент, я мог получить только имя с помощью Page.LastModifiedBy()

ответ

6

Вы можете получить имя пользователя автора через свойство jcr:createdBy на узле содержимого страницы jcr:.

Затем вы можете искать адреса электронной почты через UserManager, который вы можете adaptTo from a JcrSession object. На этой странице есть additional information on loading user information.

С 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();   
    } 
%> 
+0

ли эта работа для вас? – diffa

+0

Да ... это действительно сработало! Thnx !! –

Смежные вопросы