Hello,

I am having a problem with Xalan transforming a document containing Japanese characters. (An initial note: the problem does not occur on my Windows development machine, only on the Solaris test/production environments.)

The basic problem is that for any place I'm selecting XML node values to use within an xsl:attribute block, if the text is double-byte it is converted to the NCR representation instead of the actual characters. Under Windows, the "real" characters appear within the attribute tag. I'm positive the source XML is UTF-8 encoded, as I can output the value correctly within the same stylesheet as long as it is not output within an xsl:attribute tag.

Here's an XSL snippet--the basic idea is I'm creating a bunch of HTML fields and setting the "value" attribute to a selected XML element value:

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
<xsl:output encoding="UTF-8" omit-xml-declaration="yes" method="html"/>
.........

<xsl:template match="//root/row">

   <tr>
       THIS VALUE IS KANJI AND GETS OUPUT AS NCR

       <td width="400" class="label" height="18">
           <input type="text" name="companyAffiliation" size="50">
               <xsl:attribute name="value">
                   <xsl:value-of select="companyAffiliation"/>
               </xsl:attribute>
           </input>
       </td>
   </tr>

   <tr>
       USING A TEXTAREA WITHOUT XSL:ATTRIBUTE, IT OUTPUTS CORRECTLY

       <td width="400" class="label" height="18">
           <textarea name="companyAffiliation2" rows="1" cols="50">
               <xsl:value-of select="companyAffiliation"/>
           </textarea>
       </td>
   </tr>

</xsl:template>

I'm using the latest version of Xerces/Xalan w/JDK 1.2.2. Once again, it
works fine on Windows. Any ideas?

Thanks,

- patrick

_________________________________________________________________
MSN Photos is the easiest way to share and print your photos: http://photos.msn.com/support/worldwide.aspx




Reply via email to