[10改未]JBoss配置JNDI连接

编辑
  • 文档创建者:文档助手1
  • 浏览次数:2815次
  • 编辑次数:17次
  • 最近更新:Kevin-s 于 2019-06-02
  • 1. 问题描述

    我们以使用sqlsever 2000数据库数据源来做实例讲解,大概的过程和Websphere以及Weblogic基本相同,用JDBC连接数据库制作报表,然后在数据库连接里将连接方式改成JNDI,然后在JBoss服务器中配置好JNDI资源,然后配置发布即可,本章节主要说明后两步如何配置。


    2. 实现步骤

    jboss\server\default\deploy下新建文件夹,名为 WebReport.war(也可通过将其打成war包来部署,这里不做讨论),将% FR_HOME%\webroot文件夹下的 WEB-INF 复制到 WebReport.wa r中,然后配置好目录 % FR_HOME%下conf 文件夹下的 web.xml。

    将 sqlsever 2000 数据库的 JDBC 驱动 msbase.jar、mssqlserver.jar 和 msutil.jar 三个文件拷贝到 JBoss 安装目录下的 %JBOSS_HOME%\server\default\lib下。

    Jboss\server\default\deploy文件夹下创建 mssql-ds.xml 文件,文件具体内容如下(可使用记事本创建):

    <?xml version='1.0' encoding='UTF-8' ?>
    <datasources>
    <local-tx-datasource>
    <jndi-name>MSSQL</jndi-name>
    <connection-url>jdbc:microsoft:sqlserver://192.168.100.112:1433;DatabaseName=test</connection-url>
    <driver-class>com.microsoft.jdbc.sqlserver.SQLServerDriver</driver-class>
    <user-name>sa</user-name>
    <password>dba</password>
    <!-- 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
    <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>
    -->
    <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional)
    -->
    <metadata>
    <type-mapping>MS SQLSERVER2000</type-mapping>
    </metadata>
    </local-tx-datasource>
    </datasources>

    注意:其中 MSSQL 是对应 JNDI 的名字,可随意改变。192.168.100.112 是测试用的服务器 IP,根据实际情况设置。test 是数据库名字,mssql-ds.xml 只是对应 sqlsever 服务器的文件,如果是其他数据库要对应生成不同的xml文件。在jboss\docs\examples\jca路径中有相对应各个不同服务器的 xml 文件,只需在其基础上做修改即可用

    在之前部署的WebReport.war/web-inf文件夹中创建 Jboss-web.xml,具体内容如下:

    <?xml version='1.0' encoding='UTF-8' ?>
    <!DOCTYPE jboss-web
    PUBLIC "-//JBoss//DTD Web Application 2.3V2//EN"
    "http://www.jboss.org/j2ee/dtd/jboss-web_3_2.dtd">
    <jboss-web>
    <resource-ref>
    <res-ref-name>MSSQL</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <jndi-name>java:/MSSQL</jndi-name>
    </resource-ref>
    </jboss-web>

    其中 MSSQL 对应以前的 JNDI 名字,可根据自己设定的 JNDI 名字来改变,其他不变。用记事本类似的工具,打开WebReport.war/WEB-INF文件夹中的 web.xml,添加内容具体如下:

    <resource-ref>
    <description> Resource</description>
    <res-ref-name>MSSQL</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    </resource-ref>


    附件列表


    主题: 数据连接
    标签: 暂无标签
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

    此页面有帮助吗?只是浏览 [ 去社区提问 ]