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

Websphere Java Discussion :

java.lang.NoSuchMethodError avec reflection


Sujet :

Websphere Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 27
    Points : 18
    Points
    18
    Par défaut java.lang.NoSuchMethodError avec reflection
    J'ai développé un WebService sous Tomcat utilisant de l'introspection, cela fonctionne impecc mais j'obtiens une erreur de type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Caused by: java.lang.NoSuchMethodError: org/aspectj/lang/reflect/MethodSignature.getMethod()Ljava/lang/reflect/Method;
    lorsque je déploie mon WS sur WAS 6.1 et je ne comprend pas du tout pourquoi...

    As tu eu des renseignements sur le fait que WAS ne prennent pas compte les .class générés par d'autres outils qu'IRAD?

    Je vous remercie de toute aide, je suis sensé livré demain matin...


    Bonne journée

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 75
    Points : 90
    Points
    90
    Par défaut
    IBM n'impose l'utilisation de RAD pour compiler les classes.

    J'ai eu l'occassion de travailler avec d'autres environnements et les applications fonctionnent très bien.

    Thibaud: Je me pencherai plutôt sur une compatibilité de librairie entre celles utilisés par l'application et celle fourni avec WebSphere.

    As-tu regardé cette piste ?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 27
    Points : 18
    Points
    18
    Par défaut
    Ok pour RAD

    J'ai commencé à regarder la piste des librairies mais je trouve très peu de renseignements concernant des problèmes d'introspection de classes compilées sous WebSphere.

    La seule réponse concordante que jai trouvé est celle de ®om...

    J'ai commenté la méthode qui utilisait l'introspection, déployé sous WebSphere et cela marche comme sur des roulettes. Je ne comprend vraiment pas pourquoi et cela risque d'être vraiment bloquant pour moi.

    Merci de ton aide

    Bonne journée

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Août 2008
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 75
    Points : 90
    Points
    90
    Par défaut
    Bonjour,

    Utilises-tu une librairie ASPECTJ qui est inclus dans ton application ?
    Si oui, quel est la version ?

    Peux-tu montrer que le code que tu mets en commentaire ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 27
    Points : 18
    Points
    18
    Par défaut
    Bonjour,

    Au départ je n'avais pas de librairies ASPECTJ inclus dans mon projet mais au vue de l'erreur que j'avais, je me suis dit que cela règlerai peut-être mon problème, j'ai donc ajouté: aspectjrt-1.6.4.jar, aspectjtools-1.5.4.jar.


    Le code mis en commentaire est le suivant:

    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
     private boolean isNotReadOnlyAnnotation(JoinPoint jp) {
            Method invoked = null;
           MethodSignature met = (MethodSignature) jp.getSignature();
     
            try {
                invoked = jp.getSourceLocation().getWithinType().getMethod(met.getMethod().getName(),
                        met.getMethod().getParameterTypes());
            } catch (NoSuchMethodException e) {
              e.printStackTrace();
             return false;
            }
     
            Transactional annot = invoked.getAnnotation(Transactional.class);
     
            return annot == null || !annot.readOnly();
    et l'erreur reçue est la suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Caused by: java.lang.NoSuchMethodError: org/aspectj/lang/reflect/MethodSignature.getMethod()Ljava/lang/reflect/Method;
    Merci de ton aide

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 27
    Points : 18
    Points
    18
    Par défaut
    Problème résolu, il fallait rajouté aspectj-rt.jar et aspectj-weaver.jar mais dans le répertoire lib de WAS.

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

Discussions similaires

  1. java.lang.UnsatisfiedLinkError avec JNI
    Par sonjaja dans le forum Entrée/Sortie
    Réponses: 10
    Dernier message: 07/06/2017, 12h12
  2. Réponses: 7
    Dernier message: 06/11/2014, 21h49
  3. [System.load] Exception java.lang.UnsatisfiedLinkError avec unknown file type
    Par jemini_fr dans le forum API standards et tierces
    Réponses: 6
    Dernier message: 05/02/2007, 14h52
  4. java.lang.NoSuchMethodError erreur java
    Par mistify dans le forum Langage
    Réponses: 7
    Dernier message: 24/10/2006, 17h06
  5. java.lang.NoSuchMethodError: main
    Par lunart dans le forum Eclipse Java
    Réponses: 7
    Dernier message: 21/04/2006, 17h12

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