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

Langage Java Discussion :

Exception, problème pour la faire remonter.


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    570
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 570
    Par défaut Exception, problème pour la faire remonter.
    Bonjour, voici déjà le code que j'ai, dépouiller de tout ce qui est innuitle

    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    public void btnAjoutModaliteActionPerformed(int ligne) 
    {
    	(....)	
    	try
    	{
    	        question.addModalite(m);
    		(...)
    	}
    	catch(DuplicationException e)
    	{
    		e.printStackTrace();
    		ACTION
            }
     
     
    }
     
     
     
     
     
     
    public void addModalite(Modalite modalite) throws DuplicationException
    {
     
    	(....)
     
    	try
    	{
    		(....)
    		con.insertModalite(modalite);	
    	}
    	catch(DuplicationException e)
    	{
                   System.out.println("ERREUR niveau 1");
    		e.printStackTrace();
    		throw e;
    	}
     
    }
     
     
     
     
    public void insertModalite(Modalite modalite) throws DuplicationException
    {
    	(....)
     
     
    	if(resultat.next())throw new DuplicationException();
     
     
    	(....)
    }


    Mon souci est l'exception ne remonte pas.
    Ca rentre dans le if, l'exception est levé, mais c'est tout.
    Comment se fait il ?
    JE veux dire ACTION ou l'affichage de ERREUR niveau 1 ne se font pas.
    Dans la console j'ai juste d'afficher la pile d'exception.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Février 2007
    Messages
    572
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Février 2007
    Messages : 572
    Par défaut
    Ca devrait marcher. Peut etre que le code est un peu trop depouillé ...

  3. #3
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    Ben si tu veux afficher le message tu peux faire par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println("DuplicatedException caught : "+e.getMessage());
    si tu veux que l'erreur soit remontée au niveau supérieur (dans la méthode appelante) il faut la lancer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    try{
        ...
    } catch (DuplicatedException e) {
    System.out.println("DuplicatedException caught : "+e.getMessage());
    e.printStackTrace();
    throw e:
    }
    comme tu l'as fait dans addModalite. Enfin je comprends pas trop quel est le problème. Es tu sûr que l'exception est bien une DuplicatedException ?

  4. #4
    Membre éclairé Avatar de julien-blaise
    Homme Profil pro
    Développeur Java et C#
    Inscrit en
    Mai 2005
    Messages
    458
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java et C#

    Informations forums :
    Inscription : Mai 2005
    Messages : 458
    Par défaut
    Dans le doute tu met après ton catch un autre catch :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    catch(Exception e){
    System.err.println("Error :"+e.getMessages);
    throw e;
    }

  5. #5
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    570
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 570
    Par défaut
    L'exception est bien une DuplicationException oui. A noter qu'elle ne remonte pas d'un cran. D'ailleur je me demande si elle est vaiment relevé, et si elle ne plante pas ...

    En fait, le log des messages d'erreur donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    DuplicationException: Duplication des données
    	at noyau.ConnexionBD.insertModalite(ConnexionBD.java:312)
    	at noyau.Question.addModalite(Question.java:90)
    	at ihm.FsaisieQuestions.btnAjoutModaliteActionPerformed(FsaisieQuestions.java:697)
    	...
    Les 3 lignes de codes correspondant aux erreur sont celle que j'ai copié au dessus.

  6. #6
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Tu es sûr que ce que tu regardes contient les deux flux standard et erreur ? Essaye un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.err.println("ERREUR niveau 1");
    à la place de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println("ERREUR niveau 1");
    pour être sûr ...

  7. #7
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    570
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 570
    Par défaut
    Ca ne donne rien non plus.
    A noter que je teste de faire ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if(resultat.next())
    				{
    					DuplicationException e;
    					e= new DuplicationException();
    					throw e;
    				}
    Et les log d'erreur cible la ligne "e= new DuplicationException();".
    Je ne sais pas si c'est normal que cela cibe à ce niveau ...

    Dans le doute voici le code de ma classe d'erreur :



    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
     
    public class DuplicationException extends Exception
    {
    	public DuplicationException()
    	{
     
    	}
     
    	public DuplicationException(String error)
    	{
           super(error);
     
    	}
     
    	public DuplicationException(String error, Throwable cause)
    	{
    		super(error, cause);
    	}
     
    	public DuplicationException(Throwable cause)
    	{
    		super(cause);
    	}
    }

    edit : a noter que j'ai essayé avec une exception "Exception", cela donne la même chose ^^

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

Discussions similaires

  1. problème pour faire un insert avec une image
    Par vbcasimir dans le forum Modules
    Réponses: 3
    Dernier message: 02/11/2005, 09h21
  2. Réponses: 5
    Dernier message: 24/09/2005, 20h31
  3. problème pour faire des blocs
    Par tinkye_winkye dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 04/01/2005, 14h13
  4. [SQL] problème pour faire ma requete
    Par seb.briet dans le forum Langage SQL
    Réponses: 4
    Dernier message: 29/12/2004, 16h51
  5. [FLASH MX2004] Problème pour faire un bouton play
    Par melanie075 dans le forum Flash
    Réponses: 13
    Dernier message: 16/12/2004, 22h55

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