MyEclipse 6.0.0的问题
MyEclipse 6.0.0的问题
关于MyEclipse 6.0.0 GA开发SSH应用的%%%% Error Creating SessionFactory %%%% http://www.wendangwang.comng.SecurityException: class "http://www.wendangwang.commons.collections.SequencedHashMap"'异常的解决方案
2008-1-11
昨天有读者提到用 MyEclipse 6.0.0 开发 Struts + Hibernate应用的时候,单独测试Hibernate的类没有问题,但是当Web层和Struts整合后,就抛出如下异常: %%%% Error Creating SessionFactory %%%% http://www.wendangwang.comng.SecurityException: class
"http://www.wendangwang.commons.collections.SequencedHashMap"'s signer information does not match signer information of other classes in the same package
因为我用的6.0.1,所以怎么也没出现这个异常。后来Google搜到很多人遇到了这个故障,猜测是commons-collections.jar的问题,可能和MyEclipse 6.0.0自带的包有问题导致。例如下面的是一个解决方案:http://www.wendangwang.com/blog/131955
解决方案:
1)下载 MyEclipse 6.0.1 来开发;
2)或者去http://www.wendangwang.com/collections/ 下载一个新的包,把原来的
commons-collections-xxx.jar给删了,然后用新的包替换。注意:一定要到应用的发布目录去做这个工作,而且替换后不能重新发布应用,然后立即重启Tomcat再测试。 如果再报下面的错误:
ERROR [org.hibernate.proxy.BasicLazyInitializer] - CGLIB Enhancement failed: http://www.wendangwang.comer http://www.wendangwang.comng.NoSuchMethodError:
org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V
at net.sf.cglib.core.ClassEmitter.begin_class(ClassEmitter.java:77)
则是:
Spring 和 Hibernate 共用的一些 jar 文件发生了版本冲突, 删除
WEB-INF/lib/asm-2.2.3.jar即可