我的目录结构为
ou=studentBase,dc=example,dc=com
在我的安全XML中,我有
<bean id="contextSource" class="org.springframework.ldap.core.support.LdapContextSource">
<property name="base" value="ou=studentBase,dc=example,dc=com" />
<property name="url" value="ldaps://serveraddress:port" />
<property name="userDn" value="username" />
<property name="password" value="pwd" />
</bean>
我想要查询容器对象的属性
cn=container,cn=schema,cn=configuration,dc=example,dc=com
当我使用基本设置搜索
时cn=container,cn=schema,cn=configuration,dc=example,dc=com
ldapTemplate.search(base, filter.encode(), new AttributesMapper()){
}
我收到错误
org.springframework.ldap.NameNotFoundException: [LDAP: error code 32 - 0000208D: NameErr: DSID-03100238, problem 2001 (NO_OBJECT), data 0, best match of: 'ou=studentBase,dc=example,dc=com']; nested exception is
javax.naming.NameNotFoundException: [LDAP: error code 32 - 0000208D: NameErr: DSID-03100238, problem 2001 (NO_OBJECT), data 0, best match of:
'ou=studentBase,dc=example,dc=com']; remaining name cn=container,cn=schema,cn=configuration,dc=example,dc=com
问题是我无法更改基础来搜索除了我放入xml配置文件的基础之外的任何内容。我也试过了SearchControls
并遇到了同样的问题。我怎样才能在不同的基础上搜索。我已经编写了整个应用程序,无法解决这个问题。