org.hibernate.PropertyValueException: not-null property references a null or transient value: com.yc.pro4.po.Street._com.yc.pro4.po.District.streetsBackref

--d.getStreets().add(s1 );

--d.getStreets().add(s2);

 

java.lang.NullPointerException

没有实例化 hashset

private Set<Street> streets=new HashSet<Street>();      

 

 

没有设置一对多的集合

org.hibernate.MappingException:Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister

        

 

java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z

 

解决办法汇总:java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z

今天用了OneToOne注解,结果报异常java.lang.NoSuchMethodError: javax.persistence.OneToOne.orphanRemoval()Z

网上有几种解决的方法,现在汇总如下

(1)

如果是使用MyEclipse创建JavaEE5.0的Web项目,解决办法:删除对Java EE 5 Libraries的使用。

问题原因:javaee.jar中的部分类与hibernate-jpa-2.0-api-1.0.0.Final.jar存在版本冲突。

参考文章:http://hi.baidu.com/siasmen/blog/item/7253e954e3abdb55d0090607.html

(2)

如果使用了ejb的jar包,删除引用,

问题原因:与hibernate-jpa-2.0-api-1.0.0.Final.jar冲突

(3)

如果是用junit测试,junit4自带的jpa包与hibernate的jpa包冲突