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 :

Erreurs "Error installing to Parse" et "DEPLOYMENTS MISSING DEPENDENCIES"


Sujet :

Wildfly/JBoss Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2011
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Erreurs "Error installing to Parse" et "DEPLOYMENTS MISSING DEPENDENCIES"
    Bonjour,

    Je travaille sur un projet Java Enterprise Project sous Eclipse et j'utilise JBoss Server et Postgresql 9.0.

    J'ai un problème quand je déploie mon application et d'après ce que j'ai compris j'ai un problème dans le fichier postgres-ds.xml
    Voici la sortie de la console :
    13:57:06,184 ERROR [AbstractKernelController] Error installing to Parse: name=vfsfile:/C:/Users/LikeNoOther/Downloads/jboss-5.0.1.GA/jboss-5.0.1.GA/server/default/deploy/postgres-ds.xml state=Not Installed mode=Manual requiredState=Parse
    org.jboss.deployers.spi.DeploymentException: Error creating managed object for vfsfile:/C:/Users/LikeNoOther/Downloads/jboss-5.0.1.GA/jboss-5.0.1.GA/server/default/deploy/postgres-ds.xml
    at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49)
    Je dois aussi définir une non-jta-datasource mais je ne connais pas le jndi name :
    java.lang.RuntimeException: Specification violation [EJB3 JPA 6.2.1.2] - You have not defined a non-jta-data-source for a RESOURCE_LOCAL enabled persistence context named: hireEJB
    at org.jboss.jpa.deployment.PersistenceUnitInfoImpl.<init>(PersistenceUnitInfoImpl.java:124)
    Et une erreur de dépendances qui manquent :
    DEPLOYMENTS MISSING DEPENDENCIES:
    Deployment "persistence.unit:unitName=hire.ear/hireEJB.jar#PostgreSql" is missing the following dependencies:
    Dependency "jboss.jca:name=PostgresDS,service=DataSourceBinding" (should be in state "Create", but is actually in state "** NOT FOUND Depends on 'jboss.jca:name=PostgresDS,service=DataSourceBinding' **")

    DEPLOYMENTS IN ERROR:
    Deployment "jboss.jca:name=PostgresDS,service=DataSourceBinding" is in error due to the following reason(s): ** NOT FOUND Depends on 'jboss.jca:name=PostgresDS,service=DataSourceBinding' **
    Deployment "persistence.unit:unitName=hire.ear/hireClient.jar#hireEJB" is in error due to the following reason(s): java.lang.RuntimeException: Specification violation [EJB3 JPA 6.2.1.2] - You have not defined a non-jta-data-source for a RESOURCE_LOCAL enabled persistence context named: hireEJB
    Deployment "vfsfile:/C:/Users/LikeNoOther/Downloads/jboss-5.0.1.GA/jboss-5.0.1.GA/server/default/deploy/postgres-ds.xml" is in error due to the following reason(s): org.xml.sax.SAXParseException: The processing instruction target matching "[xX][mM][lL]" is not allowed.
    postgres-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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <?xml version="1.0" encoding="UTF-8"?>
     
    <!-- ===================================================================== -->
    <!--                                                                       -->
    <!--  JBoss Server Configuration                                           -->
    <!--                                                                       -->
    <!-- ===================================================================== -->
     
    <!-- $Id: postgres-ds.xml 41017 2006-02-07 14:26:14Z acoliver $ -->
    <!-- ==================================================================== -->
    <!--  Datasource config for Postgres                                      -->
    <!-- ==================================================================== -->
     
     
    <datasources>
      <local-tx-datasource>
        <jndi-name>PostgresDS</jndi-name>
        <connection-url>jdbc:postgresql://localhost/cvtheque</connection-url>
        <driver-class>org.postgresql.Driver</driver-class>
        <user-name>postgres</user-name>
        <password>admin</password>
            <!-- sql to call when connection is created.  Can be anything, select 1 is valid for PostgreSQL
            <new-connection-sql>select 1</new-connection-sql>
            -->
     
            <!-- sql to call on an existing pooled connection when it is obtained from pool.  Can be anything, select 1 is valid for PostgreSQL
            <check-valid-connection-sql>select 1</check-valid-connection-sql>
            -->
     
          <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
          <metadata>
             <type-mapping>PostgreSQL 9.0</type-mapping>
          </metadata>
      </local-tx-datasource>
     
    </datasources>
    persistence.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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <?xml version="1.0" encoding="utf-8"?>
    <persistence version="2.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_2_0.xsd">
     
        <persistence-unit name="PostgreSql" transaction-type="JTA">
            <provider>org.hibernate.ejb.HibernatePersistence</provider>
            <jta-data-source>java:/PostgresDS</jta-data-source>
            <non-jta-data-source>java:/cvtheque</non-jta-data-source>
            <class>com.ejb.entities.Candidat</class>
            <class>com.ejb.entities.Connaissanceslinguistique</class>
            <class>com.ejb.entities.Cv</class>
            <class>com.ejb.entities.Experience</class>
            <class>com.ejb.entities.Formation</class>
            <class>com.ejb.entities.Infospersonnelle</class>
            <class>com.ejb.entities.Lettre</class>
            <class>com.ejb.entities.Loisir</class>
            <class>com.ejb.entities.Offre</class>
            <class>com.ejb.entities.Recruteur</class>
            <class>com.ejb.entities.Reponse</class>
            <class>com.ejb.entities.Secteur</class>
            <class>com.ejb.entities.Typelettre</class>
            <properties>
                <property name="hibernate.connection.driver_class"    value="org.postgresql.Driver" />
                <property name="hibernate.connection.username"        value="postgres" />
                <property name="hibernate.connection.password"        value="admin" />
                <property name="hibernate.connection.url"             value="jdbc:postgresql://localhost/cvtheque" />
                <property name="hibernate.dialect"                    value="org.hibernate.dialect.PostgreSQLDialect" />
                <property name="hibernate.hbm2ddl.auto"               value="update" />
                <property name="hibernate.show_sql"                   value="true" />
            </properties>
        </persistence-unit>
    </persistence>
    Quelqu'un saurait-il m'aider à résoudre ces problèmes ?

    Merci d'avance pour votre aide.

  2. #2
    Membre éprouvé
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Points : 1 269
    Points
    1 269
    Par défaut
    Tu devrais procéder par étapes. Vire ton ear et ne déploie que le fichier ds et vérifie si ça se passe bien. Au passage, as-tu installé le driver postgres dans le répertoire lib de ton profil ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2011
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Unable to build EntityManagerFactory
    Bonjour je n'ai plus ces problèmes par contre j'ai le problème suivant ( en fait j'ai installé le driver de postgresql dans le dossier jboss-5.0.1.GA\server\default\lib)
    aussi quand je fais run as Junit Test de la classe de test avec l'unité de persistance ressource locale j'ai des lignes qui s’insèrent donc ça marche pour la connexion eclipse/postgresql :

    j'appelle une servlet TestTransactionBMT.java pour utiliser le fichier persistence.xml et utiliser l'unité de persistence PostgreSql pour insérer dans ma base de données mais ça ne marche pas :
    voilà mon fichier persistence.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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <?xml version="1.0" encoding="UTF-8"?>
    <persistence version="2.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_2_0.xsd">
    	<persistence-unit name="PostgreSql" transaction-type="JTA" >
     
    	    <provider>org.hibernate.ejb.HibernatePersistence</provider>    
    	    <jta-data-source>java:/PostgresDS</jta-data-source>       
    		<class>com.ejb.entities.Candidat</class>
    		<class>com.ejb.entities.Connaissanceslinguistique</class>
    		<class>com.ejb.entities.Cv</class>
    		<class>com.ejb.entities.Experience</class>
    		<class>com.ejb.entities.Formation</class>
    		<class>com.ejb.entities.Infospersonnelle</class>
    		<class>com.ejb.entities.Lettre</class>
    		<class>com.ejb.entities.Loisir</class>
    		<class>com.ejb.entities.Offre</class>
    		<class>com.ejb.entities.Recruteur</class>
    		<class>com.ejb.entities.Reponse</class>
    		<class>com.ejb.entities.Secteur</class>
    		<class>com.ejb.entities.Typelettre</class> 
     
    		<properties>
    <property name="hibernate.connection.driver_class"
    value="org.postgresql.Driver" />
    <property name="hibernate.connection.username" value="postgres" />
    <property name="hibernate.connection.password" value="admin" />
    <property name="hibernate.connection.url"
    value="jdbc:postgresql://localhost/cvtheque" />
    <property name="hibernate.dialect"
    value="org.hibernate.dialect.PostgreSQLDialect" />
    <property name="hibernate.hbm2ddl.auto" value="update" />
    <property name="hibernate.show_sql" value="true" />
    </properties>
    	</persistence-unit>
    </persistence>
    voilà le fichier TestTransactionBMT.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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
     
     
    import java.io.IOException;
     
    import javax.annotation.Resource;
    import javax.ejb.TransactionManagement;
    import javax.ejb.TransactionManagementType;
    import javax.naming.InitialContext;
    import javax.persistence.EntityManager;
    import javax.persistence.EntityManagerFactory;
    import javax.persistence.Persistence;
    import javax.persistence.PersistenceContext;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
     
    import com.ejb.entities.Offre;
    import com.ejb.entities.Recruteur;
    import com.ejb.entities.Secteur;
    import com.ejb.sessions.Test;
     
     
    /**
     * Servlet implementation class TestTransactionBMT
     */
    @TransactionManagement(javax.ejb.TransactionManagementType.BEAN)
    public class TestTransactionBMT extends HttpServlet {
     
    	@Resource
    	private javax.transaction.UserTransaction userTx;
     
     
    	private EntityManagerFactory emFactory;
    	private EntityManager em;
     
    	private static final long serialVersionUID = 1L;
     
        /**
         * @see HttpServlet#HttpServlet()
         */
     
     
        public TestTransactionBMT() {
            super();
            // TODO Auto-generated constructor stub
        }
     
    	/**
             * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
             */
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		// TODO Auto-generated method stub
     
    		try {
     
    			emFactory =
    				Persistence.createEntityManagerFactory("PostgreSql");
    				em = emFactory.createEntityManager();
    				userTx.begin();
    				em.joinTransaction();
     
    			// création d'un recruteur
    			Recruteur r=new Recruteur();
    			r.setDescription("Recruteur 1");
    			r.setAdresse("rabat technopolis");
    			r.setEmail("recrut@hpcdg.com");
    			r.setFax("+212099830");
    			r.setSiteweb("www.siteweb.com");
    			r.setTelephone("09998900");
    			Secteur sec=new Secteur();
    			sec.setIntitule("LE SECTEUR 9");
    			r.setSecteur(sec);
     
     
     
    			em.persist(sec);
    			em.persist(r);
     
    			userTx.commit();
    			} 
    		catch (Exception e) {
    			e.printStackTrace();
    			}
    	}
     
    	/**
             * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
             */
    	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		// TODO Auto-generated method stub
     
     
     
     
    	}
     
    }
    voilà mon fichier postgres-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
    <?xml version="1.0" encoding="UTF-8"?>
    <datasources>
      <local-tx-datasource>
        <jndi-name>PostgresDS</jndi-name>
        <connection-url>jdbc:postgresql://localhost/cvtheque</connection-url>
        <driver-class>org.postgresql.Driver</driver-class>
        <user-name>postgres</user-name>
        <password>admin</password>
          <metadata>
             <type-mapping>PostgreSQL 9.0</type-mapping>
          </metadata>
      </local-tx-datasource>
    </datasources>
    voilà la sortie de la console :
    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
    34
    14:31:51,700 ERROR [STDERR] javax.persistence.PersistenceException: [PersistenceUnit: PostgreSql] Unable to build EntityManagerFactory
    14:31:51,701 ERROR [STDERR] 	at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:677)
    14:31:51,701 ERROR [STDERR] 	at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:126)
    14:31:51,701 ERROR [STDERR] 	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:52)
    14:31:51,701 ERROR [STDERR] 	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:34)
    14:31:51,701 ERROR [STDERR] 	at TestTransactionBMT.doGet(TestTransactionBMT.java:58)
    14:31:51,701 ERROR [STDERR] 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    14:31:51,701 ERROR [STDERR] 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    14:31:51,701 ERROR [STDERR] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    14:31:51,701 ERROR [STDERR] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    14:31:51,701 ERROR [STDERR] 	at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
    14:31:51,701 ERROR [STDERR] 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    14:31:51,701 ERROR [STDERR] 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    14:31:51,701 ERROR [STDERR] 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
    14:31:51,701 ERROR [STDERR] 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    14:31:51,701 ERROR [STDERR] 	at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
    14:31:51,701 ERROR [STDERR] 	at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
    14:31:51,702 ERROR [STDERR] 	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
    14:31:51,702 ERROR [STDERR] 	at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
    14:31:51,702 ERROR [STDERR] 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    14:31:51,702 ERROR [STDERR] 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    14:31:51,702 ERROR [STDERR] 	at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
    14:31:51,702 ERROR [STDERR] 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    14:31:51,702 ERROR [STDERR] 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
    14:31:51,702 ERROR [STDERR] 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
    14:31:51,702 ERROR [STDERR] 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:601)
    14:31:51,702 ERROR [STDERR] 	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    14:31:51,702 ERROR [STDERR] 	at java.lang.Thread.run(Thread.java:662)
    14:31:51,702 ERROR [STDERR] Caused by: org.hibernate.HibernateException: The chosen transaction strategy requires access to the JTA TransactionManager
    14:31:51,702 ERROR [STDERR] 	at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:361)
    14:31:51,702 ERROR [STDERR] 	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1327)
    14:31:51,702 ERROR [STDERR] 	at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
    14:31:51,702 ERROR [STDERR] 	at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:669)
    14:31:51,702 ERROR [STDERR] 	... 26 more

  4. #4
    Membre éprouvé
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Points : 1 269
    Points
    1 269
    Par défaut
    D'abord ce serait sympa pour les autres que tu expliques ce qui a corrigé ton problème avant de poser une nouvelle question.

    Sinon, pas sûr que ce soit la cause de ton problème, mais je vois deux bizarreries dans ta configuration.

    Ton persistence.xml fait référence à JPA 2 alors que JBoss AS 5 est un serveur JavaEE 5 qui contient JPA 1. Pour du JPA 2, je pense qu'il te faut JBoss AS 6 ou, bien mieux, JBoss AS 7.

    Ton persistence.xml fait référence à une datasource et définit en plus une connexion. Pour être vraiment JavaEE, il faudrait uniquement la datasource.

  5. #5
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2011
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Unable to build EntityManagerFactory
    Bonjour,

    le problème est résolu j'ai ajouté dans mon persitence.xml la ligne suivante dans le tag properties :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup"/>
    c'est ce qui je pense empêchait le serveur de créer le EntityManagerFactory.

Discussions similaires

  1. [11g] Erreur "missing right quote" mystère
    Par tiritchi dans le forum PL/SQL
    Réponses: 7
    Dernier message: 22/07/2013, 22h22
  2. [Mapping] [Hibernate3 - MySQL] Erreur récurrente "Error parsing XML"
    Par KosenHitatchi dans le forum Hibernate
    Réponses: 0
    Dernier message: 07/04/2013, 17h39
  3. Réponses: 3
    Dernier message: 19/04/2007, 11h34
  4. [Kylix] Erreur a l'installation
    Par Strit83 dans le forum EDI
    Réponses: 5
    Dernier message: 03/11/2002, 20h45

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