First, some up-front warnings: this question has nothing to do with gaming, and most importantly, I’m not directly involved with the project that’s failing (it’s a friend’s who I’m helping out debug).
Anyway, here it goes:
We have an online application that is in character encoding hell. If we make a request to the server, with the é character in a url query parameter, the browser encodes it as %C3%A9. The query parameter, as presented by struts and tomcat, treats %C3%A9 as é, which seems to be the Latin1 encoding.
This makes no sense to me, and it continues to happen, even when we force tomcat to use UTF-8 uri encoding. To make matters worse, we get anomalous results when writing the query parameter out with a jsp.
For example, if the jsp did something like:
Query parameter: ${query}
Hardcoded: é
and the result, viewing the page with Latin1 character encoding would be:
Query parameter: é
Hardcoded: é
but when set to view as UTF-8, we get: (the value of query was still é, when it’s stored as a String)
Query parameter: é
Hardcoded: ?
where the ? represents the unknown character symbol.
My jsp skills are not particularly great and we’re at an utter loss as to what’s causing these problems. So I guess this is a hail mary request to see if anyone has any help.