Я пытаюсь получить LDAP-соединение с атрибутами, предоставленными пользовательским ресурсом Glassfish.
Мои настройки jndi:
Resourcetype: javax.naming.directory.Directory
Factory-Class: com.sun.jndi.ldap.LdapCtxFactory
Parameters:
java.naming.security.credentials = myPassword
java.naming.security.principal = cn=ldapUser,ou=myOrganization,dc=myDomain,dc=net
URL = ldap://ldapserver/ou=myOrganization,dc=myDomain,dc=net
Вот как я получаю соединение в Java:
Context initCtx = new InitialContext();
DirContext ctx = (DirContext) initCtx.lookup("CMDB2LDAP");
Это отлично работает с OpenLDAP, но когда я пытаюсь подключиться к AD 2003, я получаю следующее исключение:
javax.naming.NamingException: [LDAP: error code 1 - 00000000: LdapErr: DSID-0C090627, comment: In order to perform this operation a successful bind must be completed on the connection., data 0, vece]; remaining name ''
Когда я создаю свой собственный DirContext и помещаю в него точно такие же свойства, соединение работает безупречно.
Я бы предпочел получить настройки подключения от Glassfish для простоты администрирования.