IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Frameworks Web Java Discussion :

Problème de suppression Hibernate+Struts


Sujet :

Frameworks Web Java

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2011
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Septembre 2011
    Messages : 22
    Points : 14
    Points
    14
    Par défaut Problème de suppression Hibernate+Struts
    bonjour a tous;

    voila, je developpe une application j2ee sous eclipse galileo(Struts1.2+hibernate3+BD Mysql), vraiment je me trouve incapable de trouver la solution ca fait presque une semaine de recherche, malgré que j'ai realiser une application pareil dans le temps et ca fonctionne,!!!!

    le problème, tout simplement, c'est que je veux supprimer un user de la table gestionutilisateur deja listé dans un .jsp (cete operation de list fonctionne), en utilisant criteria.les codes sont ci dessous:

    *****************************
    code: administration.jsp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    </tr>
    <logic:iterate id="gestionutilisateur" name="GestionUtilisateurListForm" property="listUtilisateur"type="com.MaintenanceCERTE.dao.GestionUtilisateu">
    <tr>
    <td><bean:write name="gestionutilisateur" property="idgestionutilisateur" /></td>
    <td><bean:write name="gestionutilisateur" property="nomprenom" /></td>
    <td><bean:write name="gestionutilisateur" property="grade" /></td>
    <td><bean:write name="gestionutilisateur" property="laboratoire" /></td>
    <td><bean:write name="gestionutilisateur" property="telephone" /></td>
    <td><bean:write name="gestionutilisateur" property="email" /></td>
    <td><ahref="GestionUtilisateurSupprimer.do?operation=delete&id=<%=gestionutilisateur.getIdgestionutilisateur() %>">Supprimer</a></td>
    </tr>
    </logic:iterate>
    ***************************
    code beans GestionUtilisateur.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    public class GestionUtilisateur {
     
        private       Long idgestionutilisateur;  // dans les classes action et   //form j'ai utiliser un int 
        private    String nomprenom;
        private    String grade;
        private    String laboratoire;
        private    String telephone;
        private    String email;
    public GestionUtilisateur(Long idgestionutilisateur, String nomprenom,String grade,String laboratoire,String telephone,String email)
    {    
        this.setIdgestionutilisateur(idgestionutilisateur);
        this.nomprenom=nomprenom;
        this.grade=grade;
        this.laboratoire=laboratoire;
        this.telephone=telephone;
        this.email=email;
    ................. les getters et les setters .....................}
    ***************************

    code GestionUtilisateurAction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    ……
    public ActionForward execute………….{
     
    GestionUtilisateurSupprimerForm gestion= (GestionUtilisateurSupprimerForm) form;
    int id= gestion.getIdgestionutilisateur();
    String operation= request.getParameter("operation");
    if("delete".equals(operation))
    {    SimulateDataBase simulateDB = new SimulateDataBase();
        simulateDB.supprimer(id);
    }
    return mapping.findForward("supprimerUser");
    }}
    *******************************

    code GestionUtilisateur.hbm.xml:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <hibernate-mapping>
    <class name="A.B.C.GestionUtilisateur" table="gestionutilisateur">
    <id name="idgestionutilisateur" type="java.lang.Long" column="idgestionutilisateur"> <generator class="assigned" /></id>
     
    <property name="nomprenom" type="java.lang.String" column="nomprenom" />
    <property name="grade" type="java.lang.String" column="grade"/>
    <property name="laboratoire" type="java.lang.String" column="laboratoire" />
    <property name="telephone" type="java.lang.String" column="telephone"/>
    <property name="email" type="java.lang.String" column="email" />
    </class>
    </hibernate-mapping>
    -----------------------------------------------
    code Dao, fonction supprimer de classe SimulateDataBase:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    public void supprimer(int idgestionutilisateur) 
    {
    SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
    Session session= sessionFactory.openSession();
    Transaction transaction=null;
    transaction=(Transaction) session.beginTransaction();
    try
    {
    Criteria crit=session.createCriteria(GestionUtilisateur.class);
    GestionUtilisateur gestionutilisateur= (GestionUtilisateur) session.get(GestionUtilisateur.class,Long.valueOf(idgestionutilisateur));
    session.delete(gestionutilisateur);
    transaction.commit();
    }
    catch (HibernateException e){
    transaction.rollback();
    e.printStackTrace();
    } finally{
    session.close();
     
    }}
    **********************
    ERREUUUUUUUUUUUUUUUUUUR qui me bloque, c'est que la suppression se fait seulement pour un objet ayant un id=0 alors que les autres ne suppriment pas ??????
    java.lang.IllegalArgumentException: attempt to create delete event with null entity
    at org.hibernate.event.DeleteEvent.<init>(DeleteEvent.java:24)
    at org.hibernate.impl.SessionImpl.delete(SessionImpl.java:739)
    atA.B.C.SimulateDataBase.supprimer(SimulateDataBase.java:194)
    atA.B.action.GestionUtilisateurSupprimerAction.execute(GestionUtilisateurSupprimerAction.java:31)
    ************************

    SVP les amis vos aides, merci d'avance
    cordialement

  2. #2
    Membre à l'essai
    Inscrit en
    Septembre 2011
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Septembre 2011
    Messages : 22
    Points : 14
    Points
    14
    Par défaut
    aucun repense !!!!!!!!!!!!!!!!!!!!

  3. #3
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    T'as qu'à prendre ton programme en debug et regarder ce qui se passe à cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    GestionUtilisateur gestionutilisateur= (GestionUtilisateur)  session.get(GestionUtilisateur.class,Long.valueOf(idgestionutilisateur));
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre à l'essai
    Inscrit en
    Septembre 2011
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Septembre 2011
    Messages : 22
    Points : 14
    Points
    14
    Par défaut
    bonjour OButterlin,
    suite aux logs, j'ai vu que le paramètre idgestionutilisateur de la methode supprimer(int idgestionutilisateur), ne récupère pas ce qui est demandé par administration.jsp, il est toujours a zero, !! je crois c'est la le problème !!!, j'ai revérifier le fichier de mapping, le form, ...., mais toujours la meme chose,!

    donc si un objet ayant id=0 existe dans la base alors il va être supprime méme n'est pas demandé, c'est a dire si je clique sur supprimer lie a un objet ayant id=2 celui ayant id=0 se supprime !!! (voir administration.jsp), si non , l'erreur ci dessus apparait !!!!!!!!

  5. #5
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Peux-tu montrer le code de GestionUtilisateurSupprimerForm ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre à l'essai
    Inscrit en
    Septembre 2011
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Septembre 2011
    Messages : 22
    Points : 14
    Points
    14
    Par défaut
    voila;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public class GestionUtilisateurSupprimerForm extends ActionForm {
     
        private int idgestionutilisateur;
     
        public int getIdgestionutilisateur() {
            return idgestionutilisateur;
                                                         }
        public void setIdgestionutilisateur(int idgestionutilisateur) {
            this.idgestionutilisateur = idgestionutilisateur;
        }

  7. #7
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Dans ta page, tu as mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GestionUtilisateurSupprimer.do?operation=delete&id=<%=gestionutilisateur.getIdgestionutilisateur() %>
    Hors, dans ton formulaire, c'est "idgestionutilisateur" que tu attends...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre à l'essai
    Inscrit en
    Septembre 2011
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Septembre 2011
    Messages : 22
    Points : 14
    Points
    14
    Par défaut
    OButterlin

    un treeeeeeeeeeeess grand merci, bravo et mille bravo pour vous et pour ce forum c'est exactement ce id qui ma coincé dés le début de la semaine,
    merci beaucoup OButterlin .

  9. #9
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    de rien... bonne continuation
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème DWR 3 + Spring + Struts 2 + Hibernate 3
    Par maili20 dans le forum Autres
    Réponses: 2
    Dernier message: 15/05/2009, 17h28
  2. [Hibernate] Problème de suppression
    Par EXXKA dans le forum Hibernate
    Réponses: 1
    Dernier message: 23/03/2009, 21h30
  3. Hibernate, Struts problème avec une action
    Par bulma546 dans le forum Hibernate
    Réponses: 0
    Dernier message: 11/03/2009, 17h48
  4. Probléme d'utilisation de Struts et Hibernate ensemble.
    Par kenza_sana_2 dans le forum Struts 1
    Réponses: 17
    Dernier message: 11/06/2007, 12h07
  5. [Data] [Hibernate] Problème de suppression
    Par iftolotfi dans le forum Spring
    Réponses: 10
    Dernier message: 16/12/2006, 12h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo