Liferay和ZK集成:用户信息
我编写了一个portlet并添加到liferay 我找到了从cookie获取用户名的方法: 我已经研究了zk-liferay包,其中只有JQuery相关的类。 有没有办法在ZK中获取当前用户?Liferay和ZK集成:用户信息,liferay,portlet,portal,zk,Liferay,Portlet,Portal,Zk,我编写了一个portlet并添加到liferay 我找到了从cookie获取用户名的方法: 我已经研究了zk-liferay包,其中只有JQuery相关的类。 有没有办法在ZK中获取当前用户?Execution exe=Executions.getCurrent(); Session Session=Sessions.getCurrent(); PortletSession ps=(PortletSession)session.getNativeSession(); User User=Po
Execution exe=Executions.getCurrent();
Session Session=Sessions.getCurrent();
PortletSession ps=(PortletSession)session.getNativeSession();
User User=PortalUtil.getUser((HttpServletRequest)exe.getNativeRequest());
getUserId();
遵循简单的模式
在主入口控制器类中,扩展DHtmlLayoutPortlet
在处理方法中,您可以设置liferay的commonParameter,以zk会话
我向您提供代码片段:
@Override
protected boolean process(Session sess, RenderRequest request,
RenderResponse response, String path, boolean bRichlet)
throws PortletException, IOException {
setupSessionParameters(sess, request);
return super.process(sess, request, response, path, bRichlet);
}
protected void setupSessionParameters(Session sess, RenderRequest request) {
ThemeDisplay themeDisplay = (ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);
PortletSession portletSession = request.getPortletSession();
PortletPreferences prefs = request.getPreferences();
sess.setAttribute("SESSION_ID", portletSession.getId());
sess.setAttribute("THEME_DISPLAY", themeDisplay);
sess.setAttribute("GROUP_ID", themeDisplay.getScopeGroupId());
sess.setAttribute("PORTLET_PREFERENCES", prefs);
sess.setAttribute("PORTLET_ID", themeDisplay.getPortletDisplay().getId());
sess.setAttribute("currentUser", themeDisplay.getUser().getScreenName());
}
使用zk会话在应用程序中获取这些参数
如果你想要更多的信息
它包含您想要的所有信息…:)