You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Benjamin Sproule (Jira)" <ji...@apache.org> on 2020/10/08 13:08:00 UTC

[jira] [Commented] (CODEC-263) Base64.decodeBase64 throw exception

    [ https://issues.apache.org/jira/browse/CODEC-263?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17210196#comment-17210196 ] 

Benjamin Sproule commented on CODEC-263:
----------------------------------------

1.15 has been released, so this exception is no longer thrown (unless the `CodecPolicy` is defined as strict). But the `isBase64` function still produces a differing view. Shouldn't it be possible for the `isBase64` function to also care about the `CodecPolicy`?

> Base64.decodeBase64 throw exception
> -----------------------------------
>
>                 Key: CODEC-263
>                 URL: https://issues.apache.org/jira/browse/CODEC-263
>             Project: Commons Codec
>          Issue Type: Bug
>    Affects Versions: 1.13
>         Environment: JDK 7/JDK 8 
> commons-codec 1.13
>            Reporter: xie tao
>            Priority: Critical
>         Attachments: image-jpg-01-big.base64.txt
>
>
> Codec upgrade to 1.13, code  throw exception as follows:
> {code:java}
>   @Test
>   public  void test(){
>     Base64.decodeBase64("publishMessage");
>   }
> {code}
> exception like:
> {code:java}
> java.lang.IllegalArgumentException: Last encoded character (before the paddings if any) is a valid base 64 alphabet but not a possible value
> 	at org.apache.commons.codec.binary.Base64.validateCharacter(Base64.java:798)
> 	at org.apache.commons.codec.binary.Base64.decode(Base64.java:472)
> 	at org.apache.commons.codec.binary.BaseNCodec.decode(BaseNCodec.java:412)
> 	at org.apache.commons.codec.binary.BaseNCodec.decode(BaseNCodec.java:395)
> 	at org.apache.commons.codec.binary.Base64.decodeBase64(Base64.java:694)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)