You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by "David Montag (JIRA)" <ji...@apache.org> on 2008/04/01 16:36:25 UTC

[jira] Commented: (DIRSERVER-1158) ClassCastException while handling binary value

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

David Montag commented on DIRSERVER-1158:
-----------------------------------------

Thanks Emmanuel. Good work. Sorry for the broken test case - but hey, at least I learned something :)

> ClassCastException while handling binary value
> ----------------------------------------------
>
>                 Key: DIRSERVER-1158
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1158
>             Project: Directory ApacheDS
>          Issue Type: Bug
>         Environment: r640455 of bigbang-with-dependencies, r640484 of studio trunk
>            Reporter: David Montag
>            Assignee: Emmanuel Lecharny
>            Priority: Critical
>             Fix For: 1.5.2
>
>         Attachments: ServerBinaryValueTest.java, ServerBinaryValueTest.ldif
>
>
> Setting an attribute to an octet string produces an exception on the server:
> java.lang.ClassCastException: java.lang.String
>         at org.apache.directory.server.core.entry.ServerBinaryValue.normalize(ServerBinaryValue.java:190)
>         at org.apache.directory.server.core.entry.ServerBinaryValue.getNormalizedValueReference(ServerBinaryValue.java:234)
>         at org.apache.directory.server.core.entry.ServerBinaryValue.hashCode(ServerBinaryValue.java:476)
>         at java.util.HashMap.containsKey(HashMap.java:377)
>         at java.util.HashSet.contains(HashSet.java:182)
>         at org.apache.directory.server.core.entry.DefaultServerAttribute.add(DefaultServerAttribute.java:664)
>         at org.apache.directory.server.core.entry.DefaultServerAttribute.add(DefaultServerAttribute.java:775)
>         at org.apache.directory.server.core.entry.ServerEntryUtils.toServerAttribute(ServerEntryUtils.java:153)
>         at org.apache.directory.server.core.entry.ServerEntryUtils.toModification(ServerEntryUtils.java:418)
>         at org.apache.directory.server.core.entry.ServerEntryUtils.toServerModification(ServerEntryUtils.java:483)
>         at org.apache.directory.server.core.jndi.ServerDirContext.modifyAttributes(ServerDirContext.java:225)
>         at org.apache.directory.server.ldap.support.DefaultModifyHandler.modifyMessageReceived(DefaultModifyHandler.java:83)
>         at org.apache.directory.server.ldap.support.ModifyHandler.messageReceived(ModifyHandler.java:38)
>         at org.apache.mina.handler.demux.DemuxingIoHandler.messageReceived(DemuxingIoHandler.java:141)
>         at org.apache.directory.server.ldap.LdapServer$LdapProtocolHandler.messageReceived(LdapServer.java:1095)
>         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:650)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>         at java.lang.Thread.run(Thread.java:595)
> The error occurs here:
> normalizedValue = ( byte[] ) normalizer.normalize( getCopy() );
> See the attached test case. It also covers https://issues.apache.org/jira/browse/DIRSERVER-1156.

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