[ http://issues.apache.org/struts/browse/SHALE-292?page=comments#action_38283 ] Gary VanMatre commented on SHALE-292: -------------------------------------
This is the first try at resolving this issue. It will be available in the shale-framework-20060928 nightly build. You can find it here: http://people.apache.org/builds/shale/nightly/. To summarize the changes based on your notes the encoding is now determined with the following steps: 1) Look at the top of the template for the token comment containing the charset. For example: <-- ### clay:page charset="UTF-8" /### --> 2) If not found, look for the app wide config option for template encoding. If found use the encoding for reading the template. For example: <context-param> <param-name>org.apache.shale.clay.HTML_TEMPLATE_CHARSET</param-name> <param-value>UTF-8</param-value> </context-param> 3) If not found use the vm's default "file.encoding". 4) Read the template in with the determined encoding Tom, I'm going to leave this open until you have a chance to verify. > Clay doesn't consider file's encoding when loading/parsing html templates > from hdd > ---------------------------------------------------------------------------------- > > Key: SHALE-292 > URL: http://issues.apache.org/struts/browse/SHALE-292 > Project: Shale > Issue Type: Bug > Components: Clay > Affects Versions: 1.0.0, 1.0.1, 1.0.2, 1.0.4-SNAPSHOT, 1.0.3 > Environment: windows xp, tomcat 5.5 (started with > -Dfile.encoding=UTF-8 option, this way myfaces doesn't convert all non-ascii > characters to html entities), myfaces 1.1.3 > Reporter: Tom Pasierb > Assigned To: Gary VanMatre > Attachments: some.html, whatever.jsp > > > Clay reads html files assuming ascii encoding. This way it's impossible to > have characters other than ascii in templates. They do not display correctly. > As indicated on the user mailing list a Reader object should be used for > reading templates instead of InputStream. I wrote more about this on shale > user mailing list. > We probably need: > 1. app wide config option for setting encoding clay should use for reading > templates in. Clay would default to this setting unless maybe > 2. some per file encoding config option was set (something similar to @page > pageEncoding directive for jsps) > I marked it as major as this should be corrected if one wants to develop > localized applications with non-ascii characters in html templates. > As noted by Craig this probably also applies to xml templates, which I > haven't tried myself. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/struts/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
