Я установил 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
дн. 100% правильно. Этот же код работает на производстве и на другом моем сервере.
Но на новых установках и серверах других разработчиков возникает описанная проблема.
Я сравнил файлы wimconfig.xml на работающих и нерабочих серверах и не смог найти никаких отличий.
Ищу любые идеи
UPDATE
Код правильно работает в портлете. Похоже, что когда я запускаю его без контекста портлета, puma не инициализируется правильно