Subject: The SYNTAX within AttributeTypes do not like the char (')
Author: eLDAP
In response to: Schema-Compliant Issues -- OpenDJ
Posted on: 07/12/2012 09:21:24 PM
While extending openDJ's schema, for example, adding into schema a new attribute 'myAttr' with the following:
dn: cn=schema
AttributeTypes: 'myAttr' with value: ( myAttr-oid NAME 'myAttr' DESC
'Standard Attribute' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )
you are going to get error similar like this:
javax.naming.directory.InvalidAttributeValueException: [LDAP: error code 21 - An error occurred while attempting to decode the attribute type "( myAttr-oid NAME 'myAttr' DESC 'Standard Attribute' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )": The provided value "( myAttr-oid NAME 'myAttr' DESC 'Standard Attribute' SYNTAX '1.3.6.1.4.1.1466.115.121.1.15' )" could not be parsed as an attribute type description because the numeric OID contained an illegal character ' at position 66]; remaining name 'cn=schema'; Operations error
It claims that the numerical OID might be the cause, but the root cause is the syntax value. If the following is used instead,
dn: cn=schema
AttributeTypes: 'myAttr' with value: ( myAttr-oid NAME 'myAttr' DESC
'Standard Attribute' SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
there is no error thrown.
>
> On 03/07/2012 02:49:46 PM
eLDAP wrote:
Once 'Schema Checking' is disabled, SunOne DS7 dose not allow to modify NO-USER-MODIFICATION attribute like 'modifytimestamp' either.
dn: uid=test,ou=people,dc=exmaple
changetype: modify
replace: modifytimestamp
modifytimestamp: 20120101180000Z
Returns with 'Constraint violation' error.
But SunOne DS7 allow to add entry with NO-USER-MODIFICATION attribute like:
dn: uid=test,ou=people,dc=exmaple
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
uid: test
cn: test test
modifytimestamp: 20120101180000Z
Note: the added entry has 'modifytimestamp' overridden with its system timestamp value.
References: