我正在尝试使用Rythm模板生成xml文件,当我使用12.33
循环添加org.rythmengine.utils.TextBuilder
条件时,我收到@if()
build()错误。
@for()
答案 0 :(得分:0)
您的模板没有任何问题,请尝试以下代码:
http://fiddle.rythmengine.org/#/editor
问题可能在您的Java代码中。
@def class ErrorObject {
String errorid;
String errorcode;
public ErrorObject(String id,String code) {
errorid=id;
errorcode=code;
}
}
@{
List<ErrorObject> errorObjs=new ArrayList<ErrorObject>();
errorObjs.add(new ErrorObject("id1","code 1"));
errorObjs.add(new ErrorObject("id2","code 2"));
errorObjs.add(new ErrorObject("id3","code 3"));
}
@if(errorObjs != null) {
<Errors>
@for(ErrorObject errObj : errorObjs) {
<Error>
<ErrorCode>@errObj.errorid</ErrorCode>
<ErrorMessage>@errObj.errorcode</ErrorMessage>
</Error>
}
</Errors>
}
答案 1 :(得分:0)
不是问题的答案,只是关于@if
的使用的评论:
如果您想检查某些内容是null
,请直接使用:
@if(errorObjs) {
// display the errors
}
在http://rythmengine.org/doc/directive.md#if
查看有关@if
指令的详情
关于代码的另一个建议是像List
这样的容器对象应始终为非null值,而不是为容器返回null
,返回空容器以使代码更清晰。