1

您好我正在使用 Spring ldap 在 ldap 中添加用户。

我已经在应用程序上下文文件中指定了 LDAP 的上下文源......

<bean id="contextSource" class="org.springframework.ldap.core.support.LdapContextSource">
<property name="url" value="ldap://brm-devoid-01.brocade.com:389"/>
<property name="base" value="ou=Users,dc=external,dc=brocade,dc=com"/>
<property name="userDn" value="cn=oracladmin"/>
<property name="password" value="mypassword"/>
</bean>

<bean id="ldapTemplate" class="org.springframework.ldap.core.LdapTemplate" >
<constructor-arg ref="contextSource"/>
</bean>

<bean id="activation" class="com.brocade.webportal.registration.service.ActivationImpl">
<property name="ldapTemplate" ref="ldapTemplate"/>
</bean>

有了这些规范,我就可以成功地从 LDAP 读取用户,也可以列出 LDAP 中的所有用户。但是,当我尝试使用 ldapTemplate.bind() 添加用户时,出现以下异常:

org.springframework.ldap.NameNotFoundException: [LDAP: error code 32 - Parent entry not found in the directory.]; nested exception is javax.naming.NameNotFoundException: [LDAP: error code 32 - Parent entry not found in the directory.]; remaining name 'brusertype=End User,brsupportuser=N,brprofileupdateflag=N,brresetflag=N,brsegment=GUEST,brrelationshiptype=GENERAL,cn=Dinesh Narayanan,sn=Narayanan,givenname=Dinesh,userpassword=password1,uid=testingspringldap2@intrado.com'
                at org.springframework.ldap.support.LdapUtils.convertLdapException(LdapUtils.java:174)
                at org.springframework.ldap.core.LdapTemplate.executeWithContext(LdapTemplate.java:810)
                at org.springframework.ldap.core.LdapTemplate.executeReadWrite(LdapTemplate.java:802)
                at org.springframework.ldap.core.LdapTemplate.bind(LdapTemplate.java:996)
                at com.brocade.webportal.registration.service.ActivationImpl.activateUser(ActivationImpl.java:242)
4

1 回答 1

1

查看LDAP 错误代码

看起来32意味着:

表示找不到目标对象。以下操作不返回此代码: * 查找搜索库但找不到与搜索过滤器匹配的任何条目的搜索操作。* 绑定操作。

于 2013-03-20T19:37:06.013 回答