获取org.springframework.ldap.NameNotFoundException:[LDAP:错误代码32 - 目录中找不到父条目。];

时间:2010-12-21 13:03:06

标签: spring spring-ldap

您好我正在使用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)

1 个答案:

答案 0 :(得分:1)

查看LDAP Error Codes

看起来32表示:

  

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