在我的Grails GSP中,我有以下代码...
<div class="starshipStatus">${ship.engine.report?.substring(0,40)}... </div>
其中“报告”成员有时可以具有空值。有时我在该页面上遇到此异常...
org.codehaus.groovy.grails.web.taglib.exceptions.GrailsTagException:
Error executing tag <g:render>:
No such property: title for class:
org.codehaus.groovy.grails.web.json.JSONObject$Null
该异常源于该行吗?还是安全导航运算符('?')可以防止“ JSONObject $ Null”?
答案 0 :(得分:1)
Groovy中的空安全操作符?
将无法避免此错误,因为NULL
与JSONObject.NULL
不同。后者是一个实际的对象,代表NULL
的值,实际上不是NULL
。
您可以执行以下操作:
<g:if test="${!ship.engine.report.equals(null)}">
...
</g:if>