Hibernate Annotation O/RM 映射异常
来源:互联网 发布:人工智能技术的先进性 编辑:程序博客网 时间:2024/06/10 00:41
Hibernate Annotation O/RM 映射异常
两个异常:java.lang.NoClassDefFoundError: javax/persistence/Cacheable和java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z
之所以将他们放在一起说是有原因的,同时此文也算是对该问题的一个总结。
先说第一个异常 java.lang.NoClassDefFoundError: javax/persistence/Cacheable.
其实原因也很明显,说没有找到该类的引用,因为Cacheable是Java Persistence API 2.0中被规范的一个接口。
解决办法:添加hibernate-jpa-2.0-api-1.0.0.Final.jar。
在说第二个异常java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z.
此问题出现在使用注解进行一对多的O/R映射,大部分网友的说法是因为javaee.jar中的部分类与hibernate-jpa-2.0-api-1.0.0.Final.jar存在版本冲突导致的,解决的办法是从Build Path中移除对javaEE的引用。
但事实上不止于此,因为笔者在不存在javaee.jar的普通Java Project中也出现了这个问题。而且如果在web项目中移除javaEE也是不易接受的。
解决办法:移除hibernate-distribution-3.5+的引用,改用较稳定的版本,例如:hibernate- distribution-3.3.2.GA-dist。并且在诸如3.3.2等版本下使用Annotation进行O/R映射是不需要引入jpa2.0 的API。因此,自然不会出现第一个异常。
总结:具体冲突原因尚不清楚,疑是Bug。所以使用一个较为折中的办法,既不会影响web程序,又不影响Annotation的使用。
- Hibernate Annotation O/RM 映射异常
- Hibernate(annotation映射)
- hibernate--annotation关系映射
- hibernate注解annotation映射
- Hibernate Annotation组件映射
- hibernate 关系映射 annotation 版
- hibernate annotation处理映射关系
- Hibernate Annotation几种关联映射
- Hibernate Annotation几种关联映射
- Hibernate Annotation几种关联映射
- Hibernate -- 注解(Annotation)关系映射
- hibernate Annotation(注解映射)测试一
- hibernate annotation (注解映射) 一对多
- Hibernate -- 注解(Annotation)关系映射
- Hibernate -- 注解(Annotation)关系映射
- Hibernate -- 注解(Annotation)关系映射
- Hibernate Annotation注解和关系映射
- Hibernate -- 注解(Annotation)关系映射
- 华东理工某ACMer总结
- 考研2——放下包袱,轻松上阵
- Oracle Net Configuration Assistant配置
- zoj 2722 Head-to-Head Match (睡前一水~)
- JAR文件包及jar命令详解
- Hibernate Annotation O/RM 映射异常
- [转]文件过滤系统驱动开发Filemon学习笔记与filemon.exe
- 处理Rails3中输出中文乱码
- DELPHI MASKEDIT使用方法
- oracle中导入dmp数据库文件
- JNI 返回结构体参数【转】
- HDU2896 AC自动机多串匹配多串
- 一屋不扫何以扫天下
- 如何防御DDos/DoS攻击