benoitde@sympatico.ca wrote:
I tried to load a slapcat dump from OpenLDAP 2.3.27 into OpenLDAP 2.4.8, and had problems with java entries. I narrowed down the problem with this simple test case:
LDIF: [..] objectClass: javaContainer objectClass: javaObject objectClass: javaNamingReference [..] Works, but in OpenLDAP 2.4.8:
ldapadd -h sdco1cdba -p 1389 -D"cn=Manager,dc=example,dc=com" -W -x -f /tmp/bug.ldif Enter LDAP Password: adding new entry "cn=REQUEST,dc=example,dc=com" ldap_add: Object class violation (65) additional info: instanstantiation of abstract objectClass 'javaObject' not allowed
I'd guess 2.4.x is more strict regarding ABSTRACT object classes which are not meant for being directly used in entries (see section 2.4.1 of RFC 4512). I don't know this schema. Could you please post the schema definition of the 'javaObject' object class and its derived object classes?
Is there any way that I could circumvent this problem?
Probably just remove the lines with objectClass: javaObject from your LDIF.
But make sure that the other object classes needed (at least one STRUCTURAL object class) are derived from it.
Ciao, Michael.