gpt4 book ai didi

java - ldap 插入异常

转载 作者:行者123 更新时间:2023-12-04 18:17:22 26 4
gpt4 key购买 nike

我正在尝试向目录服务器数据库添加一个条目。这些是我要插入的值:

userName=[ben@gmail.com]
driverEmail=[ben@gmail.com]
driverPassword=[ben]
firstName=[Ben]
lastName=[Hur]
newsletter=[false]

我得到了这个异常(exception):
SEVERE: Cannot create new LDAP entry
LDAPException(resultCode=object class violation, errorMessage='Entry mwUniqueIdentifier=5f9e7597-8a5f-42b0-985b-7d196040689e,ou=People,dc=mobilewarrio
r,dc=com violates the Directory Server schema configuration because it includes multiple conflicting structural objectclasses inetOrgPerson and mwUser
Account. Only a single structural objectclass is allowed in an entry')

谁能告诉我它有什么问题。

最佳答案

您没有确切显示您将如何插入这些值,因此很难过于具体。但是,异常(exception)情况非常明显。
您尝试将 inetOrgPerson 对象类和 mwUser 对象类都分配给条目,这不起作用,因为它们都被定义为结构对象类并且都没有从另一个继承(很可能 mwUser 被定义为结构对象类,因为您的schema 没有将其指定为 AUXILIARYABSTRACT 对象类)。
RFC 4512 :

An object or alias entry is characterized by precisely one structural object class superclass chain which has a single structural object class as the most subordinate object class.


有两个可能的修复应该涉及对 LDAP 模式的简单更改:
  • 如果您希望所有 mwUser 对象都是 inetOrgPerson 对象,只需像这样声明 mwUser 的子对象类 inetOrgPerson (取自 the OpenLDAP documentation ):
    对象类(1.1.2.2.2 NAME 'myPerson'
    DESC '我的人'
    SUP inetOrgPerson
    必须(myUniqueName $ givenName)
    可能我的照片)

  • 在这种情况下,您只需将 mwUser 对象类分配给您的条目。
  • 如果你不希望所有的 mwUser 对象都是 inetOrgPerson 对象,那么通过指定它是一个辅助对象类来声明它是一个 mixin,如下所示:
    对象类(1.1.2.2.1 NAME'myPhotoObject'
    DESC '混合我的照片'
    辅助的
    可能我的照片)

  • 在这种情况下,您必须将 inetOrgPerson(或另一个结构对象类)以及 mwUser 对象类分配给对象。

    关于java - ldap 插入异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11417960/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com