Subject: RE: [xsl] Global parameters with UTF-8 characters and ???s From: "David Nesbitt" <dnesbitt@xxxxxxxxxxxxxxxxx> Date: Wed, 2 Aug 2006 12:22:02 -0700 |
> Does the same problem affect the same character if it originates from a > place other than the global parameter? For example, what happens when > you do <xsl:value-of select="'&#x....'"/>? I placed the following in my stylesheet: 日本語<xsl:value-of select="'日本語'"/><xsl:value-of select="$global.parameter"/> It returns 9 question marks. So that seems consistent. However, here is the weird thing. If I change my Java code to do the escaping as follows: transformer.setParameter(key, StringEscapeUtils.escapeXml(resourceBundle.getString(key))); and then change my stylesheet to use disable-output-escaping for the global parameter as follows: -----Original Message----- From: Michael Kay [mailto:mike@xxxxxxxxxxxx] Sent: Wednesday, August 02, 2006 11:39 AM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: RE: [xsl] Global parameters with UTF-8 characters and ???s > > I am having problems with global parameters which have UTF-8 > characters in them. They show up as question marks when I > use their values in the output (e.g. <xsl:value-of > select="$global-parameter"/>). Does the same problem affect the same character if it originates from a place other than the global parameter? For example, what happens when you do <xsl:value-of select="'&#x....'"/>? If the problem occurs in this situation, then the two possible explanations are (a) your output device isn't configured to display the character (no glyph in the chosen font) (b) the software used to display the output (e.g. a text editor or a browser) doesn't know that the output is encoded in UTF-8. If the problem doesn't occur in this situation, then the problem is with the contents of the parameter, which probably means it's something to do with the encoding of the resourceBundle. Michael Kay http://www.saxonica.com/ > > I am using JAXP (with Xalan 2.6 as the underlying XSLT > engine) from a JSP page to generate HTML. > > My JSP page has the following setting for UTF-8: > > <%@ page contentType="text/html;charset=UTF-8" language="java" %> > > My XSLT stylesheet has the following XML declaration: > > <?xml version="1.0" encoding="UTF-8"?> > > And the stylesheet also has the following output element: > > <xsl:output method="html" indent="yes" encoding="UTF-8"/> > > I am using the following Java code to set the global parameters: > > transformer.setParameter(key, resourceBundle.getString(key)); > > So I think I am setting everything up properly for UTF-8. Is > there anything I am doing wrong that is causing these > characters to be shown as question marks? > > Thanks in advance for any help. > > Regards, > Dave
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Global parameters with UT, David Nesbitt | Thread | Re: [xsl] Global parameters with UT, Steve |
Re: [xsl] Global parameters with UT, Steve | Date | RE: [xsl] Global parameters with UT, David Nesbitt |
Month |