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

JPA Java Discussion :

[EJB3 - JPA - Websphere] javax.ejb.EJBException


Sujet :

JPA Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 19
    Par défaut [EJB3 - JPA - Websphere] javax.ejb.EJBException
    Bonjour,

    Je rencontre un problème qui monopolise mon temps plus que de raison, j'essaie d'accéder à une base DB2 au travers d'une application web utilisant les EJB3 et JPA et à ma grande surprise le module EJB n'accède pas correctement à la partie JPA et m'insulte de la manière suivante :
    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
     
    javax.ejb.EJBException: The MonObjetEjb/em reference of type javax.persistence.EntityManager for the MonObjetEjb component in the projet-ejb.jar module of the appli-EAR application cannot be resolved.
     
        com.ibm.wsspi.injectionengine.InjectionBinding.getInjectionObject(InjectionBinding.java:681)
        com.ibm.wsspi.injectionengine.InjectionTargetField.inject(InjectionTargetField.java:245)
        com.ibm.ws.injectionengine.InjectionEngineImpl.inject(InjectionEngineImpl.java:620)
        com.ibm.ejs.container.StatelessBeanO.initialize(StatelessBeanO.java:316)
        com.ibm.ejs.container.CMStatelessBeanOFactory.create(CMStatelessBeanOFactory.java:45)
        com.ibm.ejs.container.EJSHome.createBeanO(EJSHome.java:1030)
        com.ibm.ejs.container.EJSHome.createBeanO(EJSHome.java:1140)
        com.ibm.ejs.container.activator.UncachedActivationStrategy.atActivate(UncachedActivationStrategy.java:84)
        com.ibm.ejs.container.activator.Activator.activateBean(Activator.java:599)
        com.ibm.ejs.container.EJSContainer.preInvokeActivate(EJSContainer.java:3964)
        com.ibm.ejs.container.EJSContainer.EjbPreInvoke(EJSContainer.java:3349)
        est à l'origine ma méthode appelant l'EJB...
    La déclaration de em mon EntityManager est fait comme suit, dans l'ejb MonObjetEjb :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @PersistenceContext(type = PersistenceContextType.TRANSACTION, unitName = ProjetPerstistenceContext.UNIT_NAME)
        private EntityManager           em;
    Avec ProjetPersitenceContext une interface contenant un objet static de type String nommé UNIT_NAME et ayant pour valeur "projet-business-jpa".

    Mon fichier persistence.xml se trouvant dans le module JPA est sensiblement le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?xml version="1.0" encoding="UTF-8"?>
    <persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
        <persistence-unit name="projet-business-jpa">
            <jta-data-source>jdbc/projet-connection</jta-data-source>
            <class>class1</class>
    [...]
            <class>classn</class>
        </persistence-unit>
    </persistence>
    Ma data source jdbc/projet-connection est définie et configurée sur mon serveur websphère, testée sous la console d'administration websphère elle répond correctement. Je suis même allé jusqu'à tester l'accès à la base en utilisant directement le module JPA qui fonctionne, le problème vient visiblement du fait qu'a l'exécution le module EJB n'a pas connaissance de la partie JPA. Un dernier élément à l'exécution, lors de l'appel d'un EJB, la console websphère indique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    [16/03/10 14:18:04:046 CET] 00000047 JPAApplInfo   E   CWWJP0029E: CWWJP0029E: Le serveur ne parvient pas à trouver l'unité de persistance projet-business-jpa dans le module module-ejb.jar et l'application appli-EAR.
    [16/03/10 14:18:04:046 CET] 00000047 InjectionBind E   CWNEN0035E: Impossible de résoudre la référence MonObjetEjb/em de type javax.persistence.EntityManager pour le composant MonObjetEjb dans le module module-ejb.jar de l'application appli-EAR.
    [16/03/10 14:18:04:312 CET] 00000047 FfdcProvider  I com.ibm.ws.ffdc.impl.FfdcProvider logIncident FFDC1003I: Incident FFDC émis sur server1_4c7b4c7b_10.03.16_14.18.04.0463847371690004128951.txt com.ibm.ejs.container.StatelessBeanO.<init> 282
    [16/03/10 14:18:04:562 CET] 00000047 FfdcProvider  I com.ibm.ws.ffdc.impl.FfdcProvider logIncident FFDC1003I: Incident FFDC émis sur server1_4c7b4c7b_10.03.16_14.18.04.3284655491951234321447.txt com.ibm.ejs.container.EJSHome.createBeanO 1023
    [16/03/10 14:18:04:562 CET] 00000047 BusinessExcep E   CNTR0019E: L'EJB a émis une exception inattendue (non déclarée) lors de l'appel de la méthode "ma méthode applant l'EJB". Données de l'exception :javax.ejb.EJBException: The MonObjetEjb/em reference of type javax.persistence.EntityManager for the MonObjetEjb component in the module-ejb.jar module of the appli-EAR application cannot be resolved.
    Je désespère de trouver une solution à mon problème et visiblement google n'est pas mon ami sur ce coup. Une âme charitable aurait-elle un élément de piste ?

    Merci d'avance.

  2. #2
    Membre averti
    Inscrit en
    Septembre 2006
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 19
    Par défaut
    Solution trouvée, mon projet jpa avait comme dossier de sortie le répertoire src à la place du répertoire bin, conséquence de quoi le module EJB ne voyait pas les .class jpa ... encore une super erreur chronophage et energievore. En espérant que ça serve à quelqu'un.

  3. #3
    Invité de passage
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Mai 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 1
    Par défaut Plus de précisions sur la réponse svp!!
    Citation Envoyé par nicoho Voir le message
    Solution trouvée, mon projet jpa avait comme dossier de sortie le répertoire src à la place du répertoire bin, conséquence de quoi le module EJB ne voyait pas les .class jpa ... encore une super erreur chronophage et energievore. En espérant que ça serve à quelqu'un.
    Bonjour,
    Je suis débutant et j'ai le même problème actuellement.Pouvez vous me précisez concrétement ce que vous avez fait pour régler le problème?Dans votre réponse actuelle, j'ai compris qu'il fallait renommer le dossier src en bin. Mais avant la génération du jar ou après?
    Merci d'avance.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 06/06/2014, 12h12
  2. Erreur de javax.ejb.EJBException
    Par geforce dans le forum JPA
    Réponses: 6
    Dernier message: 03/01/2013, 15h01
  3. Exception : javax.ejb.EJBException
    Par abdoulfall dans le forum Java EE
    Réponses: 5
    Dernier message: 07/03/2012, 16h35
  4. Erreur "javax.ejb.EJBException"
    Par Linos1003 dans le forum JPA
    Réponses: 5
    Dernier message: 10/02/2012, 15h38
  5. Réponses: 1
    Dernier message: 29/01/2010, 20h23

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