我想使用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,但我无法找到任何信息。
答案 0 :(得分:0)
It looks like a velocity template, so you must either use velocity to preprocess it, or use XSLT (xalan). But if you want to use XSLT, you must first generate an XML document with all the data you need to generate the PDF.
UPDATE
for this example, you would need a document like this:
<?xml version="1.0"?>
<saleRows>
<saleRow var1="..." var2="..."/>
<saleRow var1="..." var2="..."/>
...
</saleRows>
or:
<?xml version="1.0"?>
<saleRows>
<saleRow>
<var1>...</var1>
<var2>...</var2>
</saleRow>
<saleRow>
<var1>...</var1>
<var2>...</var2>
</saleRow>
...
</saleRows>