You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2016/12/07 17:21:12 UTC

[Bug 60451] java.lang.ArrayIndexOutOfBoundsException when a servlet writes more than the output buffer max length on a connection to be upgraded to HTTP/2

https://bz.apache.org/bugzilla/show_bug.cgi?id=60451

--- Comment #1 from Ludovic Pénet <l....@senat.fr> ---
Well, my first analysis of this problem was wrong.

After further debugging, it appears that the problem is rather in the
"Content-Disposition" header value.

As we are in France, it sometimes contains non ascii chars. In this case, char
é caused the exception in HPackHuffman.encode.

So, I changed the way I set the header from :

        resp.setHeader("Content-Disposition", "attachment;filename=\"" +
filename + "\"");

to :

        URLEncoder enc = new URLEncoder();
        resp.setHeader("Content-Disposition", "attachment; filename*=UTF-8''" +
enc.encode(filename, "UTF-8"));

and it works.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org