Thanks for pointing out.

I'm using FreeMarkerServlet, so here what I did:
I change the content type of FreemarkerServlet, add charset=utf-8 to
it.
Without the charset being set, the FreemarkerServlet would obtain such
charset from some environment variable (which I didn't have time to
figure out), so the rendered result my vary depend of the environment
settings.

                <servlet-name>freemarker</servlet-name>
                
<servlet-class>freemarker.ext.servlet.FreemarkerServlet</servlet-
class>

                <init-param>
                        <param-name>TemplatePath</param-name>
                        <param-value>/</param-value>
                </init-param>
                <init-param>
                        <param-name>NoCache</param-name>
                        <param-value>true</param-value>
                </init-param>
                <init-param>
                        <param-name>ContentType</param-name>
                        <param-value>text/html; charset=utf-8</param-value>
                </init-param>

(Gosh, why did you guys make different charset between the cloud and
the development server? Shouldn't they be the same?)



On May 17, 12:05 pm, Toby Reyelts <to...@google.com> wrote:
> You need to make a call to
> HttpServletResponse.setContentType<http://java.sun.com/products/servlet/2.2/javadoc/javax/servlet/Servle...)>to
> change the charset for the response. Maybe FreeMarker has a facility
> somewhere to set that, or maybe you need to do it manually.
>
> There's currently no facility (nor is one currently planned) for changing
> the Charset of your JVM under App Engine.
>
> On Mon, May 17, 2010 at 12:46 AM, Phuong Nguyen <phuongn...@gmail.com>
> wrote:
>
> > Hi Don:
> > Thanks for the reply.
> > I find the header on the cloud is a little bit *weird*
>
> > For Local Server
> > Response Headers
>
> > Content-Language        en-US
> > Content-Type    text/html; charset=utf-8
> > Cache-Control   no-store, no-cache, must-revalidate, post-check=0, pre-
> > check=0
> > Pragma  no-cache
> > Expires Sun, 17 May 2009 04:28:58 UTC
> > Transfer-Encoding       chunked
> > Server  Jetty(6.1.x)
>
> > For Cloud Server
>
> > Response Headers
> > Content-Language        en-US
> > Content-Type    text/html; charset=ANSI_X3.4-1968
> > Cache-Control   no-store, no-cache, must-revalidate, post-check=0, pre-
> > check=0
> > Pragma  no-cache
> > Expires Sun, 17 May 2009 04:43:18 UTC
> > Content-Encoding        gzip
> > Date    Mon, 17 May 2010 04:43:38 GMT
> > Server  Google Frontend
> > Content-Length  1581
>
> > Charset was set to ANSI_X3.4-1968 (!)
>
> > Probably that Charset is something that can be customized by an xml
> > configuration?
>
> > Please advice.
> > On May 17, 10:58 am, Don Schwarz <schwa...@google.com> wrote:
> >> We need more information to help with this.
>
> >> Did you compare the HTTP response headers between the DevAppServer and
> >> when deployed?
>
> >> On May 15, 9:29 pm, Phuong Nguyen <phuongn...@gmail.com> wrote:
>
> >> > Thanks to Google guys, FreeMarker is now run fine. However, there is
> >> > still a (small/big/?) problem with Unicode.
> >> > I have a lot of Unicode inside my FreeMarker template. They all
> >> > printed fine on Development Server. However, being deployed to the
> >> > cloud, these Unicode characters are all displayed as question mark.
> >> > (Vietnamese: Chọn nhà cung cấp của bạn -> Ch???n nh?? cung c???p c???a
> >> > b???n).
>
> >> > Please advice.
>
> >> > Thanks.
>
> >> > --
> >> > You received this message because you are subscribed to the Google
>
> Groups "Google App Engine for Java" group.>> > To post to this group, send 
> email to
>
> google-appengine-j...@googlegroups.com.>> > To unsubscribe from this group, 
> send email to
>
> google-appengine-java+unsubscr...@googlegroups.com<google-appengine-java%2bunsubscr...@googlegroups.com>
> .>> > For more options, visit this group athttp://
>
> groups.google.com/group/google-appengine-java?hl=en.
>
> >> --
> >> You received this message because you are subscribed to the Google Groups
>
> "Google App Engine for Java" group.>> To post to this group, send email to
>
> google-appengine-j...@googlegroups.com.>> To unsubscribe from this group, 
> send email to
>
> google-appengine-java+unsubscr...@googlegroups.com<google-appengine-java%2bunsubscr...@googlegroups.com>
> .>> For more options, visit this group athttp://
>
> groups.google.com/group/google-appengine-java?hl=en.
>
> > --
> > You received this message because you are subscribed to the Google Groups
>
> "Google App Engine for Java" group.> To post to this group, send email to
>
> google-appengine-j...@googlegroups.com.> To unsubscribe from this group, send 
> email to
>
> google-appengine-java+unsubscr...@googlegroups.com<google-appengine-java%2bunsubscr...@googlegroups.com>
> .> For more options, visit this group at
>
> http://groups.google.com/group/google-appengine-java?hl=en.
>
>
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine for Java" group.
> To post to this group, send email to google-appengine-j...@googlegroups.com.
> To unsubscribe from this group, send email to 
> google-appengine-java+unsubscr...@googlegroups.com.
> For more options, visit this group 
> athttp://groups.google.com/group/google-appengine-java?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to