2017-06-20 7 views
2

ファイルXSL-FOを使用してPDFを生成しようとすると問題が発生します。 私のXSL:org.apache」タイプの型 'org.apache.fop.layout.BlockArea' の インポッシブルキャストオブジェクト:ブロックコンテナの生成中のXSL-FOエラーPDF

`

fo:block-container position="absolute" absolute-position="absolute" top="49mm" left="24mm" width="165mm" height="30mm" > 
<fo:block> 
     <fo:table> 
       <fo:table-column column-width="79mm"/> 
       <fo:table-column column-width="80mm"/>` 

       <fo:table-body> 
        <fo:table-row height="10mm"> 
         <fo:table-cell xsl:use-attribute-sets="box" number-rows-spanned="2">        
          <fo:block> 

       <xsl:attribute name="font-weight">bold</xsl:attribute> 
       <xsl:attribute name="text-align">center</xsl:attribute> 
       <xsl:value-of select="NewDataSet/Interface/dossier_num"/> <xsl:value-of select="NewDataSet/Dossier/no_dossier"/> 
       </fo:block> 
          <fo:block> 
           <fo:table> 
            <fo:table-column />         
            <fo:table-body> 
        <fo:table-row> 
              <fo:table-cell> 
               <fo:block font-size="8pt"> 
                <xsl:attribute name="text-align">left</xsl:attribute> 
                <xsl:value-of select="NewDataSet/Interface/code_produit"/><xsl:text>: </xsl:text> 
                <xsl:value-of select="NewDataSet/Table/code_produit"/> 
               </fo:block> 
              </fo:table-cell> 
        </fo:table-row> 
             <fo:table-row> 
              <fo:table-cell> 
               <fo:block font-size="8pt"> 
                <xsl:attribute name="text-align">left</xsl:attribute> 
                <xsl:value-of select="NewDataSet/Interface/modele"/><xsl:text>: </xsl:text> 
                <xsl:value-of select="NewDataSet/Table/modele"/> 
               </fo:block> 
              </fo:table-cell> 
        </fo:table-row> 
        <fo:table-row> 
              <fo:table-cell> 
               <fo:block font-size="8pt"> 
                <xsl:attribute name="text-align">left</xsl:attribute> 
                <xsl:value-of select="NewDataSet/Interface/provenance"/><xsl:text>: </xsl:text> 
                <xsl:value-of select="NewDataSet/Table/mag_depot"/> 
               </fo:block>            
              </fo:table-cell> 
             </fo:table-row> 
             <fo:table-row> 
              <fo:table-cell> 
         <fo:block font-size="8pt"> 
                <xsl:attribute name="text-align">left</xsl:attribute> 
                <xsl:value-of select="NewDataSet/Interface/numero_serie"/><xsl:text>: </xsl:text> 
                <xsl:value-of select="NewDataSet/Table/serie"/> 
               </fo:block> 
              </fo:table-cell> 
        </fo:table-row> 
        <fo:table-row> 
              <fo:table-cell> 
         <fo:block font-size="8pt"> 
                <xsl:attribute name="text-align">left</xsl:attribute> 
                <xsl:value-of select="NewDataSet/Interface/garantie"/><xsl:text>: </xsl:text>       
          <xsl:choose> 
          <xsl:when test="/NewDataSet/Table/sous_garantie='true'"><xsl:value-of select="NewDataSet/Interface/oui"/></xsl:when> 
          <xsl:otherwise><xsl:value-of select="NewDataSet/Interface/non"/></xsl:otherwise> 
          </xsl:choose>            
               </fo:block>            
              </fo:table-cell> 
             </fo:table-row> 
             <fo:table-row> 
              <fo:table-cell> 
         <fo:block font-size="8pt"> 
                <xsl:attribute name="text-align">left</xsl:attribute> 
                <xsl:value-of select="NewDataSet/Interface/marque"/><xsl:text>: </xsl:text> 
                <xsl:value-of select="NewDataSet/Table/marque"/> 
               </fo:block> 
              </fo:table-cell>            
             </fo:table-row> 
             <fo:table-row>           
              <fo:table-cell> 
               <fo:block font-weight="bold" text-align="right"> 
                <xsl:value-of select="NewDataSet/Table/nom"/><xsl:text> </xsl:text> 
                <xsl:value-of select="NewDataSet/Table/prenom"/> 
               </fo:block>            
              </fo:table-cell> 
             </fo:table-row> 
            </fo:table-body> 
           </fo:table> 
          </fo:block> 
         </fo:table-cell>   
      <fo:table-cell> 
       <fo:table> 
       <fo:table-column column-width="40mm"/> 
       <fo:table-column column-width="40mm"/> 

       <fo:table-body> 
        <fo:table-row height="14mm"> 
        <fo:table-cell display-align="center"> 
         <fo:block font-weight="bold" text-align="center"> 

         <xsl:value-of select="NewDataSet/Dossier/no_dossier"/> 

         </fo:block> 
         <fo:block font-weight="bold" text-align="center"> 
         <xsl:value-of select="NewDataSet/Table/code_produit"></xsl:value-of> 
         </fo:block> 
        </fo:table-cell> 
        <fo:table-cell display-align="center"> 
         <fo:block font-weight="bold" text-align="center"> 
         <xsl:value-of select="NewDataSet/Dossier/no_dossier"/> 

         </fo:block> 
         <fo:block font-weight="bold" text-align="center"> 
         <xsl:value-of select="NewDataSet/Table/code_produit"></xsl:value-of> 
         </fo:block> 
        </fo:table-cell> 
        </fo:table-row > 
        <fo:table-row height="14mm">         
        <fo:table-cell display-align="center"> 
        <fo:block font-weight="bold" text-align="center"> 
         <xsl:value-of select="NewDataSet/Dossier/no_dossier"/> 

        </fo:block> 
        <fo:block font-weight="bold" text-align="center"> 
         <xsl:value-of select="NewDataSet/Table/code_produit"></xsl:value-of> 
        </fo:block> 
        </fo:table-cell> 
        <fo:table-cell display-align="center"> 
        <fo:block font-weight="bold" text-align="center"> 
         <xsl:value-of select="NewDataSet/Dossier/no_dossier"/> 
        </fo:block> 
        <fo:block font-weight="bold" text-align="center"> 
         <xsl:value-of select="NewDataSet/Table/code_produit"></xsl:value-of> 
        </fo:block> 
        </fo:table-cell> 
       </fo:table-row> 
       </fo:table-body> 
      </fo:table> 
      </fo:table-cell> 
        </fo:table-row> 
       </fo:table-body> 
      </fo:table> 
`</fo:block> 
</fo:block-container> 

`

私はこのエラーを持っています。 fop.layout.AreaContainer

同じdll(apachefop.net)を使用する他のプロジェクトで生成しようとするとエラーは発生しません。 このノードはどのように置き換えることができますか?どうすればこの問題を解決できますか?

ありがとうございます。

答えて

1

あなたはfo:table-cellの子としてfo:tableを持っています。そのテーブルをブロックで囲みます。

+0

こんにちは、私はfo:block-containerのすべてのコンテンツを削除することはできません、私は同じ問題があります。しかし、私はブロックコンテナを削除すると問題が消えます。 –