SSH整合异常

来源:互联网 发布:济宁大数据环保 编辑:程序博客网 时间:2024/06/05 00:58

 自己最近因为公司项目的需要,有重拾SSH  此次是以注解的形式进行开发的  因此整合后发现一些问题  特此在这里记录下来 方便日后查阅

SSH注解整合 异常        java.lang.NoSuchFieldError: INSTANCE

 

 Caused by: java.lang.NoSuchFieldError: INSTANCE

at org.hibernate.type.BasicTypeRegistry.<init>(BasicTypeRegistry.java:94)

at org.hibernate.type.TypeResolver.<init>(TypeResolver.java:59)

at org.hibernate.cfg.Configuration.<init>(Configuration.java:250)

at org.hibernate.cfg.Configuration.<init>(Configuration.java:302)

at org.hibernate.cfg.AnnotationConfiguration.<init>(AnnotationConfiguration.java:108)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)

at java.lang.reflect.Constructor.newInstance(Constructor.java:513)

at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:148)

... 42 more

 

困扰了好久的问题终于解决了,出现这种情况一般是有重复的jar包在里面。所以才导致了这个异常

具体的包 : hibernate-annotations.jar  多了这个jar包 因为在hibernate3.jar 中已经存在了  所以直接将他删掉即可

 

 

 

 

Caused by: java.lang.ClassCastException: org.hibernate.annotations.common.reflection.java.JavaReflectionManager cannot be cast to org.hibernate.annotations.common.reflection.MetadataProviderInjector

at org.hibernate.cfg.Configuration.createReflectionManager(Configuration.java:2989)

at org.hibernate.cfg.Configuration.createReflectionManager(Configuration.java:2984)

at org.hibernate.cfg.Configuration.reset(Configuration.java:307)

at org.hibernate.cfg.Configuration.<init>(Configuration.java:298)

at org.hibernate.cfg.Configuration.<init>(Configuration.java:302)

at org.hibernate.cfg.AnnotationConfiguration.<init>(AnnotationConfiguration.java:75)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)

at java.lang.reflect.Constructor.newInstance(Constructor.java:513)

at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:148)

... 42 more

 

错误原因  使用了  hibernate-commons-annotations.jar  将其删掉即可 

You have to use hibernate-commons-annotations version 3.2.0.Final, because 3.3.0.ga is an invalid version as stated in the README.TXT in the maven repository folder:

"Version '3.3.0.ga' was a mistake during the release process, please disregard.

There is not such version 3.3.0.ga."

Version 3.2.0.Final includes the missing MetadataProvider

 

 

解释  解释链接地址

 

 

 

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transactionManager' defined in class path resource [com/zhin/ycb/spring/application-spring.xml]: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Property 'sessionFactory' is required

 

原因就是transactionManager要注入 sessionFactory 即可 

 

 

 

Caused by: java.lang.NoSuchFieldError: INSTANCE

at org.hibernate.type.BasicTypeRegistry.<init>(BasicTypeRegistry.java:94)

at org.hibernate.type.TypeResolver.<init>(TypeResolver.java:59)

at org.hibernate.cfg.Configuration.<init>(Configuration.java:250)

at org.hibernate.cfg.Configuration.<init>(Configuration.java:302)

at org.hibernate.cfg.AnnotationConfiguration.<init>(AnnotationConfiguration.java:108)

at org.hibernate.ejb.Ejb3Configuration.<clinit>(Ejb3Configuration.java:107)

at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:130)

at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:288)

at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:310)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1541)

at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1479)

... 36 more

 

原因是jar包冲突了  需要将不必要的jar包删掉  冲突的jar  hibernate-annotations.jarhibernate-commons-annotations.jar 因为我用的是hibernate3.6版本的所以呢  在hibernate3.jar中已经包含了这两个jar  因此只要将它们删除即可



大家都知道框架的异常都是从最底下开始看起,

异常信息:Caused by:org.hibernate.AnnotationException: mappedBy reference an unknown target entity property: cn.com.agricom.entity.SysPhotograph.sysBeforemovevillage in cn.com.agricom.entity.SysBeforemovevillage.sysPhotographs

上面是错误的关键部分

  错误原因:在one-to-many注解配置: @OneToMany (mappedBy = "sysBeforemovevillage"),mappedBy指向的是要关联的属性,而不是要关联的类,
        如果这样配置,hibernate则会找cn.com.agricom.entity.SysPhotograph类下面的sysBeforemovevillage属性。但实际上没有这个属性,就会报上面的异常
   方法:指定到实际关联的属性:即:@OneToMany (mappedBy = "sysBeforemovevillage")  这个异常时因为我只想做单向的关联所以才造成的,我删除了Many的一方注解 而忘记了删除One一方的外键属性所以造成这个异常


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 脚磕到了肿了怎么办 脚碰到了肿了怎么办 腿被车子撞肿了怎么办 肛门长了小疙瘩怎么办 屁眼长了个包怎么办 屁股上长了个肉球怎么办 过敏了全身都痒怎么办 吃了螃蟹全身痒怎么办 全身痒眼睛肿了怎么办 感染了hpv病毒怎么办16 高危型hpv阳性52怎么办 腰椎盘突出腿疼怎么办 腰椎间盘突出压迫神经怎么办 疣体长到宫颈了怎么办 龟头的系带断了怎么办 龟头与系带断了怎么办 舌头下长肉芽痛怎么办 脑组织供血不足怎么办 尖锐湿锐喝酒了怎么办 快递寄错地方了怎么办 16岁掉头发严重怎么办 18岁老是掉头发怎么办 17岁头发老是掉怎么办 19岁老是掉头发怎么办 植发的了毛囊炎怎么办 长得好看不上镜怎么办 鬓角的头发总翘怎么办 戴贞洁锁硬了怎么办 欠很多钱还不了怎么办 理财平台跑路了怎么办 联通4g信号不好怎么办 老年人耳朵嗡嗡响什么原因怎么办 单侧耳朵嗡嗡响怎么办 蚊子钻到耳朵里怎么办 小飞虫进耳朵里怎么办 耳朵里飞进去虫怎么办 耳朵里进虫子了怎么办 耳朵进虫子了怎么办啊 耳朵里进了蚊子怎么办 有虫子爬进耳朵怎么办 虫子死在耳朵里怎么办