日期:2014-05-20  浏览次数:20838 次

SSH整合的一个问题
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V
Caused by: java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)V

myeclipse报的这个错,不知道什么情况,接下来把3个配置文件发下,大家帮忙看是不是哪错了.

------解决方案--------------------
<listener> 
<listener-class>org.springframework.web.context.ContextLoaderListener </listener-class> 
</listener> 
换成SERVLET试试.有时LISTENER不好用.
------解决方案--------------------
我把我最近查到的结果给你看吧:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)

java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit
 
 还是用上面的方法,找到了包asm.jar里的这个类,见鬼了,这回跟上次不一样的是,这个包在工程的lib目录里也有呀,为何会“not found”呢?后来又在asm-2.2.3.jar里也有这个类,经过N次的测试,感觉是这两个包有冲突,google之后,发现是Spring2.0的AOP与Hibernate3.1/3.2之间的冲突。
 
由于在使用Spring的AOP编程时,会用到以下这几个jar文件:
 
asm-2.2.3.jar
asm-commons-2.2.3.jar
asm-util-2.2.3.jar
 
 与Spring相对应的,Hibernate使用如下的jar文件:
 
asm.jar
asm-attrs.jar
 
由于其中的asm-2.2.3.jar与asm.jar存在类上的冲突,就会出现如下的报错:java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitorjava.lang.NoClassDefFoundError: org/objectweb/asm/commons/EmptyVisitorjava.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit
 
解决办法是:
1.屏蔽掉类路径上的关于Hibernate的3个jar文件
asm.jar
asm-attrs.jar
cglib-2.1.3.jar

2.加入Spring中的以下4个jar文件

asm-2.2.2.jar
asm-commons-2.2.2.jar
asm-util-2.2.2.jar
cglib-nodep-2.1_3.jar

------解决方案--------------------
架包有问题
解决办法是: 
1.屏蔽掉类路径上的关于Hibernate的3个jar文件 
asm.jar 
asm-attrs.jar 
cglib-2.1.3.jar 

2.加入Spring中的以下4个jar文件 

asm-2.2.2.jar 
asm-commons-2.2.2.jar 
asm-util-2.2.2.jar 
cglib-nodep-2.1_3.jar 

这个是对的
------解决方案--------------------
这个问题我以前也接触过,开始的时候我也找不到问题的原因,后来我进了一个技术交

流群,这个群里的人挺多的,在里面可以沟通技术,你可以进去看一下.群号是:五九零

四九二六八。另外,这个群里可以接项目。