当大的XML文件FOP中断工作的归结于缺乏的RAM(1.7GB于我而言,是极限),来解决这个问题的方式,使一个是使用所描述的多个页面序列对象这里 。 然而,没有描述如何使用它们...而我试图做的是“创造”使用,每一个新的页面序列对象,但似乎我已经失败,FOB发生故障时达到的1.7GB反正夯
<xsl:template match="OurForm">
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:call-template name="layout_master_template"/>
<xsl:for-each select="document"> //Hopefully this creates a new page-sequence object, doesn't it?
<fo:page-sequence master-reference="page" initial-page-number="1" force-page-count="no-force">
<fo:flow flow-name="xsl-region-body">
<fo:block xsl:use-attribute-sets="pageBlock">
<xsl:call-template name="MainTemplate">
<xsl:with-param name="PageCount" select="0"/>
</xsl:call-template>
</fo:block>
</fo:flow>
</fo:page-sequence>
</xsl:for-each>
</fo:root>
</xsl:template>
MainTemplate需要几百记录,并将其打印表...
XML:
...
<document>
records
</document>
...
900 documents
...
<document>
records
</document>
难道换每创建一个新的页面序列对象每次它需要一个新的文档的XML时间? 你将如何解决这个内存问题?