You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Timothy Bish (JIRA)" <ji...@apache.org> on 2015/03/03 22:53:04 UTC

[jira] [Resolved] (AMQ-5629) MapMessage.getChar does not handle if the backing map contains String or UTF8

     [ https://issues.apache.org/jira/browse/AMQ-5629?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Timothy Bish resolved AMQ-5629.
-------------------------------
    Resolution: Not a Problem
      Assignee: Timothy Bish

A String value can in fact not be read as a char as per the MapMessage conversion table.  If did however fix the error message to state the correct type.  

> MapMessage.getChar does not handle if the backing map contains String or UTF8
> -----------------------------------------------------------------------------
>
>                 Key: AMQ-5629
>                 URL: https://issues.apache.org/jira/browse/AMQ-5629
>             Project: ActiveMQ
>          Issue Type: Bug
>            Reporter: Endre Stølsvik
>            Assignee: Timothy Bish
>
> Compare to AMQ-5628.
> Read up on http://docs.oracle.com/javaee/1.4/api/javax/jms/MapMessage.html to see that getChar(key) shall be able to compute for something that was stored as a String.
> ActiveMQMapMessage, line ~312:
> {code}
>     public char getChar(String name) throws JMSException {
>         initializeReading();
>         Object value = map.get(name);
>         if (value == null) {
>             throw new NullPointerException();
>         }
>         if (value instanceof Character) {
>             return ((Character)value).charValue();
>         } else {
>             throw new MessageFormatException(" cannot read a short from " + value.getClass().getName());
>         }
>     }
> {code}
> Notice the absent handling of String or UTF8Buffer.
> Notice ALSO the wrong wording in the Exception "cannot read SHORT from.." when we're in the CHAR getter.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)