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 :

Quelques soucis pour accéder à mes EJB


Sujet :

Java EE

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2005
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 12
    Points : 11
    Points
    11
    Par défaut Quelques soucis pour accéder à mes EJB
    Bonjour,

    J'ai quelques soucis pour accéder à mes EJB3.

    Voici un peu un "état des lieux".

    J'ai créé ma base de donnée, et j'ai créé mes Entity depuis la base de donnée.

    Ensuite j'ai créé mes SessionBeans depuis les entity.

    J'utilise netbeans/glassfish/mysql.

    Si je vais dans l'interface d'administration de glassfish, je vois mes EJB bien déployés.
    (Attention, vu que j'ai testé plusieurs fois, le nom de l'applic ne correspond plus)


    Le problème est quand j'essaie d'y accéder:

    j'obtiens toujours des "javax.naming.NameNotFoundException".

    j'ai mis mes session beans dans un package:

    gateways.inputs.ejbcontainer

    Ici j'ai tous les *Facade, *FacadeLocal, *FacadeRemote.


    J'essaie d'y accéder comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        public Collection getCountries(){
            try {
                InitialContext ctx = new InitialContext();
                gateways.inputs.ejbcontainer.CountryFacade ctry = (gateways.inputs.ejbcontainer.CountryFacade) ctx.lookup("TrustBN-ejb/CountryFacade");
                return ctry.findAll();
            } catch (NamingException ex) {
                Logger.getLogger(listCountry.class.getName()).log(Level.SEVERE, null, ex);
                return null;
            }
        }
    Et je passe toujours dans l'exception.

    J'ai essayé différente possibilité de lookup, Seulement CountryFacade, avec /remote, avec un /local, en typecastant en countryfacaderemote ou countryfacadelocal, sans le le TrustBN-ejb,...

    Suis vraiment à court d'idée et je suis vraiment bloqué depuis pas mal de temps.

    J'ai vraiment besoin de trouver une solution à cela et je suis prêt à tout.
    Je vous remercie

  2. #2
    Membre régulier
    Inscrit en
    Mai 2006
    Messages
    210
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 210
    Points : 103
    Points
    103
    Par défaut
    pourquoi n'utilises tu pas les annotations pour acceder à ton ejb

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    @EJB()CountryFacade country;
    en imaginant que CountryFacade est ton interface
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @Local 
    public interface CountryFacade

  3. #3
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    Pour voir le nom jndi de tes EJB utilisé par Glassfish, il faut aller dans la console d'administration : Application Server puis JNDI je sais plus quoi.

    Tu devrais voir un truc qui ressemble à : MonEJB#MonEJB.

    Si tu accèdes à tes EJB au sein d'un serveur d'application, comme proposé par mickael.guilbert, il est possible d'injecter tes EJB via l'annotation @EJB.

  4. #4
    Membre régulier
    Inscrit en
    Mai 2006
    Messages
    210
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 210
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par millie Voir le message
    Si tu accèdes à tes EJB au sein d'un serveur d'application, comme proposé par mickael.guilbert, il est possible d'injecter tes EJB via l'annotation @EJB.
    C'est vrai qu'il fallait préciser, on a trop tendance à regarder les choses avec ses yoeux

Discussions similaires

  1. Quelque soucis pour cloner un site.
    Par Auden dans le forum Débuter
    Réponses: 0
    Dernier message: 25/10/2008, 12h38
  2. quelques problèmes pour exécuter mes codes
    Par djimangue dans le forum Langage
    Réponses: 6
    Dernier message: 18/12/2007, 02h00
  3. Soucis pour récuperer mes variables ...
    Par R'SKaP dans le forum Langage
    Réponses: 13
    Dernier message: 23/01/2006, 21h04
  4. [EJB]JBoss et JNDI, problème pour trouver mes EJB
    Par shingo dans le forum Wildfly/JBoss
    Réponses: 3
    Dernier message: 31/12/2005, 16h14
  5. [EJB] Chemin d'accès à fournir pour accéder à un EJB ?
    Par nana1 dans le forum Java EE
    Réponses: 3
    Dernier message: 02/06/2005, 13h00

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