[
https://issues.apache.org/jira/browse/WICKET-3578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Attila Király updated WICKET-3578:
----------------------------------
Attachment: wicket-3578.zip
Attaching an example maven project showing the problem.
To reproduce:
1. Compile and deploy the app in Tomcat (I used 7.0.11 but 6.x should do it
too).
2. Go to http://localhost:8080/wicket-3578/ (any browser is good): you should
see a text input field with a "€" in it.
3. Without modifying anything just submit the form. In the reloaded page you
should see a corrupted value in the field (something like "â¬" which is the
ISO-8859-1 decoded value of the UTF-8 encoded "€").
Now if you uncomment in the web.xml the url-mapping for the "encodingFilter"
and repeat the test you should see the problem gone.
> Wicket should set the character encoding on requests
> ----------------------------------------------------
>
> Key: WICKET-3578
> URL: https://issues.apache.org/jira/browse/WICKET-3578
> Project: Wicket
> Issue Type: Improvement
> Components: wicket-core
> Affects Versions: 1.5-RC3
> Reporter: Attila Király
> Attachments: fix-WICKET-3578.patch, wicket-3578.zip
>
>
> Browsers should but actually do not send encoding information with requests.
> Because of this servlet containers (like Tomcat) use the default "ISO-8859-1"
> encoding to decode POST parameters in non-multipart requests. This is wrong
> in case the webapp is using a different encoding (like UTF-8).
> To workaround this it is possible to specify the correct encoding on the
> server side trough javax.servlet.ServletRequest.setCharacterEncoding(String).
> This can be done in a filter (I use spring's CharacterEncodingFilter for
> this, but Tomcat also has SetCharacterEncodingFilter for the same). It would
> be nice if wicket could do this out of box so no additional filter would be
> needed.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira