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

Java EE Discussion :

Injection et JAX-WS


Sujet :

Java EE

  1. #1
    Membre confirmé Avatar de Lordsephiroth
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    199
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2006
    Messages : 199
    Points : 494
    Points
    494
    Par défaut Injection et JAX-WS
    Bonjour à tous,

    J'ai une petite question concernant l'injection dans des composants Web Service. Je développe une petite application de test pour bien me familiariser avec Java EE et je rencontre un comportement un peu spécial.

    Mon architecture de projets est simple et classique : un projet pour construire le WAR, un projet pour construire l'EJB-JAR, un projet pour packager le EAR "poc.ear". Je développe avec JBoss 5.1.0, EJB3 et persistence JPA.

    Dans mon EJB-JAR, j'ai un Stateless EJB nommé "Shop" qui a une interface @Remote. Cette interface présente une fonction findCds() qui va chercher dans la base de données les différents CD présents.

    J'ai un servlet dans mon projet Web, CdManager, qui permet de lister, ajouter et supprimer des CD's. J'utilise cet appel pour accéder à l'EJB :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @EJB(mappedName = "poc/Shop/remote")
    private static ShopRemote manager;
    Cette injection fonctionne parfaitement dans mon servlet.

    J'ai également une classe CdListService qui devrait permettre de lister les CD's de la base sous forme de Web Service. La configuration JAX-WS fonctionne et je peux accéder à travers SOAP à la fonction getCdList() de l'objet.

    Par contre, l'injection EJB que j'ai mise ci-dessus ne fonctionne pas. Quoi que je test (avec ou sans "mappedName"), j'ai toujours un NullPointerException lorsque je fait appel à une fonction de l'EJB.

    J'ai pourtant tester que le nom est bien correct, ces lignes fonctionne parfaitement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    context = new InitialContext();
    manager = (ShopRemote) context.lookup("poc/Shop/remote");
    Quelqu'un pourrait-il m'expliquer pourquoi l'injection à l'aide de l'annotation ne fonctionne pas dans le Web Service mais fonctionne dans le servlet, sachant que l'obtention de l'EJB par JNDI (sous le même nom) est réalisée correctement...

    Merci d'avance !

  2. #2
    Nouveau Candidat au Club
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    J'ai exactement le même problème avec exactement la même architecture(EJB-jar + war dans ear), sauf que le serveur JBOSS est en version 7... Malheureusement ça ne change pas le problème, l'accès a l'EJB injecté dans le web service renvoi toujours une nullPointerException... J'ai même essayé de l'injecté via les annotation CDI (@inject de JEE6) mais la même erreur m'est renvoyée...
    Alors que par le JNDI global, cela fonctionne!!!! Imcompréhensible...

    As tu trouvé une solution depuis, et si oui, laquelle s'il te plait?

    Merci

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/11/2014, 12h06
  2. Réponses: 0
    Dernier message: 10/03/2011, 09h50
  3. [xsd->Shema || Jaxe]Document valide?
    Par Zenol dans le forum Valider
    Réponses: 2
    Dernier message: 04/12/2005, 16h10
  4. [VB.NET] fonction qui injecte du html dans une zone précise
    Par denisvignes dans le forum ASP.NET
    Réponses: 5
    Dernier message: 27/10/2005, 09h33
  5. Réponses: 10
    Dernier message: 25/10/2005, 16h09

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