Hibernate :Erreur org.hibernate.MappingException: Unknown entity

Hibernate :Erreur org.hibernate.MappingException: Unknown entity - Java - Programmation

Marsh Posté le 22-07-2010 à 18:20:43    

Hello je suis en train de me prendre la tête avec Hibernate qui me fait une erreur "org.hibernate.MappingException: Unknown entity", ce qui m'empêche d'écrire en DB.
 
Voici les différents fichiers sources:
 
Mon objet Cours (Cours.java)
 

Code :
  1. package be.promosoc.models;
  2. import java.io.Serializable;
  3. public class Cours implements Serializable{
  4. private static final long serialVersionUID = 1L;
  5. private long id_cours;
  6. private String section;
  7. private String unite_formation;
  8. private String teacher;
  9. public Cours() {
  10. }
  11. public long getId_cours() {
  12.  return id_cours;
  13. }
  14. public void setId_cours(long idCours) {
  15.  id_cours = idCours;
  16. }
  17. public String getSection() {
  18.  return section;
  19. }
  20. public void setSection(String section) {
  21.  this.section = section;
  22. }
  23. public String getUnite_formation() {
  24.  return unite_formation;
  25. }
  26. public void setUnite_formation(String uniteFormation) {
  27.  unite_formation = uniteFormation;
  28. }
  29. public String getTeacher() {
  30.  return teacher;
  31. }
  32. public void setTeacher(String teacher) {
  33.  this.teacher = teacher;
  34. }
  35. public static long getSerialversionuid() {
  36.  return serialVersionUID;
  37. }
  38. }


 
 
Le fichier de Mapping Hibernate(Cours.hbm.xml):
 

Code :
  1. <?xml version="1.0"?>
  2. <!DOCTYPE hibernate-mapping PUBLIC
  3. "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
  4. "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
  5. <hibernate-mapping package="be.promosoc.models">
  6.   <class name="Cours" table="Cours">
  7.    <id name="id_cours" type="long" column="ID_COURS">
  8.     <generator class="native"></generator>
  9.    </id>
  10.    <!--  SECTION -->
  11.    <property name="section" column="SECTION" type="string" length="50"/>
  12.    <!--  UNITE DE FORMATION -->
  13.    <property name="unite_formation" column="UNITE_FORMATION" type="string" length="50"/>
  14.    <!--  TEACHER -->
  15.    <property name="teacher" column="TEACHER" type="string" length="30"/>
  16.   </class>
  17. </hibernate-mapping>


 
Mon DAO (CoursDAO.java)
 

Code :
  1. package be.promosoc.dao;
  2. import org.hibernate.HibernateException;
  3. import org.hibernate.classic.Session;
  4. import org.hibernate.criterion.Restrictions;
  5. import org.hibernate.Criteria;
  6. import be.promosoc.models.Cours;
  7. public class CoursDAO {
  8. public static void insert_cours(Cours cours){
  9.  try {
  10.   Session session = SessionManagement.getSessionFactory().getCurrentSession();
  11.   session.beginTransaction();
  12.   session.save(cours);
  13.   session.getTransaction().commit();
  14.   SessionManagement.getSessionFactory().close();
  15.  }catch(HibernateException ex){
  16.   System.err.println("Error when inserting cours "+ ex);
  17.  }}
  18. }


 
Et donc losrque j'essaye d'encoder un record via ce code :
 

Code :
  1. import be.promosoc.dao.CoursDAO;
  2. import be.promosoc.models.Cours;
  3. public class DbLoader {
  4. public static void main(String[] args) {
  5. Cours crs1 = new Cours();
  6.  crs1.setSection("Info" );
  7.  crs1.setTeacher("prof1" );
  8.  crs1.setUnite_formation("Java" );
  9.  CoursDAO.insert_cours(crs1);
  10.  }
  11. }


 
J'obtient l'erreur suivante:
 
Error when inserting cours org.hibernate.MappingException: Unknown entity: be.promosoc.models.Cours
 
 
Pourriez vous m'expliquer ce qui ne tourne pas rond car la je comprend pas ce que je fais mal.
 
D'avance Merci


Message édité par seba1492 le 22-07-2010 à 18:34:59
Reply

Marsh Posté le 22-07-2010 à 18:20:43   

Reply

Marsh Posté le 22-07-2010 à 19:08:15    

Bon il semblerais que j'ai simplement oublié de mettre à jour le fichier hibernate.cfg.xml avec
 

Code :
  1. <mapping resource="be/promosoc/mapping/Cours.hbm.xml" />


 
oups  :sweat:
 
Maintenant petite question dont je ne trouve pas la réponse:
Est-ce normal que dans la sortie console j'ai ceci :
 
Hibernate: insert into Cours (SECTION, UNITE_FORMATION, TEACHER, ID_COURS) values (?, ?, ?, ?)

Message cité 1 fois
Message édité par seba1492 le 22-07-2010 à 19:11:52
Reply

Marsh Posté le 22-07-2010 à 23:49:38    

seba1492 a écrit :


 
Maintenant petite question dont je ne trouve pas la réponse:
Est-ce normal que dans la sortie console j'ai ceci :
 
Hibernate: insert into Cours (SECTION, UNITE_FORMATION, TEACHER, ID_COURS) values (?, ?, ?, ?)


 
 
oui

Reply

Marsh Posté le 23-07-2010 à 09:53:04    

il faut utiliser un Tostring dans ton cours.java pour voir s'afficher correctement ta requete  

Reply

Marsh Posté le 23-07-2010 à 13:24:07    

Ha ok.
 
Merci bien pour vos réponses :-)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed