我安装了6.1.0.1 WebSphere Portal,将其更新到最后推荐的修订包(包括WAS)。使用LDAP服务器(Tivoli Directory Server 6.0)配置用户注册表。
组/用户管理等门户网站应用程序可以正确地与用户协作。管理控制台的管理用户/管理组也是如此。
但是当我在我的应用程序中运行这样的代码时:
String dn = "cn=agsgroup,cn=groups,dc=egov2g,dc=kz";
String id = "cn";
Context ctx = new InitialContext();
PumaHome service = (PumaHome) ctx.lookup(PumaHome.JNDI_NAME);
PumaProfile pp = service.getProfile();
PumaLocator pl = service.getLocator();
Group group = pl.findGroupByIdentifier(dn);
Map map = pp.getAttributes(group, Arrays.asList(new String[] {id}));
我总是得到一个MemberNotFoundException
com.ibm.portal.puma.MemberNotFoundException: EJPSG0002E: Requested Member does not exist.cn=agsgroup,cn=groups,dc=egov2g,dc=kz
dn是100%正确的。相同的代码适用于生产和另一个我的服务器。 但是在其他开发人员的新安装和服务器上存在所描述的问题。
我比较了工作和非工作服务器上的wimconfig.xml文件,但找不到任何差异。
寻找任何想法
更新 代码在portlet中正确运行。因此,当我在没有portlet上下文的情况下运行它时,puma未正确初始化
答案 0 :(得分:2)
问题解决了。
有必要为某些虚拟资源提供访问权限:USERS和USER_GROUPS。 它在Portal管理面板中完成:访问 - >资源许可 - >虚拟资源 - >用户(用户组)
为资源提供适当的权限(在我的情况下为所有权限)