欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

帆软报表FineReport中数据连接之Jboss配置JNDI连接

程序员文章站 2022-05-31 18:18:01
...

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

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

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

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

1. <?xml version='1.0' encoding='UTF-8' ?>    

2. <datasources>    

3. <local-tx-datasource>    

4. <jndi-name>MSSQL</jndi-name>    

5. <connection-url>jdbc:microsoft:sqlserver://192.168.100.112:1433;DatabaseName=test</connection-    

6. url>    

7. <driver-class>com.microsoft.jdbc.sqlserver.SQLServerDriver</driver-class>    

8. <user-name>sa</user-name>    

9. <password>dba</password>    

10. <!-- sql to call when connection is created    

11. <new-connection-sql>some arbitrary sql</new-connection-sql>    

12. -->    

13. <!-- sql to call on an existing pooled connection when it is obtained from pool    

14. <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>    

15. -->    

16. <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional)     

17. -->    

18. <metadata>    

19. <type-mapping>MS SQLSERVER2000</type-mapping>    

20. </metadata>    

21. </local-tx-datasource>    

22. </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,具体内容如下:

1. <?xml version='1.0' encoding='UTF-8' ?>    

2. <!DOCTYPE jboss-web    

3. PUBLIC "-//JBoss//DTD Web Application 2.3V2//EN"    

4. "http://www.jboss.org/j2ee/dtd/jboss-web_3_2.dtd">    

5. <jboss-web>    

6. <resource-ref>    

7. <res-ref-name>MSSQL</res-ref-name>    

8. <res-type>javax.sql.DataSource</res-type>    

9. <jndi-name>java:/MSSQL</jndi-name>    

10. </resource-ref>    

11. </jboss-web>    

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

1. <resource-ref>    

2. <description> Resource</description>    

3. <res-ref-name>MSSQL</res-ref-name>    

4. <res-type>javax.sql.DataSource</res-type>    

5. <res-auth>Container</res-auth>    

6. </resource-ref>