Je travaille sur une application utilisant Hibernate 5.0 pour me connecter à une base de données MySql. Cela fonctionne bien sur mon environnement en utilisant Tomcat V8.0.hibernate ne fonctionne pas sur Jboss
Toutefois, lorsque je déploie l'application, le serveur qui utilise JBoss 6.4.0.GA a échoué lors de l'initialisation de HibernateUtil.
J'ai essayé d'ajouter le client Jboss-common en tant que dépendance. Maintenant, j'ai un journal approprié, mais je ne peux toujours pas accéder à la base de données. Savez-vous si j'ai besoin de dépendances spécifiques pour le faire fonctionner?
J'ai le classique:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.0.0.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.0-api</artifactId>
<version>1.0.1.Final</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.36</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.36</version>
</dependency>
Et mon erreur actuelle sur JBoss:
JBWEB000309: type JBWEB000066: Exception report
JBWEB000068: message java.lang.NoClassDefFoundError: Could not initialize class com.myproject.hibernate.HibernateUtil
JBWEB000069: description JBWEB000145: The server encountered an internal error that prevented it from fulfilling this request.
JBWEB000070: exception
javax.servlet.ServletException: java.lang.NoClassDefFoundError: Could not initialize class com.myproject.hibernate.HibernateUtil com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:420) com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:538) com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:716) javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
JBWEB000071: root cause
java.lang.NoClassDefFoundError: Could not initialize class com.myproject.hibernate.HibernateUtil
et ma classe HibernateUtil:
public class HibernateUtil {
private static final SessionFactory sessionFactory = buildSessionFactory();
private static SessionFactory buildSessionFactory() {
try {
// Use hibernate.cfg.xml to get a SessionFactory
return new Configuration().configure().buildSessionFactory();
} catch (Throwable ex) {
System.err.println("SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
public static void shutdown() {
getSessionFactory().close();
}
}
Merci,
Avez-vous mis à jour Hibernate sur JBoss? – John
Je n'ai aucun autre accès à JBoss sauf pour télécharger mon fichier war. Et je n'ai aucune idée de quoi tu parles? N'utilise-t-il pas la bibliothèque de mon application? défini dans le fichier pom.xml? – Andrew
Non, il s'agit en partie d'un serveur JavaEE, avec sa propre implémentation JPA qui est une version particulière d'Hibernate. C'est pourquoi vous pouvez étendre la dépendance Hibernate comme prévu – John