1
我試圖通過glassfish自定義資源提供的屬性獲取LDAP連接。通過glassfish jndi資源獲取Active Directory連接
我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獲取連接設置。