377.10. 从 XSLT ErrorListener 访问警告、错误和严重错误
可从 Camel 2.14 开始
从 Camel 2.14,任何警告/错误或严重错误都作为密钥 Exchange.XSLT_ERROR、 Exchange.XSLT_ERROR、 Exchange.XSLT_ERROR 或 Exchange.XSLT_WARNING 存储在当前 Exchange 上,这将允许最终用户在转换过程中丢失所有错误。
例如,在下面的样式表中,如果某个员工有一个空 dob 字段,我们希望终止。和 包含使用 xsl:message 的自定义错误消息。
<xsl:template match="/">
<html>
<body>
<xsl:for-each select="staff/programmer">
<p>Name: <xsl:value-of select="name"/><br />
<xsl:if test="dob=''">
<xsl:message terminate="yes">Error: DOB is an empty string!</xsl:message>
</xsl:if>
</p>
</xsl:for-each>
</body>
</html>
</xsl:template>
例外作为带有密钥 Exchange.XSLT_WARNING 的警告保存在 Exchange.XSLT_WARNING 中。