Bonjour,
je developpe une apllication BDD en java et j'ai besoin du Mapping de mon modele objet vers le modele relationnel;
a cet effet j'utilise hibernate pour la premiere fois;
voilà les etapes que j'ai suivi
1//j'ai crée une Class de
test que j'ai appellé Personne.java
public class Personne {
private int idPersonne;
private String nom,pernom;
public Personne() {
}
public Personne(int idPersonne, String nom, String pernom) {
this.idPersonne = idPersonne;
this.nom = nom;
this.pernom = pernom;
}
public int getIdPersonne() {
return idPersonne;
}
public String getNom() {
return nom;
}
public String getPernom() {
return pernom;
}
public void setIdPersonne(int idPersonne) {
this.idPersonne = idPersonne;
}
public void setNom(String nom) {
this.nom = nom;
}
public void setPernom(String pernom) {
this.pernom = pernom;
}
}
2// j'ai crée la class de correspondance entre mon Objet Personne et ma table personne
que j'ai appellé :MPersonne.hbm.xml
public class Personne {
private int idPersonne;
private String nom,pernom;
public Personne() {
}
public Personne(int idPersonne, String nom, String pernom) {
this.idPersonne = idPersonne;
this.nom = nom;
this.pernom = pernom;
}
public int getIdPersonne() {
return idPersonne;
}
public String getNom() {
return nom;
}
public String getPernom() {
return pernom;
}
public void setIdPersonne(int idPersonne) {
this.idPersonne = idPersonne;
}
public void setNom(String nom) {
this.nom = nom;
}
public void setPernom(String pernom) {
this.pernom = pernom;
}
}
3// j'ai crée le fichier de configuration pour Hibernate ou j'aiconfiguré ma connexion bdd
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 2.0//EN"
"
http://hibernate.org/dtd/hibernate-configuration-2.0.dtd ">
<hibernate-configuration>
<session-factory>
<property name="hibernate.dialect">net.sf.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.
mysql .jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://
localhost /myBDDTest<;/property>
<property name="hibernate.connection.username">
root </property>
<property name="hibernate.connection.password"></property>
<property name="dialect">net.sf.hibernate.dialect.MySQLDialect</property>
<property name="show_sql">true</property>
<mapping resource="MPersonne.hbm.xml"/> </session-factory>
</hibernate-configuration>
4//
j'ai ecrit un programme test comme suit :
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
public class TestHibernate1 {
public static void main(String args[]) throws Exception {
Configuration config = new Configuration();
config.addClass(Personne.class);
SessionFactory sessionFactory = config.buildSessionFactory();
Session session = sessionFactory.openSession();
Transaction tx = null;
try {
tx = session.beginTransaction();
Personne personne = new Personne(123,"belkhir", "sotra");
session.save(personne);
session.flush() ;
tx.commit();
} catch (Exception e) {
if (tx != null) {
tx.rollback();
}
throw e;
} finally {
session.close();
}
sessionFactory.close();
}
}
//***********************************
mais à l'excecution j'ai eu cette erreur:
etat
HTTP 500
ype Rapport d'exception
message
description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.
exception
org.apache.jasper.JasperException: java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor cannot be cast to org.apache.AnnotationProcessor
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:156)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
cause mère
java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor cannot be cast to org.apache.AnnotationProcessor
org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:146)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:329)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/6.0.20.
Merci de m'eclaircir pour avancer car je suis un peu en retard;
Afficher la suite
17 juil. 2012 à 15:37