<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="1.xsl"?>
<row>
  <ident>10</ident>
  <dckid>10699</dckid>
</row><?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:output method="text" indent="yes" omit-xml-declaration="no" cdata-section-elements="docsMessage"/><xsl:template match="/">
<ExceptionMessage>
    <xsl:element name="docsMessage">         <xsl:value-of select="row" disable-output-escaping="no"/>     </xsl:element>
</ExceptionMessage></xsl:template>
</xsl:stylesheet>--------------------------->结果是  10 10699 
楼主是如何得到
<?xml version="1.0" encoding="UTF-8"?>
<ExceptionMessage>
  <docsMessage><![CDATA[10
  10699]]></docsMessage>
</ExceptionMessage>??

解决方案 »

  1.   

    #######给分给分,累死拉!!###############
    <?xml version="1.0" encoding="UTF-8"?>
    <row>
      <ident>10</ident>
      <dckid>10699</dckid>
    </row>
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output 
    method="xml" 
    version="1.0" 
    encoding="GBK"
    indent="yes"/>
    <xsl:template match="/">
      <ExceptionMessage>
      <docsMessage>
        <xsl:text disable-output-escaping="yes">
        &lt;![CDATA[
        </xsl:text>
        <xsl:call-template name="copyNode" />
        <xsl:text disable-output-escaping="yes">
        ]]&gt;
        </xsl:text>
        </docsMessage>
      </ExceptionMessage>
    </xsl:template>
    <xsl:template  match="@*|node()" name="copyNode">
      <xsl:copy>
        <xsl:apply-templates select="@*|node()"/>      
      </xsl:copy>
    </xsl:template>
    </xsl:stylesheet>
    public static void xsltConvert(String xmlSourceFile,
                                       String xsltSourceFile,
                                       OutputStream out) {
            try {
                File xmlFile = new File(xmlSourceFile);
                File xsltFile = new File(xsltSourceFile);            Source xmlSource = new StreamSource(xmlFile);
                Source xsltSource = new StreamSource(xsltFile);
                Result result = new StreamResult(out);            TransformerFactory transFact = TransformerFactory.newInstance();
                Transformer trans = transFact.newTransformer(xsltSource);
                //给参数传递值
                //trans.setParameter("image","B.jpg");
                //trans.clearParameters();
                trans.transform(xmlSource, result);
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        }
    生成---------------->
    <?xml version="1.0" encoding="GBK"?>
    <ExceptionMessage>
    <docsMessage>
        <![CDATA[
        
    <row>
      <ident>10</ident>
      <dckid>10699</dckid>
    </row>
        ]]>
        </docsMessage>
    </ExceptionMessage>
      

  2.   

    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:output method="text" indent="yes" omit-xml-declaration="no" cdata-section-elements="docsMessage"/><xsl:template match="/">
    <ExceptionMessage>
        <xsl:element name="docsMessage">         <xsl:copy-of select="root/*"/>    </xsl:element>
    </ExceptionMessage></xsl:template>
    </xsl:stylesheet>
      

  3.   

    关键语句: <xsl:copy-of select="root/*"/>
      

  4.   

    写错了,
    <xsl:copy-of select="root/*"/>
    改为:
    <xsl:copy-of select="row/*"/>