WebSphere Portal V6.1 获取登录用户信息

在WebSphere Portal V6.1中,要获取登录用户信息,需要修改Default.jsp文件,将session设为true,并引入wp.user.api.jar包。通过com.ibm.wps.puma.User接口获取用户ID,然后利用Java/webAppAccess.getUserInfo().getUserID()来得到用户名。

首先修改IBM/WebSphere/wp_profile/installedApps/[cellname]/wps.ear/wps.war/themes/html/[your theme's name]目录下的Default.jsp。
1。

将<%@ page session="false" buffer="none" %>
改成<%@ page session="true" %>
2。导入ibm user的jar包,这个包的名字是wp.user.api.jar,可以在IBM/WebSphere/PortalServer/base/wp.user.api/shared/app下找到。
<%@ page import="com.ibm.wps.puma.User" %>
3。加入如下代码

<%
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.um.User" %>
<%@ page import ="com.ibm.portal.um.PumaHome" %>
<%@ page import ="com.ibm.portal.um.PumaProfile" %>
<%@ page import ="com.ibm.portal.um.exceptions.PumaException" %>

<%@ page import ="javax.naming.*" %>

<%@ page import="java.util.*"%>

<%
  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();
Map map=pumaProfile.getAttributes(currentUser,pumaProfile.getDefinedUserAttributeNames());

System.out.println(map);

String currentUserName=(String)map.get("cn");

String dept=(String)map.get("ou");

%> 
在WPF中取用户信息:

1.添加一个“变量”构建器,输入名称“username”,类型“String”,初始值“${Java/webAppAccess.getUserInfo().getUserID()}”

2.添加一个“方法”构建器,输入名称“getUserName”,返回类型“String”,方法主体

{

return "username:"+webAppAccess.getVariables().getString("username)+":-)";

}

3.在其它要用到这个方法的构建器中输入“${MethodCall/getUserName}”即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值