给出两个对象:
public class MVCmodel {
UUID uuid;
NestedObject nestedObject = new NestedObject ();
}
public class NestedObject {
@Size(min = 2, max = 99)
String name = "";
}
百里香模板
<tr>
<td>
<input required="true" type="text" th:name="name"
th:value="${mVCmodel.getNestedObject.getName()}"
>
<span th:if="${#fields.hasErrors('name')}"
th:errors="${mVCmodel.getNestedObject().getName()}"
>Name Error
</span>
</td>
</tr>
我收到此错误: 评估SpringEL表达式的异常:“ fields.hasErrors('name')”
SpringEL尝试评估mVCmodel.name,并且必须失败,因为MVCmodel中没有字段名称。
如何评估字段mVCmodel.nestedObject.name?
答案 0 :(得分:0)
您的NestedObject类没有名为“名称”的字段。
答案 1 :(得分:0)
如果you're not using in a form using th:object
,则需要像这样使用#fields.hasErrors
:
${#fields.hasErrors('${mVCmodel.nestedObject.name}')}
如果您使用的是th:object
,则应该可以执行以下操作:
${#fields.hasErrors('nestedObject.name')}
很难从您发布的代码中分辨出来。您是否对每个字段都有获取器和设置器?