首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在通配符10中配置数据源?

如何在通配符10中配置数据源?
EN

Stack Overflow用户
提问于 2015-10-12 12:45:44
回答 5查看 30.3K关注 0票数 12

我开始介绍野蝇的学习。我已经下载了服务器的发行版。

现在我正在尝试配置数据源,但我看到了以下错误:

代码语言:javascript
复制
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
}

我的脚步:

  1. 创建文件夹wildfly-10.0.0.CR2\wildfly-10.0.0.CR2\modules\org\postgres\main并从\.m2\repository\postgresql\postgresql\9.0-801.jdbc4复制postgresql-9.0-801.jdbc4.jar

2.创建module.xml(在wildfly-10.0.0.CR2\wildfly-10.0.0.CR2\modules中):

内容如下:

代码语言:javascript
复制
<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. 修改后的standalone.xml(wildfly-10.0.0.CR2\wildfly-10.0.0.CR2\standalone\configuration)如下(对不起--我不知道如何复制xml,以便其他用户可以看到它(在这里可以看到完整的内容:http://collabedit.com/psk4a)):

请帮助我理解我错了什么?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2015-10-12 13:39:58

module.xml移动到wildfly-10.0.0.CR2\wildfly-10.0.0.CR2\modules\org\postgres\main后解决的问题

票数 3
EN

Stack Overflow用户

发布于 2016-10-09 04:39:37

下面给出了驱动程序配置和数据源创建,以及如何使其全局可见,以便所有J2EE部署都可以在需要时访问特定模块。

1. PostGreSQL驱动程序配置

在通配符-8.2.0中的模块内部创建目录结构,并将上述文件和驱动程序jar放置在files \ modules目录中。目录: wildfly-8.2.0.Final\modules\org\postgresql\main

文件: module.xml

代码语言:javascript
复制
    <!--<?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驱动程序:PostgreSQL9.4-1204.jdbc41.jar

注意:您可以选择驱动程序版本,请确保在module.xml文件中反映该版本的名称。请注意,name=文件中提到的驱动程序module.xml“org.postgresql”应该与standalone.xml文件中的数据源配置匹配。

注意: PostGreSQL驱动程序版本应该与系统中的java版本兼容。在本例中,java是1.7 &使用的PostGreSQL驱动程序是PostgreSQL9.4-1204.jdbc41.jar。

2.配置DataSources

数据资源是在standalone.xml文件中的WildFly 8.2.0中配置的。作为第一步,在PostGreSQL文件中配置standalone.xml驱动程序引用,如下所示

代码语言:javascript
复制
<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. 添加数据源详细信息:

请添加这个内部标签

代码语言:javascript
复制
<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.通过在本节中添加内容,使已发布的驱动程序在全球可见。

下面是:

代码语言:javascript
复制
<global-modules>
            <module name="org.postgresql" slot="main"/>
</global-modules>

注意:全局模块是一组JBoss模块,它将作为依赖项添加到每个Java部署的JBoss模块中。这种依赖关系允许Java部署查看由全局模块导出的类。参考:https://docs.jboss.org/author/display/WFLY8/Subsystem+configuration

一旦配置好上面的内容,请启动WildFly实例。

票数 5
EN

Stack Overflow用户

发布于 2015-10-12 13:37:57

我不是100%的积极,但如果我看到一些链接周围的网络,这可能是由默认池设置。您可以尝试向数据源添加特定的池配置设置:

代码语言:javascript
复制
<datasource jndi-name="blabla"... >
  <pool>  
    <min-pool-size>1</min-pool-size>  
    <max-pool-size>20</max-pool-size>  
    <prefill>true</prefill>            
  </pool>  
</datasource>

我基于这个堆栈溢出线程:WildFly与Oracle的jdbc连接

其中一个答案链接到这个相关的JBoss论坛线程:https://developer.jboss.org/thread/257721

顺便提一下,在Wildfly配置文档中提到了池设置。这是Wildfly 9,但我无法想象Wildfly 10:https://docs.jboss.org/author/display/WFLY9/DataSource+configuration中的事情发生了多大变化。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33081524

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档