org.apache.velocity.exception.ParseErrorException:遇到“=”

时间:2014-07-02 14:23:01

标签: velocity freemarker xdocreport

此代码有效:

Project : «$project.Name»
Developers (Section) : 
--------------------------------------------------------------------------------------------------------------------------------------
«#foreach($developer in $developers)»«$developer.Name»

«#end»

但这不是:

Project : «$project.Name»
Developers (Section) : 
--------------------------------------------------------------------------------------------------------------------------------------
«#foreach($developer in $developers)»«$developer.Name»
«[#if($developer.Name='Angelo')]1[/#if]»    
«#end»

这是我作为自由标记模板输入单词的代码,错误在" if"条款。流出的错误是:线程中的异常"主线程" org.apache.velocity.exception.ParseErrorException:遇到" =" at fr.opensagres.xdocreport.document.docx.DocxReport@9affcf!word/document.xml [第1行,第3211栏]

有人可以告诉我会发生什么吗?

2 个答案:

答案 0 :(得分:2)

好吧,最后我看到了哪个问题。我结束了我的"如果"条款与#34;"。那是不对的。正确的方法是使用"< #end>"标签

答案 1 :(得分:-1)

问题是你需要使用双等号,如:

#foreach($developer in $developers) 
  $developer.Name
  #if($developer.Name=='Angelo')
   1
  #end   
#end

此外,您不需要在操作员周围使用方括号。