RE: [xsl] Global parameters with UTF-8 characters and ???s

Subject: RE: [xsl] Global parameters with UTF-8 characters and ???s
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 2 Aug 2006 19:38:59 +0100
> 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