Return-Path: Delivered-To: apmail-jakarta-tomcat-user-archive@apache.org Received: (qmail 25740 invoked from network); 10 Apr 2003 07:15:12 -0000 Received: from exchange.sun.com (192.18.33.10) by daedalus.apache.org with SMTP; 10 Apr 2003 07:15:12 -0000 Received: (qmail 20306 invoked by uid 97); 10 Apr 2003 07:17:14 -0000 Delivered-To: qmlist-jakarta-archive-tomcat-user@nagoya.betaversion.org Received: (qmail 20299 invoked from network); 10 Apr 2003 07:17:13 -0000 Received: from daedalus.apache.org (HELO apache.org) (208.185.179.12) by nagoya.betaversion.org with SMTP; 10 Apr 2003 07:17:13 -0000 Received: (qmail 23899 invoked by uid 500); 10 Apr 2003 07:14:46 -0000 Mailing-List: contact tomcat-user-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Tomcat Users List" Reply-To: "Tomcat Users List" Delivered-To: mailing list tomcat-user@jakarta.apache.org Received: (qmail 23752 invoked from network); 10 Apr 2003 07:14:44 -0000 Received: from main.gmane.org (80.91.224.249) by daedalus.apache.org with SMTP; 10 Apr 2003 07:14:44 -0000 Received: from list by main.gmane.org with local (Exim 3.35 #1 (Debian)) id 193WGN-0005Q5-00 for ; Thu, 10 Apr 2003 09:14:23 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: tomcat-user@jakarta.apache.org Received: from news by main.gmane.org with local (Exim 3.35 #1 (Debian)) id 193WGK-0005Pq-00 for ; Thu, 10 Apr 2003 09:14:20 +0200 From: "Bill Barker" Subject: Re: Setting locale encoding in Filter Date: Thu, 10 Apr 2003 00:23:45 -0700 Lines: 44 Message-ID: References: X-Complaints-To: usenet@main.gmane.org X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Sender: news X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N You're setLocale et. al. calls should come before 'next.doFilter'. Otherwise (esp. with JSP pages) the response may be committed before control is returned to your Filter. In this case, you are now longer allowed to change the settings (and Tomcat should throw an IllegalStateExecption). "hacking bear" wrote in message news:F49dyvqSgnpvI4NNIiY00006bde@hotmail.com... > Hello, > > My app needs to handle multiple locale/encoding and since the user chooses > locale at login I try to just set the locale encoding in a servlet filter so > that I don't have to do that in every page or servlet: > > void doFilter(request, response, FilterChain next) { > if (next != null) { > next.doFilter(request, response); > } > response.setLocale(locale); > response.setContentType("text/html; charset=" + encoding); > response.addHeader("Cache-Control", "no-cache"); > request.setCharacterEncoding(encoding); > } > > 1. This almost works except some JSP pages sometimes (but not always) > displaying '?' garbage character. But if I set the response's > locale/encoding again at the beginning of the JSP page, the problem goes > away. > > 2. If I move the set locale/encoding codes before the next.doFilter(), then > all pages display garbage only. > > Is this the right way? What do I do wrong? > > Thanks. > -HB > > > _________________________________________________________________ > The new MSN 8: smart spam protection and 2 months FREE* > http://join.msn.com/?page=features/junkmail --------------------------------------------------------------------- To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org For additional commands, e-mail: tomcat-user-help@jakarta.apache.org