Thursday, August 27, 2009, 2:57:39 AM, Martin Gainty wrote:

> this is good information zoran!
>
> can we specify contentType="text/html;charset=UTF-8" thru init-params?

Zoran talks about JSP stuff (<%@ page ...%>), so the FreemarkerSerlvet
config should be irrelevant there.

As of the pages generated by the FreemarkerSerlvet, in principle the
"default_encoding" init-param is for specifying the encoding of the
template file (not of the output), and the "ContentType" init-param
specifies the MIME-type and the encoding of the output. BUT, in the
case of FreemarkerServlet, if the "ContentType" doesn't specify the
encoding (i.e., it's not like "text/html; charset=SOMETHING", but like
"text/html") then the encoding of the template file is used for
encoding the output as well. So in the below quoted example both the
template encoding and the output encoding is ISO-8859-1 (except for
the templates that explicitly override that with <#ftl
encoding="SOMETHING-DIFFERENT">).

> <servlet>
> <servlet-name>freemarker</servlet-name>
>    
> <servlet-class>freemarker.ext.servlet.FreemarkerServlet</servlet-class>
>     
>     <!-- FreemarkerServlet settings: -->
>     <init-param>
>       <param-name>ContentType</param-name>
>       <param-value>text/html</param-value>
>     </init-param>    
>     <!-- FreeMarker settings: -->
>       <param-name>default_encoding</param-name>
>       <param-value>ISO-8859-1</param-value>
>     </init-param>
> <servlet>
> <servlet-mapping>
>  <servlet-name>freemarker</servlet-name>
>  <url-pattern>*.ftl</url-pattern>
> </servlet-mapping>
> reprised from FreeMarkerServlet documentation at
> http://struts.apache.org/2.1.6/docs/tutoriallesson04-03.html
>
> /dziekuje/
> Martin Gainty 
> ______________________________________________ 
> Jogi és Bizalmassági kinyilatkoztatás
>  
> Ez az üzenet bizalmas.  Ha nem ön az akinek szánva volt, akkor
> kérjük, hogy jelentse azt nekünk vissza. Semmiféle továbbítása vagy
> másolatának készítése nem megengedett.  Ez az üzenet csak ismeret
> cserét szolgál és semmiféle jogi alkalmazhatósága sincs.  Mivel az
> electronikus üzenetek könnyen megváltoztathatóak, ezért minket semmi
> felelöség nem terhelhet ezen üzenet tartalma miatt.
>
>
>
>
>
>
>
>> Date: Thu, 27 Aug 2009 10:17:03 +1000
>> Subject: Re: Freemarker Text Encoding Error
>> From: zo...@sparecreative.com
>> To: user@struts.apache.org; musa...@gmail.com; 
>> freemarker-u...@lists.sourceforge.net; ddek...@freemail.hu
>> 
>> Apologies in advance for the cross post, but it saves on typing.
>> 
>> I found that the solution was simple in the end. While testing various
>> options I noticed I had one page that worked. In identifying the difference
>> between that and the others there was a difference in the content jspf for
>> that page, it had a <%@ page contentType="text/html;charset=UTF-8"
>> language="java"%> while the others didn’t.
>> 
>> I thought there was no longer a need for these in JSP fragments, the main
>> JSP page has one as does the sitemesh decorator. But obviously I was wrong.
>> 
>> So thanks again for your help guys.
>> 
>> Z.
>> 
>> > 
>> > It is good to post here, but for tricky stuff like this, you have a
>> > better chance with them. Also if you find the solution, please let us
>> > know.
>> > 
>> > musachy
>> > 
>> > On Tue, Aug 25, 2009 at 10:38 PM, Zoran
>> > Avtarovski<zo...@sparecreative.com> wrote:
>> >> > I knew somebody would say that. I was too lazy to subscribe and I half
>> >> > expected them to ask on the struts list.
>> >> >
>> >> > Thanks Musachy, I’ll subscribe and post now. I guess I was hoping others
>> >> > might have experienced a similar problem.
>> >> >
>> >> > Z.
>> >> >
>> >> > did you try asking the FreeMarker guys?
>> >> >
>> >> > On Tue, Aug 25, 2009 at 7:26 PM, Zoran
>> >> > Avtarovski<zo...@sparecreative.com> wrote:
>> >>> >> Iąm having trouble displaying Danish text in my forms using the struts
>> >>> >> tags
>> >>> >> and I think it related to an error with how freemarker gets the 
>> >>> >> locale.
>> >>> >> Iąm
>> >>> >> getting a lot of question marks in the text, but if I set the server
>> >>> local
>> >>> >> to Danish, all works as expected. Obviously thatąs not a solution as 
>> >>> >> the
>> >>> >> other languages also have problems.
>> >>> >>
>> >>> >> For example the s:select tag is incorrectly displaying some Danish 
>> >>> >> text.
>> >>> >> But
>> >>> >> if I go in and edit the freemarker template file and change the label
>> >>> >> display from ${} notation to one using <@s.property /> tag it works as
>> >>> >> expected.
>> >>> >>
>> >>> >> Hereąs the details
>> >>> >>
>> >>> >> <@s.property value="%{parameters.label}"/> prints the correct text:
>> >>> >>
>> >>> >> Hvornĺr (ca.) begyndte de nuvćrende rygsmerter eller bensmerter 
>> >>> >> (iskias)?
>> >>> >>
>> >>> >> But ${parameters.label?html} prints texts with Ś?ą substituted for
>> >>> >> unsupported characters :
>> >>> >>
>> >>> >> Hvorn?r (ca.) begyndte de nuv?rende rygsmerter eller bensmerter 
>> >>> >> (iskias)?
>> >>> >>
>> >>> >>
>> >>> >> I can see one solution is to change all the freemarker template files 
>> >>> >> and
>> >>> >> replace ${} with <@s.property/>.
>> >>> >>
>> >>> >> But Iąm sure there has to be a simpler solution.
>> >>> >>
>> >>> >> Please, please help. As at the rate Iąm going I wonąt be needing a
>> >>> haircut
>> >>> >> for a while.
>> >>> >>
>> >>> >> Z.
>> >>> >>
>> >> >
>> >> >
>> >> >
>> > 
>> > 
>> 
>
> Get back to school stuff for them and cashback for you. Try Bing™ now.
-- 
Best regards,
 Daniel Dekany


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org

Reply via email to