1

我知道 freemarker 逻辑和 is &&,但是当我在 xDocReport 中使用它时,发生错误:SystemId Unknown; Line #4; Column #2796; The entity name must immediately follow the '&' in the entity reference.. 我将其更改为&&and \u0026\u0026,但都不起作用。

代码细节:«[#if scope!='a' && scope!='b']»

我认为这是一个基本的用法。我错过了什么吗?谢谢!

ps 从错误消息中,可以使用指令 <and>,但我找不到任何关于它的技术文档。

4

1 回答 1

1

模板本身并不意味着是有效的 XML 片段,但从你所说的来看,在 XDocReport 中它们显然必须是。为此,从 FreeMarker 2.3.27 开始,您可以编写\and&amp;&amp;代替&&. (此外,您可以编写&lt;and&gt;而不是<and >;请参阅https://freemarker.apache.org/docs/dgui_template_exp.html#dgui_template_exp_comparison)。

在 2.3.27 之前,&&没有替代语法,因此您必须重写这些表达式,以便它们不使用逻辑“和”......就像!(scope == 'a' || scope == 'b')您的情况一样。

于 2017-06-28T09:37:49.833 回答