我想使用entityManager.persist()方法保存Tesis类,但是我收到了以下错误。
引起:javax.validation.UnexpectedTypeException:HV000030:找不到类型为:thymeleafexamples.layouts.acenta.Acenta的验证器。
@Entity
public class Tesis {
public Tesis(){
}
public Tesis(String adi, Acenta acenta) {
this.adi = adi;
this.acenta = acenta;
}
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@NotEmpty
private String adi;
@NotEmpty
@ManyToOne(fetch = FetchType.EAGER,cascade=CascadeType.ALL)
@JoinColumn(name="acenta_id")
private Acenta acenta;
//GETTERS AND SETTERS
}
/////////////////////////////////////////////// //////////////////////
@SuppressWarnings("serial")
@Entity
public class Acenta implements java.io.Serializable {
public Acenta(String adi) {
this.adi = adi;
}
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@NotEmpty
private String adi;
@OneToMany(mappedBy="acenta")
private Set<Tesis> tesiss;
}
答案 0 :(得分:0)
根据Hibernate Validator的API org.hibernate.validator.constraints.NotEmpty注释
“断言带注释的字符串,集合,映射或数组不是 null或空“
基于上述定义Acenta
类型不是要检查的有效类型。您可以考虑使用javax.validation.constraints.NotNull注释,因为它对所有类型都有效,而且不是供应商特定的。