您的位置:首页技术文章
文章详情页

错误:java.lang.NoSuchMethodError:org.objectweb.asm.ClassWriter(I)V

【字号: 日期:2024-05-15 18:01:22浏览:63作者:猪猪
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解决错误:java.lang.NoSuchMethodError:org.objectweb.asm.ClassWriter(I)V?

Hibernate所需的ASM版本( )与Spring所需的版本不兼容。但是,实际上,我想知道为什么在类路径上有asm-2.2.3.jar(ASM捆绑在spring.jar和spring-core.jar中,以避免AFAIK这样的问题)。参见HHH-2222。

解决方法

我正在开发一个小的Spring应用程序。我必须将学生信息的详细信息存储在数据库中。我已经开发了一个SimpleFormController。我已经使用过NetBeans+ Hibernate映射+ Spring。部署项目时,发生以下错误。

我的spring-config-db-applicationContext.xml显示如下:

<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN''http://www.springframework.org/dtd/spring-beans.dtd'><beans><!-- Hibernate session factory --> <bean class='org.springframework.jdbc.datasource.DriverManagerDataSource'> <constructor-arg index='0'><value>${driverClassName}</value> </constructor-arg> <constructor-arg index='1'><value>${url}</value> </constructor-arg> <constructor-arg index='2'><value>${username}</value> </constructor-arg> <constructor-arg index='3'><value>${password}</value> </constructor-arg> </bean> <bean class='org.springframework.orm.hibernate3.LocalSessionFactoryBean'> <property name='dataSource'><ref bean='dataSource'/> </property> <!-- <property name='configLocation'><value>WEB-INF/classes/hibernate.cfg.xml</value> </property> --> <property name='mappingResources' ><list> <value>hibernate.cfg.xml</value></list> </property> <!-- <property name='configurationClass'><value>org.hibernate.cfg.AnnotationConfiguration</value> </property> --> <property name='hibernateProperties'><props> <prop key='hibernate.dialect'>${dialect}</prop> <prop key='hibernate.show_sql'>true</prop> <!--<prop key='hibernate.hbm2ddl.auto'>create</prop>--></props> </property> </bean> <bean class='org.springframework.orm.hibernate3.HibernateTemplate'> <property name='sessionFactory'><ref bean='sessionFactory'/> </property> </bean> <bean class='org.springframework.orm.hibernate3.HibernateTransactionManager'> <property name='sessionFactory'><ref bean='sessionFactory'/> </property> </bean></beans>

发生以下错误:

ERROR (org.springframework.web.context.ContextLoader:213) - Context initialization failedorg.springframework.beans.factory.BeanCreationException: Error creating bean with name ’sessionFactory’ defined in URL [jndi:/localhost/Student/WEB-INF/classes/config/spring-db-applicationContext.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(I)Vat org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1395)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:512)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:289)at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:286)at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:188)at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:526)at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:730)at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:387)at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:270)at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342)at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:627)at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:511)at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1231)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at java.lang.reflect.Method.invoke(Method.java:597)at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297)at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)at org.apache.catalina.manager.ManagerServlet.check(ManagerServlet.java:1471)at org.apache.catalina.manager.ManagerServlet.deploy(ManagerServlet.java:824)at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:350)at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:196)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)at java.lang.Thread.run(Thread.java:619)Caused by: java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(I)Vat net.sf.cglib.core.DebuggingClassWriter.<init>(DebuggingClassWriter.java:47)at net.sf.cglib.core.DefaultGeneratorStrategy.getClassWriter(DefaultGeneratorStrategy.java:30)at net.sf.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:24)at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:216)at net.sf.cglib.core.KeyFactory$Generator.create(KeyFactory.java:144)at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:116)at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:108)at net.sf.cglib.core.KeyFactory.create(KeyFactory.java:104)at net.sf.cglib.proxy.Enhancer.<clinit>(Enhancer.java:69)at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.getProxyFactory(CGLIBLazyInitializer.java:117)at org.hibernate.proxy.pojo.cglib.CGLIBProxyFactory.postInstantiate(CGLIBProxyFactory.java:43)at org.hibernate.tuple.entity.PojoEntityTuplizer.buildProxyFactory(PojoEntityTuplizer.java:162)at org.hibernate.tuple.entity.AbstractEntityTuplizer.<init>(AbstractEntityTuplizer.java:135)at org.hibernate.tuple.entity.PojoEntityTuplizer.<init>(PojoEntityTuplizer.java:55)at org.hibernate.tuple.entity.EntityEntityModeToTuplizerMapping.<init>(EntityEntityModeToTuplizerMapping.java:56)at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:302)at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:434)at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:108)at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:61)at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:238)at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1304)at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:813)at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:731)at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1454)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1392)... 48 moreMar 12,2010 5:32:28 PM org.apache.catalina.core.StandardContext startSEVERE: Error listenerStart

标签: java
相关文章: