Java 如何在LDIF文件中添加属性?
我想使用LDIF文件用Spring测试LDAP 我不使用xml 我实现了从LDIF文件读取所有基本属性 如何添加一些自定义属性 到目前为止,我使用了这种语法Java 如何在LDIF文件中添加属性?,java,ldap,spring-ldap,ldif,Java,Ldap,Spring Ldap,Ldif,我想使用LDIF文件用Spring测试LDAP 我不使用xml 我实现了从LDIF文件读取所有基本属性 如何添加一些自定义属性 到目前为止,我使用了这种语法 dn: cn=name,ou=people,dc=springframework,dc=org objectclass: top objectclass: person cn: name sn: name uid: name mail: name@gmail.com givenName: name userPassword: namespa
dn: cn=name,ou=people,dc=springframework,dc=org
objectclass: top
objectclass: person
cn: name
sn: name
uid: name
mail: name@gmail.com
givenName: name
userPassword: namespassword
changetype: modify
add: telephonenumber
telephonenumber: 555-2468
…但它无法读取文件,因为它无法识别“changeType”属性
编辑问题
我有这个档案:
dn: dc=springframework,dc=org
objectclass: top
objectclass: domain
objectclass: extensibleObject
dc: springframework
dn: ou=groups,dc=springframework,dc=org
objectclass: top
objectclass: organizationalUnit
ou: groups
dn: ou=subgroups,ou=groups,dc=springframework,dc=org
objectclass: top
objectclass: organizationalUnit
ou: subgroups
dn: ou=people,dc=springframework,dc=org
objectclass: top
objectclass: organizationalUnit
ou: people
dn: ou=space cadets,dc=springframework,dc=org
objectclass: top
objectclass: organizationalUnit
ou: space cadets
dn: ou=\"quoted people\",dc=springframework,dc=org
objectclass: top
objectclass: organizationalUnit
ou: "quoted people"
dn: ou=otherpeople,dc=springframework,dc=org
objectclass: top
objectclass: organizationalUnit
ou: otherpeople
dn: uid=ben,ou=people,dc=springframework,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: Ben Alex
sn: Alex
uid: ben
userPassword: {SHA}nFCebWjxfaLbHHG1Qk5UU4trbvQ=
dn: uid=bob,ou=people,dc=springframework,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: Bob Hamilton
sn: Hamilton
uid: bob
userPassword: bobspassword
dn: uid=joe,ou=otherpeople,dc=springframework,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: Joe Smeth
sn: Smeth
uid: joe
userPassword: joespassword
dn: cn=mouse\, jerry,ou=people,dc=springframework,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: Mouse, Jerry
sn: Mouse
uid: jerry
userPassword: jerryspassword
dn: cn=slash/guy,ou=people,dc=springframework,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: slash/guy
sn: Slash
uid: slashguy
mail: slash@gmail.com
givenName: Slash Snakepit
userPassword: slashguyspassword
msExchUserAccountControl: 0
dn: cn=quote\"guy,ou=\"quoted people\",dc=springframework,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: quote\"guy
sn: Quote
uid: quoteguy
userPassword: quoteguyspassword
dn: uid=space cadet,ou=space cadets,dc=springframework,dc=org
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: Space Cadet
sn: Cadet
uid: space cadet
userPassword: spacecadetspassword
dn: cn=developers,ou=groups,dc=springframework,dc=org
objectclass: top
objectclass: groupOfUniqueNames
cn: developers
ou: developer
uniqueMember: uid=ben,ou=people,dc=springframework,dc=org
uniqueMember: uid=bob,ou=people,dc=springframework,dc=org
dn: cn=managers,ou=groups,dc=springframework,dc=org
objectclass: top
objectclass: groupOfUniqueNames
cn: managers
ou: manager
uniqueMember: uid=ben,ou=people,dc=springframework,dc=org
uniqueMember: cn=mouse\, jerry,ou=people,dc=springframework,dc=org
dn: cn=submanagers,ou=subgroups,ou=groups,dc=springframework,dc=org
objectclass: top
objectclass: groupOfUniqueNames
cn: submanagers
ou: submanager
uniqueMember: uid=ben,ou=people,dc=springframework,dc=org
我有一个例外:
原因:com.unboundd.ldap.sdk.LDAPException:无法添加条目
“cn=slash/guy,ou=people,dc=springframework,dc=org”,因为它违反了
提供的架构:条目包含属性
架构中未定义的msExchUserAccountControl
如何添加该属性?尝试将此属性添加到应用程序。属性 spring.ldap.embedded.validation.enabled=false 您也可以使用“spring.ldap.embedded.validation.schema”属性定义模式,如下所述
尝试将此属性添加到应用程序中。属性 spring.ldap.embedded.validation.enabled=false 您也可以使用“spring.ldap.embedded.validation.schema”属性定义模式,如下所述
您是在尝试使用LDIF修改现有LDAP条目,还是在通过LDIF创建新LDAP条目时,您确实有一个名为“changetype”的属性要设置?我正在尝试创建与现有LDAP结构相同的LDAP结构,但此LDIF文件是一个仅用于JUNIT测试的新文件。我需要添加其他属性,它们是自定义属性。我的目标是向LDAP条目添加一些自定义属性,我认为“changetype”是。。。如果有其他方法添加它们,请告诉我。“changetype”是在条目中使用的一个特殊LDIF指令。如果您将其省略,则假定该操作为“添加”。如果您希望对现有LDAP条目进行LDIF修改,那么修改的“changetype”是正确的,但格式与您使用的完全不同。另外,“changetype”语句通常位于“dn:”的右上角(虽然我不确定这是否重要,但这取决于解析器)。请看:我更新了问题,使之更清楚(希望如此)。非常感谢,您是在尝试使用LDIF修改现有LDAP条目,还是在通过LDIF创建新LDAP条目时,您确实有一个名为“changetype”的属性要设置?我正在尝试创建与现有LDAP结构相同的LDAP结构,但此LDIF文件是一个仅用于JUNIT测试的新文件。我需要添加其他属性,它们是自定义属性。我的目标是向LDAP条目添加一些自定义属性,我认为“changetype”是。。。如果有其他方法添加它们,请告诉我。“changetype”是在条目中使用的一个特殊LDIF指令。如果您将其省略,则假定该操作为“添加”。如果您希望对现有LDAP条目进行LDIF修改,那么修改的“changetype”是正确的,但格式与您使用的完全不同。另外,“changetype”语句通常位于“dn:”的右上角(虽然我不确定这是否重要,但这取决于解析器)。请看:我更新了问题,使之更清楚(希望如此)。谢谢