`

使用Hibernate Validator中碰到的一些问题

 
阅读更多
最近,看了一下Hibernate Validator 4.x,为了练练手,于是想对一个以前练习的小项目把Hibernate Validator使用进去,开始碰到一些问题,一直没解决。今天空下来再尝试了一下,顺便总结一下。

原工程用Hibernate 3.3.1 + Spring 3.02 + Spring MVC实现。

使用Hibernate Validator版本:4.2
http://hibernate.org/subprojects/validator.html

这里采用注解方式

第一步,改注解
如:
@Entity
@Table(name = "tour_calendar")
public class TourCalendar extends AbstractEntity {
	@NotNull
	@Size(max = 10)
	private String title;

         // 省略其他属性和setter、getter

}

使用hibernate.hbm2ddl.auto的create功能,发现产生title字段属性为默认属性,并没有not null修饰。
开始猜想是不是数据库问题,换了MySQL和Oracle都是这个问题。
仔细看了一下Hibernate Validator的文档,没发现什么有用的信息。
所有的过程都没有报错,而这些Annotation又没有起作用,于是猜想是不是hibernate版本问题。
下了最新版本的hibernate 3.6 final。解压后发现新版本的hibernate3.jar与3.3的区别:hibernate-annotation和hiberante-annotaion-common已经包含在其中。
删除了hibernate3.3的相关包,将3.6以及相关包放入。

运行出现第二个问题:
Caused by: java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z

原因:hibernate-jpa-2.0-api-1.0.0.Final和ejb3-persistence产生冲突。
解决:删除ejb3-persistence包

再次运行,Hibernate Validator正常工作。
分享到:
评论

相关推荐

    hibernate_validator 4 中文参考

    集成的过程中,Hibernate Validator提供了一些机制来解决集成中可能遇到的问题,比如验证提供者解析器(ValidationProviderResolver)的使用。此外,Hibernate Validator还提供了XML配置方式,使得开发者可以通过XML...

    后台验证hibernate-validator必须的jar包

    在`Hibernate Validator`运行过程中,如果遇到错误或需要输出调试信息,就会调用这个库进行日志打印。这样,开发者可以追踪验证过程中的问题,对错误进行定位和修复。版本3.3.2.Final意味着它拥有高效且成熟的日志...

    hibernate-validator-annotation-processor-4.3.1.final-sources.jar.zip

    在项目中使用Hibernate Validator通常需要添加依赖,并进行一些基本配置,例如设置默认消息模板、自定义全局验证行为等。了解源码有助于我们更灵活地配置和优化验证流程。 7. **错误处理与调试**: 当验证失败时...

    spirngmvc4适用的hibernate-validator后台验证的jar包,亲测可用

    描述中提到的"之前上传的包貌似不适配springmvc4"可能是因为开发者之前使用的Hibernate Validator版本与Spring MVC 4存在兼容性问题,导致验证功能无法正常工作。因此,提供一个与Spring MVC 4匹配的Hibernate ...

    springboot 2.3之后消失的hibernate-validator解决方法

    在之前的版本中,`spring-boot-starter-web`依赖包默认包含了`hibernate-validator`,但自2.3版本起,这个依赖被移除,使得在项目升级后可能会遇到验证功能失效的问题。本文将详细介绍如何解决这个问题。 首先,...

    ssh2 jQuery Validator验证重复添加

    "ssh2 jQuery Validator验证重复添加"这个主题可能涉及到在使用jQuery Validator时遇到的一个问题,即在同一个表单或多个表单中多次添加相同的验证规则,可能导致不必要的复杂性或者错误。这可能是因为开发者在编写...

    virgo中添加hibernate需要的库

    为了在Virgo中使用Hibernate,我们需要找到适合OSGi环境的Hibernate OSGi bundles。这些bundles通常包含了Hibernate的核心库,以及其依赖的JPA、JDBC和其他相关库的OSGi化版本。 以下是添加Hibernate到Virgo的基本...

    hibernate-src.zip

    《深入剖析Hibernate源码》 Hibernate,作为Java领域中的一款著名对象关系映射(ORM)框架,极大地简化了...同时,通过阅读源码,还可以帮助我们更好地定位和解决在使用Hibernate过程中遇到的问题,实现更高效的开发。

    如何从Hibernate官网下载

    在Java开发领域,Hibernate是一个非常重要的对象关系映射(ORM)框架,它简化了数据库操作,使得开发者可以更专注于业务逻辑而不是底层数据处理。...同时,关注社区论坛和文档,以解决在使用过程中遇到的问题。

    Struts2+Hibernate实现文件上传

    在实际操作中,文件上传可能会遇到一些常见的问题,例如文件大小限制、文件类型检查、防止重复文件名等。这些可以通过在Action类中添加额外的验证逻辑来解决。例如,可以使用Struts2的拦截器或者自定义Validator来...

    JAVA中通过Hibernate-Validation进行参数验证

    在开发JAVA服务器端代码时,我们会遇到对外部传来的参数合法性进行验证,而hibernate-validator提供了一些常用的参数校验注解,我们可以拿来使用。 首先,我们需要在Maven项目中引入hibernate-validator对应的jar...

    Hibernate 学习 入门

    Hibernate是这个领域的佼佼者,它开源、成熟且性能稳定,拥有丰富的参考文档,开发者社区活跃,遇到问题时可以迅速找到解决方案。 在软件架构中,通常会将系统分为数据层、持久层、业务逻辑层和表现层。Hibernate...

    SpringMVCHibernate集成及常见问题总结

    集成过程中可能遇到的问题包括: - **依赖冲突**:不同库之间的版本不兼容,需要仔细管理Maven或Gradle的依赖。 - **配置错误**:Spring或Hibernate的配置文件可能存在错误,如bean定义、数据库连接参数等。 - **...

    hibernate_formToModelConvertor

    在IT行业中,Hibernate是一个非常流行的Java对象关系映射(ORM)框架,它简化了数据库操作,使得开发者可以使用面向对象的方式来处理数据。"hibernate_formToModelConvertor"这个主题可能涉及到的是如何将表单数据...

    resin 支持spring mvc 5.0以上版本 支持Hibernate validation

    要在Resin中启用Hibernate Validation,需要在应用中包含Hibernate Validator库,并在相应的配置文件(如web.xml或Spring配置文件)中配置验证规则。 在Resin-4.0.61压缩包中,包含了Resin服务器的所有必要组件和...

    Spring Hibernate整合

    Spring 和 Hibernate 是两个非常重要的 Java 开发框架,它们在企业级应用开发中...如果你遇到任何问题,可以查阅 Spring 和 Hibernate 的官方文档,或者参考相关的技术博客和教程,以便更好地理解和应用这两个框架。

    TongWeb上应用移植常见问题.doc

    首先,针对JPA引起的问题,TongWeb自带了JPA实现,但这与很多应用中使用的Hibernate JPA版本可能存在冲突。解决方法如下: 1. 如果应用使用了自己的JPA实现,可以在启动TongWeb时添加参数 `-DenableJPA=false`,...

    JSR303jar包

    在给定的压缩包文件中,包含了一些关键的库文件,它们是JSR303实现的核心组成部分: 1. `hibernate-validator-4.3.0.Final.jar`:这是Hibernate Validator的实现,它是JSR303/JSR349规范的一个参考实现。它提供了...

    struts2+spring2.5+hibernate3.2所需的包

    - Hibernate的库,如`hibernate3.jar`,包含ORM的主要实现,以及`hibernate-entitymanager.jar`(如果支持JPA)和`hibernate-validator.jar`(用于Bean Validation)。 - 数据库驱动,如`mysql-connector-java.jar`...

Global site tag (gtag.js) - Google Analytics