Here is how this file looks like in my case:
```
dn: cn=schema
objectClass: top
objectClass: ldapSubentry
objectClass: subschema
cn: schema
attributeTypes: ( 1.3.6.1.4.1.48710.1.3.1400 NAME 'customTest'
DESC 'Custom Attribute'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
X-ORIGIN 'Gluu custom attribute' )
objectClasses: ( 1.3.6.1.4.1.48710.1.4.101 NAME 'gluuCustomPerson'
SUP ( top )
AUXILIARY
MAY ( telephoneNumber $ mobile $ carLicense $ facsimileTelephoneNumber $ departmentNumber $ employeeType $ cn $ st $ manager $ street $ postOfficeBox $ employeeNumber $ preferredDeliveryMethod $ roomNumber $ secretary $ homePostalAddress $ l $ postalCode $ description $ title $ customTest )
X-ORIGIN 'Gluu - Custom persom objectclass' )
```
Two notable differences:
1. Ordering: your "attributeTypes" definitions go after "objectClasses"
2. Empty lines between them - and in this case it actually may matter
Check `/opt/opendj/logs/server.out` file, there must not be any schema-related errors. Re-arrange your definitions to match example above, restart OpenDJ and check that log again.