1

我安装了 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 没有正确初始化

4

1 回答 1

2

问题解决了。

需要为一些虚拟资源提供访问权限:USERS 和 USER_GROUPS。它在门户管理面板中完成:访问 -> 资源权限 -> 虚拟资源 -> 用户(用户组)

为资源授予适当的权限(在我的情况下为所有权限)

于 2011-08-05T03:32:14.367 回答