Comment configurer datasource dans wildfly 10?

je commence l'introduction avec wildfly learning. J'ai téléchargé la distribution du serveur.

Maintenant j'essaie de configurer datasource mais je vois l'erreur suivante:

Unexpected HTTP response: 500

Request
{
    "address" => [
        ("subsystem" => "datasources"),
        ("data-source" => "PostgreDataSource")
    ],
    "operation" => "test-connection-in-pool"
}

Response

Internal Server Error
{
    "outcome" => "failed",
    "failure-description" => "WFLYJCA0040: failed to invoke operation: WFLYJCA0042: failed to match pool. Check JndiName: java:jboss/datasources/PostgreDataSource",
    "rolled-back" => true
}

mes pas:

1. Dossier créé par wildfly-10.0.0.CR2wildfly-10.0.0.CR2modulesorgpostgresmain et copier postgresql-9.0-801.jdbc4.jar.m2repositorypostgresqlpostgresql.0-801.jdbc4 il n'.

2.Module créé.xml(à l'intérieur de wildfly-10.0.0.CR2wildfly-10.0.0.CR2modules):

avec le contenu suivant:

<module xmlns="urn:jboss:module:1.0" name="org.postgres"> 
  <resources> 
    <resource-root path="postgresql-9.0-801.jdbc4.jar"/> 
  </resources> 
   <dependencies> 
     <module name="javax.api"/> 
     <module name="javax.transaction.api"/> 
   </dependencies> 
</module> 
  1. Modifié standalone.xml (wildfly-10.0.0.CR2wildfly-10.0.0.CR2standaloneconfiguration) comme ceci(désolé-Je ne sais pas savoir comment copier xml qu'il peut être visible pour un autre utilisateur(plein contenu visible ici:http://collabedit.com/psk4a)):

s'il vous plaît aidez-moi à comprendre ce que je me trompe?

enter image description here

11
demandé sur gstackoverflow 2015-10-12 15:45:44

4 réponses

ci-dessous est donnée la configuration du pilote et la création de la source de données et comment la rendre globalement visible afin que tous les déploiements J2EE puissent accéder au module particulier si nécessaire.

1. PostGreSQL Driver Configuration

créer la structure de répertoire comme ci-dessous à l'intérieur des modules dans wildfly-8.2.0.Répertoire\modules Final et placer les fichiers mentionnés et le pilote jar. Répertoire: wildfly-8.2.0.Final\modules \ org\postgresql\main

le Fichier: module.xml

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

JAR : PostgreSQL Driver: postgresql-9.4-1204.jdbc41.jar

Remarque: la version du pilote peut être votre choix et veuillez vous assurer de refléter le nom de la version dans le module.fichier xml. Veuillez noter que le nom du pilote="org.postgresql" mentionné dans le module.le fichier xml doit correspondre à la configuration de la ou des sources de données dans la version autonome.fichier xml.

Note: la version du pilote PostGreSQL doit être compatible avec la version java système. Dans cet exemple, java est 1.7 et le pilote PostGreSQL utilisé est postgresql-9.4-1204.jdbc41.pot.

2. La configuration des Sources de données

les sources de données sont configurées de manière autonome.fichier xml dans le WildFly 8.2.0.Finale\standalone \ configuration. Comme première étape, configurez la référence du pilote PostGreSQL dans le standalone.fichier xml ci-dessous à l'intérieur de la balise

<driver name="postgresql" module="org.postgresql">
<datasource-class>org.postgresql.Driver</datasource-class>
<xa-datasource-class>org.postgresql.xa.PGXADataSource</xa-datasource-class>
</driver>

1. Ajouter la source de détails:

veuillez ajouter cette étiquette intérieure

<datasource jndi-name="java:/db1" pool-name="db1" enabled="true" use-java-context="true">
<connection-url>jdbc:postgresql://localhost:5432/dbname</connection-url>
<driver>postgresql</driver>
<security>
    <user-name>user_name</user-name>
    <password>password</password>
</security>
</datasource>

2.rendre les pilotes publiés globalement visibles en ajoutant à la section

la Voici:

<global-modules>
            <module name="org.postgresql" slot="main"/>
</global-modules>

Note: Global modules est un ensemble de Modules JBoss qui seront ajoutés en tant que dépendances au Module JBoss de chaque déploiement Java EE. De telles dépendances permettent aux déploiements Java EE de voir les classes exportées par les modules globaux. Référer : https://docs.jboss.org/author/display/WFLY8/Subsystem + configuration

une fois configuré, veuillez démarrer votre instance WildFly.

5
répondu Ajay Kumar 2016-10-09 04:39:37

Problème résolu après le déplacer module.xmlwildfly-10.0.0.CR2\wildfly-10.0.0.CR2\modules\org\postgres\main

3
répondu gstackoverflow 2015-10-12 13:39:58

Je ne suis pas 100% positif, mais si je vois certains liens autour du net, il peut être causé par les paramètres de pool par défaut. Vous pouvez essayer en ajoutant des paramètres de configuration de pool spécifiques à votre source de données:

<datasource jndi-name="blabla"... >
  <pool>  
    <min-pool-size>1</min-pool-size>  
    <max-pool-size>20</max-pool-size>  
    <prefill>true</prefill>            
  </pool>  
</datasource>

je me base que sur ce stackoverflow thread: WildFly JDBC connexion avec Oracle

où les réponses des liens vers ce JBoss fil de discussion du forum: https://developer.jboss.org/thread/257721

les paramètres de la piscine sont mentionnés dans la documentation de configuration de Wildfly. C'est Wildfly 9, mais je ne peux pas imaginer les choses ont beaucoup changé dans Wildfly 10: https://docs.jboss.org/author/display/WFLY9/DataSource+configuration

1
répondu Gimby 2017-05-23 12:08:56

je voudrais dire que j'ai résolu le problème seulement en utilisant la console d'administration de wildfly (http://localhost:9990/console/