我正在尝试连接到Oracle ADF中的外部weblogic嵌入式LDAP。 我刚刚找到了一个使用JpsContextFactory类的好示例代码,它没有获取任何url,用户名和密码。似乎它通过defult连接到本地weblogic ldap。我无法弄清楚如何使用这个类设置与外部weblogic ldap的连接。
示例代码:
private void initIdStoreFactory() {
JpsContextFactory ctxFactory;
try {
ctxFactory = JpsContextFactory.getContextFactory();
JpsContext ctx = ctxFactory.getContext();
LdapIdentityStore idStoreService = (LdapIdentityStore) ctx.getServiceInstance(IdentityStoreService.class);
ldapFactory = idStoreService.getIdmFactory();
storeEnv.put(OIDIdentityStoreFactory.RT_USER_SEARCH_BASES, USER_BASES);
storeEnv.put(OIDIdentityStoreFactory.RT_GROUP_SEARCH_BASES, GROUP_BASES);
storeEnv.put(OIDIdentityStoreFactory.RT_USER_CREATE_BASES, USER_BASES);
storeEnv.put(OIDIdentityStoreFactory.RT_GROUP_CREATE_BASES, GROUP_BASES);
storeEnv.put(OIDIdentityStoreFactory.RT_GROUP_SELECTED_CREATE_BASE, GROUP_BASES[0]);
storeEnv.put(OIDIdentityStoreFactory.RT_USER_SELECTED_CREATE_BASE, USER_BASES[0]);
} catch (JpsException e) {
e.printStackTrace();
throw new RuntimeException("Jps Exception encountered", e);
}
}
任何建议如何使用此代码连接到外部ldap将不胜感激。
答案 0 :(得分:0)
JpsContextFactory用于检索weblogic中的标识存储的当前信息。要将它与外部LDAP一起使用,首先需要在Weblogic中添加一个新的安全提供程序,并根据需要声明它,以便您的应用程序使用新的外部ldap。