0
Gooday,彈簧LDAP自動取操作字段
正在處理的工具,可以讓用戶更改有密碼(生成)。我正在使用Spring Ldap(2.1.0.RELEASE)解決問題。
現在我們要設置一些操作屬性。這是我使用的代碼:
public void updatePassword(LdapUser ldapUser) {
String[] userOrg = ldapUser.getUserName().split("@");
Name dn = buildDn(userOrg[1], ldapUser.getUserName());
DirContextOperations context = ldapTemplate.lookupContext(dn);
context.setAttributeValue(USER_PASSW, ldapUser.getUserPassword());
if(!context.attributeExists("pwdReset")) {
context.setAttributeValue("pwdReset", "TRUE");
}
ldapTemplate.modifyAttributes(context);
}
現在只要操作屬性pwdReset從不設置這一點的代碼工作正常。但是,如果它曾經被設置(因此是值FALSE)。你可以得到錯誤代碼:
LDAP:錯誤代碼20 - 修改/添加:pwdReset:值#0已經存在
現在我知道它的設計在LDAP不給操作屬性背部。但是在Spring Ldap中必須有一種方法來告訴它,你總是希望擁有操作屬性。
Anny sugestions會很好。