作者·2010-10-29 09:30
·

IBM WebSphere Portal 6.1项目实施与开发、配置技巧集锦(2)

字数 1820阅读 3004评论 0赞 3
1.2 获取登录用户信息
1.2.1 问题描述
 获得登录用户对象,并取出用户名、注册邮箱等用户信息无论在主题与皮肤开发,还是Portlet开发中都经常会用到。如何取出用户信息?我们通过配置加编码的方式实现:
1.2.2 解决方案
第一种方法:标签+代码方式:
首先修改
IBM/WebSphere/wp_profile/installedApps/[cellname]/wps.ear/wps.war/themes/html/ThemeName        目录下的Default.jsp文件:
1  将<%@ page session="false" buffer="none" %>改成<%@ page session="true" %>
导入ibm user的jar包,这个包的名字是wp.user.api.jar,
可以在IBM/WebSphere/PortalServer/base/wp.user.api/shared/app下找到。
<%@ page import="com.ibm.wps.puma.User" %>
加入如下代码
<%
HttpSession mysession=request.getSession();
String loginname="";
if(mysession.getAttribute("com.ibm.wps.util.session_user")!=null){
  com.ibm.wps.puma.User myuser=(com.ibm.wps.puma.User)mysession.getAttribute("com.ibm.wps.util.session_user");
  loginname=myuser.getFullName();
}
%>
第二种方法:
<%@ page import ="com.ibm.portal.portlet.service.PortletServiceHome" %>
<%@ page import ="com.ibm.portal.portlet.service.PortletServiceUnavailableException" %>
<%@ page import ="com.ibm.portal.puma.User" %>
<%@ page import ="com.ibm.portal.um.PumaHome" %>
<%@ page import ="com.ibm.portal.um.PumaProfile" %>
<%@ page import ="com.ibm.portal.um.exceptions.PumaException" %>
<%
  PumaHome home = null;
  Context ctx = new InitialContext();
  PortletServiceHome serviceHome = (PortletServiceHome)ctx.lookup("portletservice/com.ibm.portal.um.portletservice.PumaHome");
 home = (PumaHome)serviceHome.getPortletService(PumaHome.class);
 PumaHome pumaHome = home;
 PumaProfile pumaProfile = pumaHome.getProfile();
 String currentUserName = null;
 User currentUser = (User)pumaProfile.getCurrentUser();
 currentUserName = currentUser.getName();
       out.print(currentUserName );
%>

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

3

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广