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

Développement Web en Java Discussion :

Un message incompréhensible


Sujet :

Développement Web en Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Septembre 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2014
    Messages : 15
    Par défaut Un message incompréhensible
    Bonjour à tous, je developpe une application en Java ee et j'utilise glassfish comme serveur et mysql comme sgbd, j'ai utilisé aussi eclipseLink pour faire le mapping de la bd. J'ai un souci majeure qui m'empèche d'évolué, lorsque j'essai d'insérer les données dans la bd on m'afficher toujours l'erreur suivante javax.ejb.EJBException: Transaction aborted.

    Voici le code de mon backing-bean
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    package com.eHealth.backingBeans;
     
    import entities.Centrehosp;
    import javax.faces.application.FacesMessage;
    import javax.faces.context.FacesContext;
    import javax.faces.bean.ManagedBean;
    import javax.faces.bean.RequestScoped;
    import java.sql.Connection;
    import javax.ejb.EJB;
    import sessions.CentrehospFacadeLocal;
    /**
     *
     * @author William SIKATI
     */
    @ManagedBean
    @RequestScoped
    public class SaveCentre {
        @EJB
        private CentrehospFacadeLocal centrehospFacade;
     
        private Centrehosp centreHosp = new Centrehosp();
     
        public SaveCentre(){
            centreHosp = new Centrehosp();
        }
     
         // Méthode d'action appelée lors du clic sur le bouton du formulaire d'enregistrement
        public void save(){
            Connection conn = ConnexionPool.getConnection();
            centrehospFacade.create(centreHosp);
            FacesMessage message = new FacesMessage ("Succès de la création ! ");
            FacesContext.getCurrentInstance().addMessage(null, message);
        }
     
        public Centrehosp getCentreHosp(){
            return centreHosp;
        }
    }
    Et celui de mon pool de connection

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    package com.eHealth.backingBeans;
     
     
    import java.sql.*;
    import java.sql.Connection;
    import java.sql.DriverManager;
    /**
     *
     * @author William SIKATI
     */
    public class ConnexionPool {
        private static Connection connection;
     
    	static{
    		try{
    			Class.forName("com.mysql.jdbc.Driver"); 
                            String url="jdbc:mysql://localhost:3306/ehealth?zeroDateTimeBehavior=convertToNull";
                            String user="root";
                            String password="mdp";
                            Connection conn = DriverManager.getConnection(url,user,password);
                            System.out.print("creation d'une connexion");
    		}catch (Exception ex){
    			ex.printStackTrace();
    		}
    	}
     
    	public static Connection getConnection() {
    		return connection;
    	}
     
    	public static void setConnection(Connection connection) {
    		ConnexionPool.connection = connection;
    	}
    }
    S'il vous plait j'ai besoin de votre aide pour continuer mon projet.

  2. #2
    Membre éclairé Avatar de nchal
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 512
    Par défaut
    En fouillant sur le net (enfin pas vraiment, c'est le premier lien ), il est dit que ça peut venir d'une relation bidirectionnel qui n'est pas correctement renseignée. Vérifie du coté de tes entités, il doit y avoir des liens entre les attributs (au pite, tu fous des CascadeType.ALL un peu partout ^^)

  3. #3
    Membre très actif Avatar de Sennad
    Homme Profil pro
    Développeur Java
    Inscrit en
    Août 2014
    Messages
    180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2014
    Messages : 180
    Par défaut
    Salut !

    Regarde par ICI il y a peut-être la solution de ton problème

  4. #4
    Membre averti
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Septembre 2014
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2014
    Messages : 15
    Par défaut
    Merci pour vos réponses mais en fait j'ai déroulé le message d'erreur exacte
    Caused by: java.lang.IllegalArgumentException: Object: entities.Centrehosp[ idcentre=null ] is not a known entity type.
    at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectForPersist(UnitOfWorkImpl.java:4222)


    A partir de cette erreur je me dis que quand j'essai d'insérer les données, l'identifiant primaire ne s'autoincremente pas; je prends par exemple le cas de la classe entities.Centrehosp. donc l'id est tjr = null

  5. #5
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Absolument pas, le message dit que tu essaie de persister une entité de type entities.Centrehosp, mais que jamais tu n'a dit à eclipse link qu'il devait gérer de telle entités. Donc il ne sait absolument pas quoi en faire.

    Il faut revoir ta configuration eclipse link, t'as du oublier de lui dire quelque part que cette entité faisait partie de sa liste des entités à gérer

  6. #6
    Membre confirmé Avatar de samaury
    Homme Profil pro
    Chevalier Jedi
    Inscrit en
    Mars 2008
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Chevalier Jedi
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2008
    Messages : 114
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    Absolument pas, le message dit que tu essaie de persister une entité de type entities.Centrehosp, mais que jamais tu n'a dit à eclipse link qu'il devait gérer de telle entités. Donc il ne sait absolument pas quoi en faire.

    Il faut revoir ta configuration eclipse link, t'as du oublier de lui dire quelque part que cette entité faisait partie de sa liste des entités à gérer
    Hello
    Vérifie aussi que ta classe "Centrehosp" est bien déclarée avec le @Entity

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

Discussions similaires

  1. [ovh] message incompréhensible
    Par sami_c dans le forum OVH
    Réponses: 4
    Dernier message: 29/01/2007, 16h15
  2. [WARNING] message incompréhensible.
    Par storm_2000 dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 24/11/2006, 17h54
  3. messages incompréhensibles
    Par devalender dans le forum Outils
    Réponses: 2
    Dernier message: 06/07/2004, 16h53

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