Steve, We have a similar requirement in that everything stored in the DB has to UTF-8. Well, to address this we have written an UTF-8 Filter which implements the Filter interface. All you need to do there is set the character encoding to UTF8. The class looks like this...
public class UTF8Filter implements Filter { /** * default constructor */ public UTF8Filter() { super(); } /* (non-Javadoc) * @see javax.servlet.Filter#init(javax.servlet.FilterConfig) */ public void init(FilterConfig arg0) throws ServletException { // this doesn't need to do anything // } /* (non-Javadoc) * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain) */ public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException { // set the encoding to UTF-8 on the request // req.setCharacterEncoding(IProcessor.UTF_8_ENCODING); // pass the filter along the chain // chain.doFilter(req, res); } /* (non-Javadoc) * @see javax.servlet.Filter#destroy() */ public void destroy() { // this doesn't need to do anything // } } In your web.xml define this filter and make sure all your request go through this filter. <filter> <filter-name>UTF8Filter</filter-name> <filter-class>uk.co.limehouse.publisher.struts.UTF8Filter</filter-class> </filter> <filter-mapping> <filter-name>UTF8Filter</filter-name> <url-pattern>*.do</url-pattern> </filter-mapping> Hope this helps... Arup -----Original Message----- From: Steve Bosman [mailto:[EMAIL PROTECTED] Sent: 12 May 2005 08:31 To: Tomcat Users List Subject: Re: UTF-8 Problem with Tomcat 5.0.27 and POST On 5/10/05, Bernhard v. Fromberg <[EMAIL PROTECTED]> wrote: > Hi all, > > I desperatly try to POST UTF-8 data to an application using struts. > GET method works perfectly fine, but post does not. > I am using CharacterEncodingFilter > All pages have Content-Type header > > java1.5.0 update 2 > Tomcat 5.0.27 > various Un*x systems. > I think this might be a similar question to one I asked recently and the following helped me ---------- Forwarded message ---------- From: Mark Thomas <[EMAIL PROTECTED]> Date: Apr 6, 2005 4:14 PM Subject: Re: URL encoding/decoding of UTF-8 characters - Hide quoted text - To: Tomcat Users List <tomcat-user@jakarta.apache.org> It is a lack of agreed standard problem. You can force Tomcat to use UTF-8 encoding by setting the URIEncoding parameter on the connector. There are some other parameters that you can set as well. See http://jakarta.apache.org/tomcat/tomcat-5.0-doc/config/http.html ---------- End Forwarded message ---------- Using link in this mail from the tomcat user maiIing list I have changed my connector settings to: <Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" /> <Connector port="8443" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" disableUploadTimeout="true" acceptCount="100" debug="0" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" URIEncoding="UTF-8" /> That is I have added URIEncoding="UTF-8" and characters are now decoded correctly. Steve --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]