2010-06-30 53 views
0

我想一些额外的行添加到表中FOP,以填补他们多达13行使用此代码:循环在FOP失败

 <!-- Fill Up Empty space --> 
     <c:forEach var="i" begin="${position_id}" end="13" step="1"> 
     <fo:table-row height="4.4mm" border-bottom-color="black" 
      border-bottom-style="fixed" border-bottom-width="0.2mm"> 
      <fo:table-cell border-bottom-style="solid" 
      border-bottom-width="0.2mm" border-top-style="solid" 
      border-top-width="0.1mm"> 
      <fo:block font-size="8pt" text-align="center"> 
      </fo:block> 
      </fo:table-cell> 
      <fo:table-cell border-bottom-style="solid" 
      border-bottom-width="0.2mm" border-top-style="solid" 
      border-top-width="0.1mm"> 
      <fo:block /> 
      </fo:table-cell> 
      <fo:table-cell border-bottom-style="solid" 
      border-bottom-width="0.2mm" border-top-style="solid" 
      border-top-width="0.1mm"> 
      <fo:block /> 
      </fo:table-cell> 
      <fo:table-cell border-bottom-style="solid" 
      border-bottom-width="0.2mm" border-top-style="solid" 
      border-top-width="0.1mm"> 
      <fo:block /> 
      </fo:table-cell> 
      <fo:table-cell border-bottom-style="solid" 
      border-bottom-width="0.2mm" border-top-style="solid" 
      border-top-width="0.1mm"> 
      <fo:block /> 
      </fo:table-cell> 
     </fo:table-row> 
     </c:forEach> 

问题是,我不断收到一个例外:

org.apache.fop.fo.ValidationException: file:/tmp/fop_1613051806105460695.fo:289:126: Error(289/126): fo:table-row is not a valid child element of forEach. 
at org.apache.fop.fo.FONode.invalidChildError(FONode.java:435) 
at org.apache.fop.fo.FONode.invalidChildError(FONode.java:420) 
at org.apache.fop.fo.XMLObj.validateChildNode(XMLObj.java:70) 
    ... 

谷歌搜索也没有帮助。有任何想法吗?

回答

2

“c:forEach”不是FOP可以处理的。这是一些专有的XML转换语言吗?无论如何,您必须确保转换在FOP和FOP仅接收普通XSL-FO之前运行。那么这个错误应该消失。

只是关于FO零件的说明:如果没有内容,那么该表行可能会折叠到零高度。您可能需要在表格行上使用类似block-progression-dimension.minimum =“1.2em”的内容以避免折叠效果。

+0

那么c:forEach就是JSTL Core forEach,因为我可以使用c:set,我不知道为什么这不起作用。 至于零高度,我会尝试一个,但我的印象是,通过设置高度,我还设置了block-progresison-dimension.minimum。 – cdecker 2010-07-01 11:11:37