xsl-list
[Top] [All Lists]

Re: [xsl] 16-bit entities converted to "?" by XSLT

2008-12-07 10:09:57
I've tried <xsl:output encoding="UTF-16"> and various other things, but
nothing seems to work. Is there an easy way to fix this so I can just
display 16-bit characters?


How do you run the transformation exactly? How do you serve the
transformation result to the browser, from a local file or from a HTTP
server? If the document is loaded from a HTTP server have you checked the
HTTP Content-Type header whether it might have a charset parameter that does
not match the encoding of the document?

The transform is a output filter for a servlet. The servlet generates
XML which gets transformed into HTML and squirted from the server back
to the browser. The Content-Type is "text/html; charset=UTF-8". I've
also tried <xsl:output encoding="UTF-16">, as I mentioned, in which
case it comes out as "text/html; charset=UTF-16", but this makes no
difference as far as the way the characrer references get converted
into question marks.

There's probably some byte-to-character (or vice-versa) conversion
happening using the platform default encoding (windows-1252 on
Windows, different for the other platforms).

You can set a different default encoding using the "file.encoding"
switch, so locate where you set the jvm args for your appsever and
add:

-Dfile.encoding=UTF-8



-- 
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--