already done. it is a know issue. I just posted the solution here in case anybody else runs into the same issue.
On 27/08/2013, at 1:06 PM, Niki Dokovski <nick...@gmail.com> wrote: > On Tue, Aug 27, 2013 at 6:22 AM, Alexander Hartner <a...@j2anywhere.com>wrote: > >> The problem was resolved by including both filters >> (org.jboss.weld.servlet.ConversationFilter and >> org.apache.catalina.filters.SetCharacterEncodingFilter). >> > > Should this be reported to jboss weld? It could be documented or even code > inspected if needed. > > cheers > Niki > > > >> >> >> <?xml version="1.0" encoding="UTF-8"?> >> >> <web-app xmlns="http://java.sun.com/xml/ns/javaee" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xsi:schemaLocation="http://java.sun.com/xml/ns/javaee >> http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" >> version="3.0"> >> >> <filter> >> <filter-name>SetCharacterEncoding</filter-name> >> >> <filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class> >> <init-param> >> <param-name>encoding</param-name> >> <param-value>UTF-8</param-value> >> </init-param> >> <init-param> >> <param-name>ignore</param-name> >> <param-value>false</param-value> >> </init-param> >> </filter> >> <filter> >> <filter-name>Conversation</filter-name> >> <filter-class>org.jboss.weld.servlet.ConversationFilter</filter-class> >> </filter> <filter-mapping> >> <filter-name>SetCharacterEncoding</filter-name> >> <url-pattern>/*</url-pattern> >> </filter-mapping> >> <filter-mapping> >> <filter-name>Conversation</filter-name> >> <url-pattern>/*</url-pattern> >> </filter-mapping> >> <listener> >> >> <listener-class>org.jboss.weld.environment.servlet.Listener</listener-class> >> </listener> >> <session-config> >> <session-timeout> >> 30 >> </session-timeout> >> </session-config> >> </web-app> >> >> >> >> On 27/08/2013, at 12:14 AM, Konstantin Kolinko <knst.koli...@gmail.com> >> wrote: >> >>> 2013/8/26 Alexander Hartner <a...@j2anywhere.com>: >>>> This may be more of an application problem than a tomcat issue, but I am >>>> rather stuck with this one and hoping that somebody on this list may be >>>> able to shed some light on my issue. >>>> >>>> I am trying to post UTF-8 encoding text to my JSF2.2 application, >>>> however the data received does not seem to be encoded correctly.I >>>> narrowed this problem down to the weld listener. To illustrate the issue >>>> I modified the test page from the tomcat faq: >>>> >>>> >>>> >>>> 1. <%@ page contentType="text/html; charset=UTF-8" >> pageEncoding="UTF-8"%> >>>> 2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> >>>> 3. <html> >>>> 4. <head> >>>> 5. <title>Character encoding test page</title> >>>> 6. </head> >>>> 7. <body> >>>> 8. <p> >>>> 9. Encoding : <%=request.getCharacterEncoding()%> >>>> 10. </p> >>>> 11. <p>Data posted to this form was: >>>> 12. <% >>>> 13. request.setCharacterEncoding("UTF-8"); >>>> 14. out.print(request.getParameter("mydata")); >>>> 15. %> >>>> 16. </p> >>>> 17. <form method="GET" action="index.jsp"> >>>> 18. <input type="text" name="mydata"> >>>> 19. <input type="submit" value="SubmitGET" /> >>>> 20. </form> >>>> 21. <form method="POST" action="index.jsp"> >>>> 22. <input type="text" name="mydata"> >>>> 23. <input type="submit" value="SubmitPOST" /> >>>> 24. </form> >>>> 25. .g. ç,g(,ö,s,,?, etc Soße " Test data " >>>> 26. </body> >>>> 27. </html> >>>> >>>> >>>> >>>> So I have a simple web application which only consist of this page, and >>>> the weld library in WEB-INF/lib (weld-servlet-2.0.3.Final.jar). >>>> >>>> So far so good. However as soon as I include the weld listener in my >>>> web.xml file >>>> >>>> >>>> >>>> 1. <?xml version="1.0" encoding="UTF-8"?> >>>> 2. >>>> 3. <web-app xmlns="http://java.sun.com/xml/ns/javaee" >>>> 4. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>>> 5. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee >> http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" >>>> 6. version="3.0"> >>>> 7. <listener> >>>> 8. >> <listener-class>org.jboss.weld.environment.servlet.Listener</listener-class> >>>> 9. </listener> >>>> 10. <session-config> >>>> 11. <session-timeout> >>>> 12. 30 >>>> 13. </session-timeout> >>>> 14. </session-config> >>>> 15. </web-app> >>>> >>>> >>>> >>>> The post parameters are corrupted by the listener. >>>> >>>> >>>> >>>> I did enable URIEncoding="UTF-8" in the server.xml file, but this did >>>> not make any difference. >>>> >>>> 1. <Connector executor="tomcatThreadPool" >>>> 2. port="8080" protocol="HTTP/1.1" >>>> 3. connectionTimeout="20000" >>>> 4. redirectPort="8443" >>>> 5. URIEncoding="UTF-8"/> >>>> >>>> >>>> >>>> With the listener enabled data like "Soße" is received as "SoÃY"e", >>>> however once the listerner is removed everything works as expected. >>>> >>> >>> 1. I hope you have seen the FAQ. >>> http://wiki.apache.org/tomcat/FAQ/CharacterEncoding >>> >>> and >>> >> http://tomcat.apache.org/tomcat-7.0-doc/config/filter.html#Set_Character_Encoding_Filter >>> >>> 2. Try to run with a debugger >>> http://wiki.apache.org/tomcat/FAQ/Developing#Debugging >>> >>> with a breakpoint in >> org.apache.catalina.connector.Request#parseParameters() >>> >>> I guess that there is some component that calls one of getParameter() >>> methods before your request.setCharacterEncoding("UTF-8") and thus the >>> default of ISO-8859-1 is effective. >>> >>> 3. What exact version of Tomcat 7.0.x are you using? >>> >>> Best regards, >>> Konstantin Kolinko >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org >>> For additional commands, e-mail: users-h...@tomcat.apache.org >>> >> >> --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org