我想使用Apache FOP生成一个PDF,其中包含我编写的ServiceClass提供的数据(其中包含对象的一些字符串和数组)。
在示例实现中,template.fo如下所示:
#foreach( $salesRow in $salesRows )
<fo:table-row height="1cm">
<fo:table-cell border-style="solid" padding="3">
<fo:block>
$salesRow.var1
</fo:block>
</fo:table-cell>
<fo:table-cell border-style="solid" padding="3">
<fo:block>
$salesRow.var2
</fo:block>
</fo:table-cell>
#end
我必须如何处理我的数据才能以示例中访问的方式在. fo中访问它?
我想我必须使用Xalan,但我找不到任何信息如何。
它看起来像一个速度模板,所以你必须使用速度来预处理它,或者使用XSLT(xalan)。但是如果你想使用XSLT,你必须首先生成一个XML文档,其中包含生成PDF所需的所有数据。
更新
对于此示例,您需要这样的文档:
<?xml version="1.0"?>
<saleRows>
<saleRow var1="..." var2="..."/>
<saleRow var1="..." var2="..."/>
...
</saleRows>
或:
<?xml version="1.0"?>
<saleRows>
<saleRow>
<var1>...</var1>
<var2>...</var2>
</saleRow>
<saleRow>
<var1>...</var1>
<var2>...</var2>
</saleRow>
...
</saleRows>