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 :

Probleme de création d'EJB Entity [EJB3 Entity]


Sujet :

Java EE

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 139
    Points : 53
    Points
    53
    Par défaut Probleme de création d'EJB Entity
    Bonjour à tous,

    je débute dans le dev d'appli J2EE et j'ai créé une appli sous Jboss4.0.5 qui utilisé un EJB3 Entity.

    mon Jboss est configuré avec MySQL:
    mysql-ds.xml
    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
    <datasources>
      <local-tx-datasource>
        <jndi-name>MySqlDS</jndi-name>
        <connection-url>jdbc:mysql://localhost:3306/mabase</connection-url>
        <driver-class>com.mysql.jdbc.Driver</driver-class>
        <user-name>toto</user-name>
        <password>titi</password>
        <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
        <!-- should only be used on drivers after 3.22.1 with "ping" support
        <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name>
        -->
        <!-- sql to call when connection is created
        <new-connection-sql>some arbitrary sql</new-connection-sql>
          -->
        <!-- sql to call on an existing pooled connection when it is obtained from pool - MySQLValidConnectionChecker is preferred for newer drivers
        <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>
          -->
     
        <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
        <metadata>
           <type-mapping>mySQL</type-mapping>
        </metadata>
      </local-tx-datasource>
    </datasources>
    Mon fichier persistence.xml est le suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <persistence version="1.0">
       <persistence-unit name="KeepAliveModule">
           <jta-data-source>java:/MySqlDS</jta-data-source>
           <provider>org.hibernate.ejb.HibernatePersistence</provider>
           <class>com.prj.entities.KeepAliveModule</class>
           <properties>
                <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLInnoDBDialect" />
                <property name="hibernate.hbm2ddl.auto" value="update"/>
           </properties>
       </persistence-unit>
    </persistence>
    Ma classe EntityBean:
    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
    30
    31
    32
    33
     
    package com.prj.entities;
     
    import java.io.Serializable;
    import javax.persistence.*;
    import javax.persistence.EntityManager;
    import javax.persistence.PersistenceContext;
     
    @Entity
    @Table(name="KeepAliveModule")
    public class KeepAliveModule implements Serializable  {
     
    	@Id
    	@GeneratedValue(strategy = GenerationType.AUTO)
    	private int id;
    	public int getId(){return this.id;}
     
    	private String moduleName;
    	private int period;
    	private int end;
    	private int retry;
     
    	public KeepAliveModule(){
    		super();
    	}
     
    	public KeepAliveModule(String ModuleName, int period){
     
    		this.moduleName = ModuleName;
    		this.period = period;
    	}
    	setters...
            getters...
    mon appli tourne bien, mais au démarrage de Jboss, je n'ai aucun EntityBean de Créé, et la table KeepAliveModule n'est pas créée. J'ai cru comprendre que la table etait automatiquement créée si elle ne l'est pas déjà.

    je n'ai aucune erreur dans mon déploiement, mais bien entendu les accès à mon Bean ne fonctionnent pas.
    Auriez vous une idée ?

    Merci,
    Tiamat.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 139
    Points : 53
    Points
    53
    Par défaut
    J'oubliais...

    mon appli est déployée dans un EAR qui contient:

    META-INF/application.xml (spec du context root de tomcat et des JAR)
    PRJJ2EE.JAR (contient mes EJB)
    -> le fichier persistence.xml est contenu dans le META-INF de ce JAR.
    PRJWEB.WAR (contient l'appli Web).

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 139
    Points : 53
    Points
    53
    Par défaut
    J'ai trouvé mon erreur...
    il me restait un ejb-jar.xml dans mon EAR qui à priori bloquait la prise en compte du persistence.xml.

    la cohabitation EJB2 / EJB3 peut poser un probleme ?

    Si cela peut aider quelqu'un...

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

Discussions similaires

  1. Problème de création d'un EJB Entity
    Par la debutante dans le forum Wildfly/JBoss
    Réponses: 6
    Dernier message: 03/06/2013, 14h37
  2. Réponses: 5
    Dernier message: 28/03/2012, 17h04
  3. [VB.NET] Probleme de création d'une picturebox dans le code
    Par stringman62 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 07/02/2006, 16h56
  4. Problemes de création en exécution
    Par popeyes dans le forum Composants VCL
    Réponses: 6
    Dernier message: 29/06/2004, 19h02
  5. [Ant] [Ejb] Probléme de création d'ejb avec Genic
    Par rivierem dans le forum JOnAS
    Réponses: 7
    Dernier message: 25/06/2004, 16h21

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