Platform: IBM mainframe zSeries OS: z/OS 1.4 Tomcat Version 4.1.30, 5.0.25 URLEncoder uses EBCDIC (the platform encoding) to translate the characters. The result is http://127.0.0.1/admin/users/listRoles.do?databaseName=Users%7Atype%7EUserDatabase%6Bdatabase%7EUserDatabase&forward=Roles+List+Setup instead of http://127.0.0.1/admin/users/listRoles.do?databaseName=Users%3Atype%3DUserDatabase%2Cdatabase%3DUserDatabase&forward=Roles+List+Setup Bill Barker sended me the following email regarding this problem: Looking at the admin webapp, is seems that it is using java.net.URLEncoder instead of o.a.c.u.URLEncoder. The javadocs for the java.net class say that it has exactly the problem that you are describing (i.e. it uses the platform encoding). The fix is to either use java.net.URLEncoder.encode(..., "utf8") (with the downside that the admin webapp can't be used with a 1.3 JVM), or to use o.a.c.u.URLEncoder as a Bean (since the encode method isn't static). In either case, I guess you get to open a new bug report for this :).
The Admin webapp uses URLEncoder.encode in many many places ;( It's not a one- line switch. And for now we must stay compatible with JDK 1.3, so we should use o.a.c.u.URLEncoder as a bean.
Same issue, the encoding of the admin webapp. It needs to be i18n'ed properly. URLEncoder is all over the place. Tomcat 5.5 will address this in the new persistence mechanism. *** This bug has been marked as a duplicate of 29091 ***