[ 
https://issues.apache.org/jira/browse/DIRSERVER-1387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12734812#action_12734812
 ] 

Stefan Seelmann commented on DIRSERVER-1387:
--------------------------------------------

Directory String syntax does not allow empty values. Quotation of RFC4517 
(http://tools.ietf.org/html/rfc4517#section-3.3.6):

   "A value of the Directory String syntax is a string of one or more
   arbitrary characters ..."

So ApacheDS is just strict to RFC4517. 

What you could do is to define your attributes types with "IA5 String" syntax, 
in case the ASCII character set is sufficient for your attribute type. IA5 
String allows empty values.

> Trying to create an object with custom attributes mapped to [directory 
> string] and of type m-may.  Causes failure if attribute value is left blank
> --------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DIRSERVER-1387
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1387
>             Project: Directory ApacheDS
>          Issue Type: Bug
>    Affects Versions: 1.5.4
>         Environment: Windows PC, Websphere Portal 6.1
>            Reporter: Eric Gulatee
>
> [15:23:15] ERROR 
> [org.apache.directory.server.ldap.handlers.ReferralAwareRequestHandler] - 
> INVALID_ATTRIBUTE_SYNTAX: failed for     Add Request :
> ClientEntry
>     dn: 
> 0.9.2342.19200300.100.1.1=kim777,2.5.4.3=users,0.9.2342.19200300.100.1.25=portal,0.9.2342.19200300.100.1.25=osc,0.9.2342.19200300.100.1.25=state,0.9.2342.19200300.100.1.25=ny,0.9.2342.19200300.100.1.25=us
>     objectclass: CUSTOMObjectClass
>     uid: kim777
>     postalcode: 12110
>     givenname: HULA
>     phoneext2:
>     modifiedby: kim777
>     city: ABC
>     stateabbreviation: NY
>     sharedsecretsanswer1: MAPLE
>     countryname: United States
>     fax2:
>     fax1:
>     sharedsecretsanswer2: hyd
>     phoneext:
>     stateorprovincename:
>     mail: [email protected]
>     sn: nakka
>     mobile2:
>     createdby: kim777
>     plus4:
>     cn: kim777
>     telephonenumber2:
>     postaladdress2:
>     mobile:
> : Attribute value '' for attribute 'fax2' is syntactically incorrect
> org.apache.directory.shared.ldap.exception.LdapInvalidAttributeValueException:
>  Attribute value '' for attribute 'fax2' is syntactically incorrect
>         at 
> org.apache.directory.server.core.schema.SchemaInterceptor.assertSyntaxes(SchemaInterceptor.java:2033)
>         at 
> org.apache.directory.server.core.schema.SchemaInterceptor.check(SchemaInterceptor.java:1699)
>         at 
> org.apache.directory.server.core.schema.SchemaInterceptor.add(SchemaInterceptor.java:1819)
>         at 
> org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.add(InterceptorChain.java:1189)
>         at 
> org.apache.directory.server.core.operational.OperationalAttributeInterceptor.add(OperationalAttributeInterceptor.java:191)
>         at 
> org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.add(InterceptorChain.java:1189)
>         at 
> org.apache.directory.server.core.exception.ExceptionInterceptor.add(ExceptionInterceptor.java:220)
>         at 
> org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.add(InterceptorChain.java:1189)
>         at 
> org.apache.directory.server.core.interceptor.BaseInterceptor.add(BaseInterceptor.java:129)
>         at 
> org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.add(InterceptorChain.java:1189)
>         at 
> org.apache.directory.server.core.authz.AciAuthorizationInterceptor.add(AciAuthorizationInterceptor.java:448)
>         at 
> org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.add(InterceptorChain.java:1189)
>         at 
> org.apache.directory.server.core.authn.AuthenticationInterceptor.add(AuthenticationInterceptor.java:213)
>         at 
> org.apache.directory.server.core.interceptor.InterceptorChain$Entry$1.add(InterceptorChain.java:1189)
>         at 
> org.apache.directory.server.core.normalization.NormalizationInterceptor.add(NormalizationInterceptor.java:113)
>         at 
> org.apache.directory.server.core.interceptor.InterceptorChain.add(InterceptorChain.java:749)
>         at 
> org.apache.directory.server.core.DefaultOperationManager.add(DefaultOperationManager.java:78)
>         at 
> org.apache.directory.server.core.DefaultCoreSession.add(DefaultCoreSession.java:378)
>         at 
> org.apache.directory.server.ldap.handlers.AddHandler.handleIgnoringReferrals(AddHandler.java:59)
>         at 
> org.apache.directory.server.ldap.handlers.AddHandler.handleIgnoringReferrals(AddHandler.java:40)
>         at 
> org.apache.directory.server.ldap.handlers.ReferralAwareRequestHandler.handle(ReferralAwareRequestHandler.java:145)
>         at 
> org.apache.directory.server.ldap.handlers.ReferralAwareRequestHandler.handle(ReferralAwareRequestHandler.java:66)
>         at 
> org.apache.directory.server.ldap.handlers.LdapRequestHandler.messageReceived(LdapRequestHandler.java:171)
>         at 
> org.apache.directory.server.ldap.handlers.LdapRequestHandler.messageReceived(LdapRequestHandler.java:46)
>         at 
> org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:141)
>         at 
> org.apache.directory.server.ldap.LdapProtocolHandler.messageReceived(LdapProtocolHandler.java:181)
>         at 
> org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:570)
>         at 
> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at 
> org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at 
> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:648)
>         at 
> org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58)
>         at 
> org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:180)
>         at 
> org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299)
>         at 
> org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53)
>         at 
> org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:648)
>         at 
> org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:220)
>         at 
> org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:264)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>         at java.lang.Thread.run(Thread.java:619)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to