XSLT:XSL-FO不呈现表

时间:2019-06-05 07:18:26

标签: java

XSLT组件中的XSL-FO方法(BLOB和File)都省略了标签和所有表内容。我正在使用fop-0.20.5.jar

我已经用新版本的jar(即fop-2.3)进行了检查,但是对于该解决方案,该类适用于测试类,但是我的应用程序需要进行大量更改。有什么办法可以对旧的jar起作用,即fop-0.20.5.jar?

    This is my XML

    <Bericht>
        <Kunde></Kunde>
        <lok>
            <Artikel></Artikel>
            <TfzNr></TfzNr>
            <Planer></Planer>
            <Kundennummer></Kundennummer>
            <Kunde></Kunde>
            <aktKM></aktKM>
            <aktKMDatum></aktKMDatum>
            <letzteWartungArt></letzteWartungArt>
            <letzteWartungDatum></letzteWartungDatum>
            <letzteWartungKM></letzteWartungKM>
            <naechsteWartungArt></naechsteWartungArt>
            <naechsteWartungDatum></naechsteWartungDatum>
            <naechsteWartungVerbleibend></naechsteWartungVerbleibend>
            <naechsteWartungEinheit></naechsteWartungEinheit>
            <naechsteGrosseWartungArt></naechsteGrosseWartungArt>
            <naechsteGrosseWartungDatum></naechsteGrosseWartungDatum>
            <naechsteGrosseWartungVerbleibend></naechsteGrosseWartungVerbleibend>
            <naechsteGrosseWartungEinheit></naechsteGrosseWartungEinheit>
        </lok>
    </Bericht>

follwing is the xslt file
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
   <xsl:template match="/">
      <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
         <fo:layout-master-set>
            <fo:simple-page-master master-name="DIN-A4"
                  page-height="21cm" page-width="29.7cm"
                  margin-top="2cm"     margin-bottom="2cm"
                  margin-left="2.5cm"  margin-right="2.5cm">
               <fo:region-body
                  margin-top="1.5cm" margin-bottom="1.8cm"
                  margin-left="2cm"  margin-right="2.5cm"/>
               <fo:region-before region-name="header" extent="1.3cm"/>
               <fo:region-after  region-name="footer" extent="1.5cm"/>
               <fo:region-start  region-name="left"   extent="1cm"/>
               <fo:region-end    region-name="right"  extent="2cm"/>
            </fo:simple-page-master>
         </fo:layout-master-set>

         <fo:page-sequence master-reference="DIN-A4">
            <fo:static-content flow-name="header">
                <fo:block>REPORT</fo:block>
            </fo:static-content>
            <fo:static-content flow-name="footer">
               <fo:block text-align="center">
                  Page <fo:page-number/> of <fo:page-number-citation ref-id="LastPage"/>
               </fo:block>
            </fo:static-content>

            <fo:flow flow-name="xsl-region-body">
               <xsl:apply-templates/>
               <fo:block id="LastPage"/>
            </fo:flow>
         </fo:page-sequence>
      </fo:root>
   </xsl:template>

 <xsl:template match="Bericht">
                        <fo:block text-align="center"> TEST BLOCK </fo:block>

                        <fo:table>
                        <xsl:call-template name="table-head"/>
                            <fo:table-body>
                                <fo:table-row>
                                    <fo:table-cell>
                                        <fo:block text-align="center"> TABLE CELL </fo:block>
                                    </fo:table-cell>
                                </fo:table-row>
                            </fo:table-body>
                        </fo:table>
</xsl:template>


<xsl:template name="table-head"><fo:table-header>
            <fo:table-row background-color="red">
                    <fo:table-cell>
                        <fo:block text-align="center">TABLE HEADER</fo:block>
                    </fo:table-cell>
            </fo:table-row>
        </fo:table-header>

</xsl:template>
</xsl:stylesheet> 

当我使用在线工具尝试以下网址时,该工具会生成正确的PDF文件         http://www.utilities-online.info/foprender/#.XDScLVwza73         使用旧的jar我这里没有任何异常,但是它省略了PDF中的内容

0 个答案:

没有答案