我尝试使用Spring Boot中的一些数据填充百万美元模板。 我想要做的就是这个
<tr th:if="${group.organization}">
<td class="col_title"><b>Organization:</b></td>
<td class="organization-field-content" th:text="${group.organization}"></td>
</tr>
我已尝试过这里提出的解决方案:
Thymeleaf: show text if the attribute and property exists
并且,遵循百里香的呈现顺序,因为group.organization
为空,所以不应显示整个内td
。
仍有问题,因为Thymeleaf抱怨说
Servlet.service() for servlet [dispatcherServlet] in context with path []
threw exception [Request processing failed; nested exception is
org.thymeleaf.exceptions.TemplateProcessingException: Exception evaluating
SpringEL expression: "group.organization" (group)] with root cause
java.lang.NullPointerException: null
我不明白为什么会这样,因为组对象存在,只是组织为空
答案 0 :(得分:0)
您可以通过将其转储到类似<span th:utext="${group}" />
答案 1 :(得分:0)
在显示div之前,可能请尝试以下方法检查组和组织是否为空。
<tr th:if="${group != null && group.organization != null}">
<td class="col_title"><b>Organization:</b></td>
<td class="organization-field-content" th:text="${group.organization}"></td>
</tr>
答案 2 :(得分:0)
感谢所有回复,原来问题出在了其他地方。
所有提议的解决方案仍然提出相同的问题,这是因为Group Spring-data Model中的方法。
实际上,空指针异常来自n^2
方法,该方法没有正确地序列化getOrganization
值。
也许这可以在将来帮助其他人