【问题标题】:What does this Apache FOP error mean?这个 Apache FOP 错误是什么意思?
【发布时间】:2009-12-14 09:28:31
【问题描述】:

错误信息

(错误位置 未知)org.apache.fop.fo.Validation 例外:属性 ID“_Ref191196753” 以前使用过; id 值必须是 在文档中是唯一的。

关于可能导致此问题的任何想法?是因为我有一个 for-each 并且多次应用同一个模板吗?

【问题讨论】:

  • 我冒昧地重新排列了问题,将错误消息移到问题正文中。

标签: pdf xslt pdf-generation apache-fop


【解决方案1】:

specification 声明元素的 id 必须是唯一的。

以下代码会产生您收到的错误消息。

<fo:block id="_Ref191196753"/>
<fo:block id="_Ref191196753"/>

您需要搜索您的 fo 文件以找到具有相同 id 的元素的出现。然后在您的 XSLT 中进行更改以消除这些。

【讨论】:

  • @Ayrad:例如,它可能是在 xsl:for-each 循环中具有硬编码 id 的 fo:block,或者被多次应用的 xsl:template
  • 如果你需要的话,你可以使用 XSLT“generate-id”函数来生成唯一的 id。
猜你喜欢
  • 1970-01-01
  • 2018-11-29
  • 2011-03-01
  • 2012-11-06
  • 2012-10-20
相关资源
最近更新 更多