使用Spring Data Ldap时无法创建新条目

问题描述

我有一个ldap,其格式如下:

enter image description here

我正在尝试添加新用户,但我似乎无法使其正常工作... 这就是我映射用户实体的方式:

@Entry(base = "ou=users",objectClasses = {"inetorgPerson","organizationalPerson","person","top","simulatedMicrosoftSecurityPrincipal"})
public class UserEntity {

    @Id
    @JsonIgnore
    private Name id;
    private String cn;
    private String uid;
    private String userpassword;

    public UserEntity(Name id,String cn,String uid,String userpassword) {
        this.id = id;
        this.cn = cn;
        this.uid = uid;
        this.userpassword = userpassword;
    }

    public UserEntity() {
    }

    public Name getId() {
        return id;
    }

    public void setId(Name id) {
        this.id = id;
    }

    public String getCn() {
        return cn;
    }

    public void setCn(String cn) {
        this.cn = cn;
    }

    public String getUid() {
        return uid;
    }

    public void setUid(String uid) {
        this.uid = uid;
    }

    public String getUserpassword() {
        return userpassword;
    }

    public void setUserpassword(String userpassword) {
        this.userpassword = userpassword;
    }

    @Override
    public String toString() {
        return "UserEntity{" +
                "id=" + id +
                ",cn='" + cn + '\'' +
                ",uid='" + uid + '\'' +
                ",userpassword='" + userpassword + '\'' +
                '}';
    }
}

我也有一个存储库:

@Repository
public interface UserRepository extends LdapRepository<UserEntity> {

}

还有一个应该存储用户的控制器:

@PostMapping("/user")
public UserEntity getUsers(@RequestBody UserEntity userEntity) throws Exception{

    userEntity.setId(LdapUtils.newLdapName("ou=users"));
    UserEntity save = userRepository.save(userEntity);

    return save;

}

每当我尝试插入用户时,都会收到如下错误

: ERR_277 Attribute cn not declared in objectClasses of entry ou=users,dc=wimpi,dc=net]

我不明白我在做什么错...请求是这样完成的:

{
    "cn":"test2","uid":"test3","userpassword":"secret"
}

是否应该在ou = users组上创建一个新条目?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...