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

Wildfly/JBoss Java Discussion :

[EJB] [Annotation] import javax.ejb.EJB; @EJB | JBoss | Librairie


Sujet :

Wildfly/JBoss Java

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 55
    Points : 43
    Points
    43
    Par défaut [EJB] [Annotation] import javax.ejb.EJB; @EJB | JBoss | Librairie
    Hello !

    Voila j'ai un JSF Managed Bean et je souhaite utiliser un EJB Session via son interface locale.
    voici le code :

    UserManagedBean.java
    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
    package portail.JSFManagedBean;
    
    import java.util.ArrayList;
    import java.util.Collection;
    import java.util.Date;
    import portail.entity.MonUser;
    import portail.session.UserManagerLocal;
    import org.apache.log4j.Logger;
    //import javax.annotation.EJB; // NetBeans trouve ce package
    import javax.ejb.EJB; // Mais NetBeans ne trouve pas celui ci
    
    public class UserManagedBean {
        
        @EJB
        UserManagerLocal userManagerLocal;
    
    ...
    
         public String getHello(){
             if(userManagerLocal == null){
                 return "UserManagerLocal NULL :(";
             }else{
                 return "UserManagerLocal PAS NULL";
             }
          }
    ...
    ...
    }
    Ce qui marche :
    - Appel de l'EJBSession via un simple Client
    - Les pages JSP arrivent à utiliser les méthodes du JSF Managed Bean ( UserManagedBean.java)

    Mon Probleme :
    - Impossible de récupérer mon EJB Session sans faire de lookup(), c'est à dire en utilisant uniquement l'annotation @EJB()
    [Probleme au niveau des IMPORT ?]


    Remarque :
    - userManagerLocal reste à NULL.

    Mes questions :
    1°) javax.annotation.EJB; Est-il identique à javax.ejb.EJB; ? (je pense que non)
    2°) Si OUI, pourquoi
    userManagerLocal n'est-il pas valorisé ?
    2°) Si NON, où puis-je trouver la librairie pour pouvoir import javax.ejb.EJB; ? (j'ai chercher partout (Java et JBoss) mais ...

    Merci pour votre aide !

    Pour finir : Si vous avez besoin de plus de code dites le moi

  2. #2
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 55
    Points : 43
    Points
    43
    Par défaut
    Bon ...

    J'ai trouvé javax.ejb.EJB; grâce à j2ee.jar (version Java EE 5 Beta)

    Probleme ...

    Mon userManagerLocal n'est toujours pas valorisé

    Pourtant quand je fait ceci dans mon JSF Managed Bean ça marche... :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    try{
                Context ctx = new InitialContext();
                if(ctx == null){
                    System.out.println("arf !! ctx null !!");
                }
                UserManagerLocal userManagerLocal = (UserManagerLocal) ctx.lookup(UserManagerBean.LocalJNDIName);
                return userManagerLocal.affiche("toto");
            }catch(Exception e){
                System.out.println("Exception lookup ...");
            }
    Aurais-je oublier une librairie ou ...?

    Une idée ?

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 55
    Points : 43
    Points
    43
    Par défaut
    pas d'idée ?

  4. #4
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 55
    Points : 43
    Points
    43
    Par défaut
    Faut-il necessairement un setter ?

    j'ai essayer ceci mais sans succes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
        @EJB
        private UserManagerLocal userManagerLocal;
     
        public void setUserManagerLocal(UserManagerLocal userManagerLocal){
            this.userManagerLocal = userManagerLocal;
        }
    personne n'a eu ce probleme ?

    Merci pour l'aide

  5. #5
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 55
    Points : 43
    Points
    43

  6. #6
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 55
    Points : 43
    Points
    43
    Par défaut @EJB n'est pas ENCORE supporté dans les WARs
    Bon et bien voici pour l'instant la reponse :

    http://www.jboss.org/index.html?modu...wtopic&t=79600

    En gros l'annotation @EJB n'est pas ENCORE supporté dans les WARs (version actuelle de JBoss : 4.0.4.CR2).

    Il faut donc utilisé le bon vieux lookup()

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

Discussions similaires

  1. Erreur "The import javax.ejb cannot be resolved"
    Par info.pascal dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 14/10/2013, 09h39
  2. @EJB annotation et lazy relation
    Par Sugus dans le forum Java EE
    Réponses: 1
    Dernier message: 14/09/2010, 13h33
  3. [EJB3 Entity] Convertion d'annotations EJB3 dans un fichier ejb-jar.xml
    Par kafana dans le forum Java EE
    Réponses: 1
    Dernier message: 27/02/2009, 11h03
  4. [IMPORT] javax.ejb.* non trouvé
    Par mejri dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 04/04/2006, 11h20
  5. [EJB Stateless] javax.naming.NameNotFoundException: ejb not bound
    Par slymira dans le forum Java EE
    Réponses: 18
    Dernier message: 04/07/2005, 15h30

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