我试图对实体中的Set属性执行bean验证:
@NotEmpty
@Valid
private Set<E_CMS_CONDITION_ITEM> items;当Set为空时,我想给我一个错误,现在没有给我一个错误。这与bean验证是可能的吗?如果是怎么回事?
更新用于Hardy:我使用PrimeFaces5.2版本,这是我的xhtml代码:
<p:dataList id="conditionItemList" value="#{eventsController.model.currentCondition.items}" var="event" type="ordered" rowIndexVar="rowInd" label="#{msg['table.conditions.caption']}">
.
.
.
</p:dataList>
<h:message for="conditionItemList" style="color:red" />相同的xhtml上的bean验证是有效的,只是这样不行。没有写任何错误,我也尝试和@NotNull一样。
发布于 2015-12-10 10:03:38
您可以使用Hibernate Validator。Bean验证1.1 JSR-349的参考实现
您可以验证包含items的实体。
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
Set<ConstraintViolation<Foo>> constraintViolations =
validator.validate( entity );它将返回实体的验证,包括items生成的违规行为。
https://stackoverflow.com/questions/34198210
复制相似问题