Hi First I want to thanks Apache Directory team for this great app.
I wanted to use the Apache Directory Studio to create a Test LDAP server for testing user authentication. For that I need to update the existing schema in Apache DS. When I tried to do that I ran into issues where I could not update an existing entry but could create new ones. This is what I did: 1) Create a new schema 2) Create a new Attirbute Type and Object Class adding the new Attribute Type as optional attribute and make the Object Class (person2) by a sub type of Person from Core 3) Export as LDIF 4) Import to the embedded ApacheDS server as LDIF file (update existing entries checked) 5) Worked even though got some errors 6) Created new Attribute Types and added them to the person2 as optional attributes 7) Exported as LDIF and then imported to the Apache DS server as LDIF 8) Created the new Attribute Types but failed to modify the Object Type person2 (see the Error from the log at the end) Questions: - Is that the right approach? - I found this ticket: https://issues.apache.org/jira/browse/DIRSTUDIO-808. Is that a regression in M9? I downloaded and tried the same thing with M4 and it failed as well. Thanks - Andy Schaefer Environment: Mac OS X 10.10.4 Java 1.8 (latest) Apache Studio: 2.0.0-M9 LDAP Server: embedded ApacheDS Error from the logs: #!RESULT ERROR #!CONNECTION ldap://localhost:10389 #!DATE 2015-08-08T14:25:12.464 #!ERROR [LDAP: error code 80 - OTHER: failed for MessageType : ADD_REQUEST Message ID : 48 Add Request : Entry dn[n]: m-oid=1.0.0.111.1.1, ou=objectclasses, cn=ucms, ou=schema objectclass: metaObjectClass objectclass: metaTop objectclass: top m-may: countryCode m-may: uSNChanged m-may: uSNCreated m-may: whenChanged m-may: whenCreated m-description: Test if I can add an attribute by my very own Object Class. m-name: person2 m-supObjectClass: person m-oid: 1.0.0.111.1.1 : ERR_335 Oid 1.0.0.111.1.1 for new schema entity is not unique.: org.apache.directory.api.ldap.model.exception.LdapOtherException: ERR_335 Oid 1.0.0.111.1.1 for new schema entity is not unique. at org.apache.directory.server.core.api.schema.registries.synchronizers.AbstractRegistrySynchronizer.checkOidIsUnique(AbstractRegistrySynchronizer.java:176) at org.apache.directory.server.core.api.schema.registries.synchronizers.ObjectClassSynchronizer.add(ObjectClassSynchronizer.java:102) at org.apache.directory.server.core.api.schema.registries.synchronizers.RegistrySynchronizerAdaptor.add(RegistrySynchronizerAdaptor.java:177) at org.apache.directory.server.core.api.schema.SchemaPartition.add(SchemaPartition.java:267) at org.apache.directory.server.core.shared.partition.DefaultPartitionNexus.add(DefaultPartitionNexus.java:352) at org.apache.directory.server.core.api.interceptor.BaseInterceptor$1.add(BaseInterceptor.java:165) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.journal.JournalInterceptor.add(JournalInterceptor.java:139) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.trigger.TriggerInterceptor.add(TriggerInterceptor.java:300) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.event.EventInterceptor.add(EventInterceptor.java:226) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.subtree.SubentryInterceptor.add(SubentryInterceptor.java:1014) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.collective.CollectiveAttributeInterceptor.add(CollectiveAttributeInterceptor.java:134) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.operational.OperationalAttributeInterceptor.add(OperationalAttributeInterceptor.java:232) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.schema.SchemaInterceptor.add(SchemaInterceptor.java:1074) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.hash.PasswordHashingInterceptor.add(PasswordHashingInterceptor.java:93) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.exception.ExceptionInterceptor.add(ExceptionInterceptor.java:189) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.admin.AdministrativePointInterceptor.add(AdministrativePointInterceptor.java:1201) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.authz.AciAuthorizationInterceptor.add(AciAuthorizationInterceptor.java:515) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.referral.ReferralInterceptor.add(ReferralInterceptor.java:249) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.authn.AuthenticationInterceptor.add(AuthenticationInterceptor.java:410) at org.apache.directory.server.core.api.interceptor.BaseInterceptor.next(BaseInterceptor.java:422) at org.apache.directory.server.core.normalization.NormalizationInterceptor.add(NormalizationInterceptor.java:131) at org.apache.directory.server.core.DefaultOperationManager.add(DefaultOperationManager.java:394) at org.apache.directory.server.core.shared.DefaultCoreSession.add(DefaultCoreSession.java:249) at org.apache.directory.server.core.shared.DefaultCoreSession.add(DefaultCoreSession.java:233) at org.apache.directory.server.ldap.handlers.request.AddRequestHandler.handle(AddRequestHandler.java:57) at org.apache.directory.server.ldap.handlers.request.AddRequestHandler.handle(AddRequestHandler.java:39) at org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:207) at org.apache.directory.server.ldap.handlers.LdapRequestHandler.handleMessage(LdapRequestHandler.java:56) at org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:221) at org.apache.directory.server.ldap.LdapProtocolHandler.messageReceived(LdapProtocolHandler.java:217) at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:854) at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:542) at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48) at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:943) at org.apache.mina.core.filterchain.IoFilterEvent.fire(IoFilterEvent.java:74) at org.apache.mina.core.session.IoEvent.run(IoEvent.java:63) at org.apache.mina.filter.executor.UnorderedThreadPoolExecutor$Worker.runTa
