错误:没有validation器可以findtypes:java.lang.Integer?

我正在和Spring一起开发一个项目,为什么我一直在收到以下错误?

javax.validation.UnexpectedTypeException:types:java.lang.Integer中找不到validation器

Code: package com.s2rsolutions.model; import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; import javax.validation.constraints.Size; import org.hibernate.validator.constraints.NotEmpty; @Entity @Table(name = "sales") public class Sales { @NotEmpty(message = "The above field must not be blank.") @Column(name = "ttl_d_sls_lst_mth", nullable = false) private Integer ttl_d_sls_lst_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "ttl_d_sls_6_mth", nullable = false) private Integer ttl_d_sls_6_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "ttl_d_sls_mtht", nullable = false) private Integer ttl_d_sls_mtht; @NotEmpty(message = "The above field must not be blank.") @Column(name = "ttl_s_sls_lst_mth", nullable = false) private Integer ttl_s_sls_lst_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "ttl_s_sls_6_mth", nullable = false) private Integer ttl_s_sls_6_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "ttl_s_sls_mtht", nullable = false) private Integer ttl_s_sls_mtht; @NotEmpty(message = "The above field must not be blank.") @Column(name = "nw_lst_mth", nullable = false) private Integer nw_lst_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "nw_6_mth", nullable = false) private Integer nw_6_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "nw_mtht", nullable = false) private Integer nw_mtht; @NotEmpty(message = "The above field must not be blank.") @Column(name = "usd_lst_mth", nullable = false) private Integer usd_lst_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "usd_6_mth", nullable = false) private Integer usd_6_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "usd_mtht", nullable = false) private Integer usd_mtht; @NotEmpty(message = "The above field must not be blank.") @Column(name = "grss_prt_pvnr_lst_mth", nullable = false) private Integer grss_prt_pvnr_lst_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "grss_prt_pvnr_6_mth", nullable = false) private Integer grss_prt_pvnr_6_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "grss_prt_pvnr_mtht", nullable = false) private Integer grss_prt_pvnr_mtht; @NotEmpty(message = "The above field must not be blank.") @Column(name = "grss_prt_pvur_lst_mth", nullable = false) private Integer grss_prt_pvur_lst_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "grss_prt_pvur_6_mth", nullable = false) private Integer grss_prt_pvur_6_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "grss_prt_pvur_mtht", nullable = false) private Integer grss_prt_pvur_mtht; @NotEmpty(message = "The above field must not be blank.") @Column(name = "shwrm_tffic_lst_mth", nullable = false) private Integer shwrm_tffic_lst_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "shwrm_tffic_6_mth", nullable = false) private Integer shwrm_tffic_6_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "shwrm_tffic_mtht", nullable = false) private Integer shwrm_tffic_mtht; @NotEmpty(message = "The above field must not be blank.") @Column(name = "shwrm_clsng_lst_mth", nullable = false) private Integer shwrm_clsng_lst_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "shwrm_clsng_6_mth", nullable = false) private Integer shwrm_clsng_6_mth; @NotEmpty(message = "The above field must not be blank.") @Column(name = "shwrm_clsng_mtht", nullable = false) private Integer shwrm_clsng_mtht; @Column(name = "date_added") private Date addedDate; public Integer getTtl_d_sls_lst_mth() { return ttl_d_sls_lst_mth; } public void setTtl_d_sls_lst_mth(Integer ttl_d_sls_lst_mth) { this.ttl_d_sls_lst_mth = ttl_d_sls_lst_mth; } public Integer getTtl_d_sls_6_mth() { return ttl_d_sls_6_mth; } public void setTtl_d_sls_6_mth(Integer ttl_d_sls_6_mth) { this.ttl_d_sls_6_mth = ttl_d_sls_6_mth; } public Integer getTtl_d_sls_mtht() { return ttl_d_sls_mtht; } public void setTtl_d_sls_mtht(Integer ttl_d_sls_mtht) { this.ttl_d_sls_mtht = ttl_d_sls_mtht; } public Integer getTtl_s_sls_lst_mth() { return ttl_s_sls_lst_mth; } public void setTtl_s_sls_lst_mth(Integer ttl_s_sls_lst_mth) { this.ttl_s_sls_lst_mth = ttl_s_sls_lst_mth; } public Integer getTtl_s_sls_6_mth() { return ttl_s_sls_6_mth; } public void setTtl_s_sls_6_mth(Integer ttl_s_sls_6_mth) { this.ttl_s_sls_6_mth = ttl_s_sls_6_mth; } public Integer getTtl_s_sls_mtht() { return ttl_s_sls_mtht; } public void setTtl_s_sls_mtht(Integer ttl_s_sls_mtht) { this.ttl_s_sls_mtht = ttl_s_sls_mtht; } public Integer getNw_lst_mth() { return nw_lst_mth; } public void setNw_lst_mth(Integer nw_lst_mth) { this.nw_lst_mth = nw_lst_mth; } public Integer getNw_6_mth() { return nw_6_mth; } public void setNw_6_mth(Integer nw_6_mth) { this.nw_6_mth = nw_6_mth; } public Integer getNw_mtht() { return nw_mtht; } public void setNw_mtht(Integer nw_mtht) { this.nw_mtht = nw_mtht; } public Integer getUsd_lst_mth() { return usd_lst_mth; } public void setUsd_lst_mth(Integer usd_lst_mth) { this.usd_lst_mth = usd_lst_mth; } public Integer getUsd_6_mth() { return usd_6_mth; } public void setUsd_6_mth(Integer usd_6_mth) { this.usd_6_mth = usd_6_mth; } public Integer getUsd_mtht() { return usd_mtht; } public void setUsd_mtht(Integer usd_mtht) { this.usd_mtht = usd_mtht; } public Integer getGrss_prt_pvnr_lst_mth() { return grss_prt_pvnr_lst_mth; } public void setGrss_prt_pvnr_lst_mth(Integer grss_prt_pvnr_lst_mth) { this.grss_prt_pvnr_lst_mth = grss_prt_pvnr_lst_mth; } public Integer getGrss_prt_pvnr_6_mth() { return grss_prt_pvnr_6_mth; } public void setGrss_prt_pvnr_6_mth(Integer grss_prt_pvnr_6_mth) { this.grss_prt_pvnr_6_mth = grss_prt_pvnr_6_mth; } public Integer getGrss_prt_pvnr_mtht() { return grss_prt_pvnr_mtht; } public void setGrss_prt_pvnr_mtht(Integer grss_prt_pvnr_mtht) { this.grss_prt_pvnr_mtht = grss_prt_pvnr_mtht; } public Integer getGrss_prt_pvur_lst_mth() { return grss_prt_pvur_lst_mth; } public void setGrss_prt_pvur_lst_mth(Integer grss_prt_pvur_lst_mth) { this.grss_prt_pvur_lst_mth = grss_prt_pvur_lst_mth; } public Integer getGrss_prt_pvur_6_mth() { return grss_prt_pvur_6_mth; } public void setGrss_prt_pvur_6_mth(Integer grss_prt_pvur_6_mth) { this.grss_prt_pvur_6_mth = grss_prt_pvur_6_mth; } public Integer getGrss_prt_pvur_mtht() { return grss_prt_pvur_mtht; } public void setGrss_prt_pvur_mtht(Integer grss_prt_pvur_mtht) { this.grss_prt_pvur_mtht = grss_prt_pvur_mtht; } public Integer getShwrm_tffic_lst_mth() { return shwrm_tffic_lst_mth; } public void setShwrm_tffic_lst_mth(Integer shwrm_tffic_lst_mth) { this.shwrm_tffic_lst_mth = shwrm_tffic_lst_mth; } public Integer getShwrm_tffic_6_mth() { return shwrm_tffic_6_mth; } public void setShwrm_tffic_6_mth(Integer shwrm_tffic_6_mth) { this.shwrm_tffic_6_mth = shwrm_tffic_6_mth; } public Integer getShwrm_tffic_mtht() { return shwrm_tffic_mtht; } public void setShwrm_tffic_mtht(Integer shwrm_tffic_mtht) { this.shwrm_tffic_mtht = shwrm_tffic_mtht; } public Integer getShwrm_clsng_lst_mth() { return shwrm_clsng_lst_mth; } public void setShwrm_clsng_lst_mth(Integer shwrm_clsng_lst_mth) { this.shwrm_clsng_lst_mth = shwrm_clsng_lst_mth; } public Integer getShwrm_clsng_6_mth() { return shwrm_clsng_6_mth; } public void setShwrm_clsng_6_mth(Integer shwrm_clsng_6_mth) { this.shwrm_clsng_6_mth = shwrm_clsng_6_mth; } public Integer getShwrm_clsng_mtht() { return shwrm_clsng_mtht; } public void setShwrm_clsng_mtht(Integer shwrm_clsng_mtht) { this.shwrm_clsng_mtht = shwrm_clsng_mtht; } public Date getAddedDate() { return addedDate; } public void setAddedDate(Date addedDate) { this.addedDate = addedDate; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } @Id @Column(name = "username") private String username; } 

看起来这和我之前遇到的情况差不多, 这个post帮了我。

在绑定时自定义失败的错误消息。 查看此链接,获取有关在应用程序上下文中创buildMessageSource bean的更多详细信息,并创build一个messages.properties资源包:

根据NotEmpty的javadoc ,Integer不是一个有效的types来检查。 这是string和集合。 如果你只是想确定一个Integer有一些值, javax.validation.constraints.NotNull就是你所需要的。

public @interface NotEmpty

断言注释的string,集合,映射或数组不为空或空。