: The form that gets sent to the browser is in UTF8, and the browser
: correctly sends back UTF8 in the post body.  *But* the browser doesn't
: tell the container what the charset of the body is, so it's up to the
: container to guess.  By default, resin seems to pick latin-1.

That's really weird ... i could have sworn browsers doing POST of form
data were suppose to sent a full content-type...

   Content-type: application/x-www-form-urlencoded; charset=utf-8

...picking the charset based on the charset of the page containing the
form  (i assume you tested and verified this isn't happening?)

a quick google search turned up this page, with this info...

http://www.systemvikar.biz/faq/servlet.xtp



Form character encoding doesn't work

A POST request with application/x-www-form-urlencoded doesn't contain any
information about the character request. So Resin needs to use a set of
heuristics to decode the form. Here's the order:

   1. request.getAttribute("caucho.form.character.encoding")
   2. The response.setContentType() encoding of the page.
   3. The character-encoding tag in the resin.conf.

Resin uses the default character encoding of your JVM to read form data.
To set the encoding to another charset, you'll need to change the
resin.conf as follows:

<http-server character-encoding='Shift_JIS'>
  ...
</http-server>


Reply via email to