Я использую hibernate для своей базы данных в моем проекте.Это работало отлично, но теперь я получил это исключение.
org.apache.jasper.JasperException: javax.servlet.ServletException: java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(Z)V
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:531)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:332)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
cause mère
javax.servlet.ServletException: java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(Z)V
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:901)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:830)
org.apache.jsp.JSP.session.login_jsp._jspService(login_jsp.java:321)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:68)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:332)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
cause mère
java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(Z)V
net.sf.cglib.core.DebuggingClassWriter.<init>(DebuggingClassWriter.java:47)
net.sf.cglib.core.DefaultGeneratorStrategy.getClassWriter(DefaultGeneratorStrategy.java:30)
net.sf.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:24)
net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:215)
net.sf.cglib.core.KeyFactory$Generator.create(KeyFactory.java:145)
net.sf.cglib.core.KeyFactory.create(KeyFactory.java:117)
net.sf.cglib.core.KeyFactory.create(KeyFactory.java:108)
net.sf.cglib.core.KeyFactory.create(KeyFactory.java:104)
net.sf.hibernate.impl.SessionFactoryImpl.<clinit>(SessionFactoryImpl.java:236)
net.sf.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:791)
Base.HibernateUtil.<clinit>(HibernateUtil.java:15)
org.apache.jsp.JSP.session.login_jsp._jspService(login_jsp.java:150)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:68)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:389)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:332)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
, и это код моего HibernateUtil:
package Base;
import net.sf.hibernate.*;
import net.sf.hibernate.cfg.*;
public class HibernateUtil {
private static final SessionFactory sessionFactory;
static {
try {
// Crée la SessionFactory
sessionFactory =new Configuration().configure().buildSessionFactory();
//new Configuration().configure().buildSessionFactory();
} catch (HibernateException ex) {
throw new RuntimeException("Problème de configuration : "
+ ex.getMessage(), ex);
}
}
public static final ThreadLocal session = new ThreadLocal();
public static Session currentSession()
throws HibernateException {
Session s = (Session) session.get();
// Ouvre une nouvelle Session, si ce Thread n'en a aucune
if (s == null) {
s = sessionFactory.openSession();
session.set(s);
}
return s;
}
public static void closeSession()
throws HibernateException {
Session s = (Session) session.get();
session.set(null);
if (s != null)
s.close();
}
}
, и это моя конфигурация hibernate в файле .xml:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration
PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">
<hibernate-configuration>
<session-factory >
<!-- local connection properties -->
<property name="hibernate.connection.url">jdbc:mysql://localhost/ebook</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password"></property>
<!-- property name="hibernate.connection.pool_size"></property -->
<!-- dialect for MySQL -->
<property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">true</property>
<property name="current_session_context_class">thread</property>
<mapping resource="Base/Favorieensei.hbm" />
<mapping resource="Base/Ajouter.hbm" />
<mapping resource="Base/Favorie.hbm" />
<mapping resource="Base/Enseignant.hbm" />
<mapping resource="Base/Administrateur.hbm" />
<mapping resource="Base/Ajouterensei.hbm" />
<mapping resource="Base/Etudinat.hbm" />
<mapping resource="Base/Livre1.hbm" />
</session-factory>
</hibernate-configuration>
Что вызывает это исключение и как его остановить?