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 :

InvocationTargetException method invoke


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Mai 2006
    Messages
    330
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 330
    Par défaut InvocationTargetException method invoke
    J'ai un bout de code qui appelle une methode par un invoke sur la classe java.lang.Reflect.Method.

    Dans la méthode appelée je lance (volontairement) une exception. A ma grande surprise je ne reçois pas cette exception dans le code appelant mais une exception InvocationTargetException dont la cause est mon exception. Je suppose que c'est une forme de convention liée à l'appel par "invoke". Vous confirmez ?

    J'ai en effet besoin de savoir si toute exception levée par la méthode appelée, reviendra systématiquement sous forme encapsulée dans InvocationTargetException ou s'il existe des circonstances où ça ne sera pas le cas.

    Merci

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par tnarol Voir le message
    Dans la méthode appelée je lance (volontairement) une exception. A ma grande surprise je ne reçois pas cette exception dans le code appelant mais une exception InvocationTargetException dont la cause est mon exception. Je suppose que c'est une forme de convention liée à l'appel par "invoke". Vous confirmez ?
    Oui.
    invoke() ne peut pas déclarer qu'elle throws toutes les exceptions du monde, alors à la place elle throws InvocationTargetException, et fourre dedans l'exception qui est arrivée.

    Citation Envoyé par tnarol Voir le message
    J'ai en effet besoin de savoir si toute exception levée par la méthode appelée, reviendra systématiquement sous forme encapsulée dans InvocationTargetException ou s'il existe des circonstances où ça ne sera pas le cas.
    Ce sera toujours encapsulé. Mais attention, on ne parle que les exceptions qui sont lancées pendant la méthode appelée. S'il y a un problème avec l'utilisation de invoke() lui-même (conversion de type, droit d'accès, etc,) là ce sera une autre exception. Elles sont toutes décrites dans la JavaDoc de invoke(), qui d'ailleurs répond aux questions que tu poses là.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre éclairé
    Inscrit en
    Mai 2006
    Messages
    330
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 330
    Par défaut
    Merci c'est très clair.

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

Discussions similaires

  1. Method invoked sur HandleExternalEventActivity
    Par BATCHOS CON TEQUILA dans le forum Windows Workflow Foundation
    Réponses: 1
    Dernier message: 16/02/2009, 11h45
  2. Réponses: 1
    Dernier message: 21/05/2008, 19h18
  3. Method invoke avec List<generics>
    Par youx21 dans le forum Langage
    Réponses: 4
    Dernier message: 06/12/2007, 09h11
  4. Réponses: 6
    Dernier message: 08/03/2007, 14h55
  5. [Reflexivite]exception ArrayIndexOutOfBoundsException methode invoke
    Par caro_a dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 12/07/2006, 11h35

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