GSP模板错误:没有方法签名:SimpleTemplateScript(<some number =“”>)。var()适用于参数类型:(java.lang.Boolean)

时间:2016-12-22 15:18:07

标签: gsp

Groovy 2.4.4中的以下内容:

import groovy.text.SimpleTemplateEngine;
import groovy.text.Template;
import groovy.text.TemplateEngine;
import java.util.Map;
...
// assume templateFile is a File object pointing to a GSP file
TemplateEngine templateEngine = new SimpleTemplateEngine(getClass().getClassLoader());
Template template = templateEngine.createTemplate(templateFile);
Map<String, Object> bindings = new Map<String, Object>();
String output = template.make().toString();

给出一个包含以下内容的模板文件:

<%
var someVar = false;
%>

产生错误:

  

处理模板时发生意外错误:没有方法签名:SimpleTemplateScript369.var()适用于参数类型:(java.lang.Boolean)values:[false]可能的解决方案:wait(),run() ,run(),every(),any(),wait(long)

如何在此版本的Groovy中的GSP模板中创建布尔值?

1 个答案:

答案 0 :(得分:0)

该错误表明var不接受布尔值。

var在某些语言中用于变量定义,因此我将它与def混合在一起,这是Groovy中更宽松的变量类型。

如果你想在语言之间切换时不要混淆,在GSP中只需在定义变量时使用Java类型,例如:

<%
Boolean someVar = false;
%>