2017-08-10 2 views
0

J'essaie d'exécuter mon service sur le terminal. C'est presque ok, juste l'erreur de source de données par défaut qui manque encore là, même après beaucoup de recherches sur google. Permettez-moi de vous expliquerWildfly & Postgre: Problème de source de données par défaut

J'utilise wildfly 10.1.0

ceci est ma source de données dans standalone.xml

<datasources> 
    <datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true"> 
     <connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url> 
     <driver>h2</driver> 
     <security> 
      <user-name>sa</user-name> 
      <password>sa</password> 
     </security> 
    </datasource> 
    <datasource jta="true" jndi-name="java:jboss/datasources/PostgreSQLDS" pool-name="PostgreSQLDS" enabled="true" use-java-context="true"> 
     <connection-url>jdbc:postgresql://localhost:5432/lucasmucida</connection-url> 
     <driver>postgresql</driver> 
     <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation> 
     <pool> 
      <min-pool-size>10</min-pool-size> 
      <max-pool-size>100</max-pool-size> 
      <prefill>true</prefill> 
     </pool> 
     <security> 
      <user-name>xxx</user-name> 
      <password>xxx</password> 
     </security> 
     <statement> 
      <prepared-statement-cache-size>32</prepared-statement-cache-size> 
      <share-prepared-statements>true</share-prepared-statements> 
     </statement> 
    </datasource> 
    <drivers> 
     <driver name="h2" module="com.h2database.h2"> 
      <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class> 
     </driver> 
     <driver name="postgresql" module="org.postgresql"> 
      <xa-datasource-class>org.postgresql.xa.PGXADataSourc</xa-datasource-class> 
     </driver> 
    </drivers> 
</datasources> 

c'est la partie standalone.xml os qui contient le defaul contraignant

<subsystem xmlns="urn:jboss:domain:ee:4.0"> 
       <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement> 
       <concurrent> 
        <context-services> 
         <context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/> 
        </context-services> 
        <managed-thread-factories> 
         <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/> 
        </managed-thread-factories> 
        <managed-executor-services> 
         <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" keepalive-time="5000"/> 
        </managed-executor-services> 
        <managed-scheduled-executor-services> 
         <managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" keepalive-time="3000"/> 
        </managed-scheduled-executor-services> 
       </concurrent> 
       <default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/lucasmucida" jms-connection-factory="java:jboss/DefaultJMSConnectionFactory" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/> 
      </subsystem> 

ceci est mon module.xml qui se trouve dans le/modules/système/couches/base/org/postgresql/dossier principal

<?xml version="1.0" encoding="UTF-8"?> 
<module xmlns="urn:jboss:module:1.0" name="org.postgresql"> 
    <resources> 
    <resource-root path="postgresql-42.1.4.jar"/> 
    </resources> 
    <dependencies> 
    <module name="javax.api"/> 
    <module name="javax.transaction.api"/> 
    </dependencies> 
</module> 

Si je cours standalone.sh sh il crée même une table dans la base de données lucasmucida, mais l'erreur:

17:38:49,984 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "jpa2-1.0-SNAPSHOT.war")]) - failure description: { 
    "WFLYCTL0412: Required services that are not installed:" => ["jboss.naming.context.java.jboss.datasources.lucasmucida"], 
    "WFLYCTL0180: Services with missing/unavailable dependencies" => ["jboss.naming.context.java.module.\"jpa2-1.0-SNAPSHOT\".\"jpa2-1.0-SNAPSHOT\".DefaultDataSource is missing [jboss.naming.context.java.jboss.datasources.lucasmucida]"] 
} 
17:38:49,988 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "testeJava-1.0-SNAPSHOT.war")]) - failure description: { 
    "WFLYCTL0412: Required services that are not installed:" => ["jboss.naming.context.java.jboss.datasources.lucasmucida"], 
    "WFLYCTL0180: Services with missing/unavailable dependencies" => ["jboss.naming.context.java.module.\"testeJava-1.0-SNAPSHOT\".\"testeJava-1.0-SNAPSHOT\".DefaultDataSource is missing [jboss.naming.context.java.jboss.datasources.lucasmucida]"] 
} 

ne me laisse pas courir sur NetBeans. Si je cours le projet, il crée la table, mais ne déploie pas et ne démarre pas le projet.

Si je vais à localhost: 9090 et tester les connexions, les deux sources de données se connectent bien.

Qu'est-ce qui me manque ici?

+0

Pouvez-vous vérifier votre 'paramètre par défaut-binding' intérieur de la' urn: jboss: domain: ee: 4.0' sous-système dans votre autonome. xml? Selon la façon dont vous l'avez configuré, vous avez peut-être supprimé le paramètre 'datasource' pour les liaisons par défaut. – stdunbar

+0

J'ai édité mny post avec les configurations default-bindings. Je ne sais pas si quelque chose ne va pas – Mucida

+0

Essayez de changer votre liaison par défaut à la source de données par défaut de 'java: jboss/datasources/ExampleDS'. Vous n'avez pas besoin de le modifier de toute façon. – stdunbar

Répondre

0

juste place le driver.jar à votre module.xml emplacement

+0

ce pot "postgresql-42.1.4.jar" est déjà là = / – Mucida