帆软报表FineReport中数据连接之Websphere配置JNDI连接
以oracle9i数据源制作的模板jndi.cpt为例来说明如何在FineReport中的Websphere配置JNDI连接。由于常用服务器的JNDI驱动过大,帆软报表FineReport中没有自带,所以可以采取下面的方法来使用服务器中的JNDI连接。原理:先用JDBC连接到数据库,建立数据库连接,然后用SQL或者其他方法创建数据集,使用数据集制作报表,然后把建立的数据库连接从JDBC连接改成JNDI连接,然后配置好服务器中的JNDI连接,然后按照我们下面章节所说的部署好服务器,这样就可以通过WEB浏览器浏览到使用JNDI连接的报表了。
1. 制作使用JNDI连接的报表
首先使用JDBC方式连接数据库oracle9i,然后使用oracle9i数据库中的数据库表sale制作模板jndi.cpt保存可以预览,如下图:
然后,回到定义数据库连接,新建一个JNDI方式的数据连接oracle9i,将jndi的名字命名为jdbc/oracle,删掉前面建的连接方式JDBC的oracle9i数据连接,确定保存。如下图:
此时的模板jndi.cpt是无法预览的,因为我们只定义了jndi的名字,没有建立jndi连接。
2. WEBSPHERE中的JNDI连接配置
接下来讲,如何在WEBSPHERE服务器中配置JNDI连接。
登录WEBSPHERE的管理平台,选择环境>Websphere变量>ORACLE_JDBC_DRIVER_PATH在值的位置上输入驱动程序所在的目录如:C:\WebReport\WEB-INF\lib\ojdbc14.jar(oracle的jdbc驱动程序的具体位置),如下图:
进入全局安全性>JAAS配置>J2C认证数据>新建输入别名,用户标识和密码,别名:oracle(可以随便起),用户标识(oracle用户名,^连接oracle数据库使用的用户名和密码):system,密码:dba,如下图:
选择资源>JDBC提供者>新建,步骤一:oracle,步骤二:Oracle jdbc driver,步骤三:连接池数据源,如下图:
点击下一步,将类路径改为${ORACLE_JDBC_DRIVER_PATH},其他不变,然后保存应用,如图:
保存完上述应用后,点击ORACLE JDBC DRIVER这个应用,在右上角可以看到“数据源”,点选。我们将配置数据源>新建,名称--oracle,JNDI名称--jdbc/oracle,组件管理的认证别名--frserver2003node1/oracle9i(为上一步全局安全性中的配置,根据自己起的名字来选择),URL里输入jdbc:oracle:thin:@192.168.100.111:1521:oracle9i(根据ORACLE数据库的位置调节),其他为默认值,保存。然后选择这个数据源,点击测试连接,最终结果如图:说明jndi数据源配置成功了。
3. WEBSPHERE中的Web应用部署
本步骤就是连接模板和jndi数据源的关键。
接下来,我们选择%FR_HOME%/WebReport/ WEB-INF文件夹下的web.xml(注:制作的报表jndi.cpt保存在%FR_HOME%/WebReport/ WEB-INF/reportlets/com/doc/jndi.cpt),用记事本类似的工具打开 web.xml,在其中添加一部分内容。
1. <resource-ref>
2. <description>Oracle DB connection</description>
3. <res-ref-name>jdbc/oracle</res-ref-name>
4. <res-type>javax.sql.DataSource</res-type>
5. <res-auth>Container</res-auth>
6. </resource-ref>
然后将WebReport这个文件夹打包WebReport.war。具体部署过程请参照FineReport文档中Websphere服务器的部署。其中有个步骤与文档中有区别,在映射资源引用到资源中需要选择jndi名字和使用缺省方法中选择认证方法,另需要填jndi名字。上文设定jndi名字为:jdbc/oracle,认证方法为:frserver2003node1/oracle9i,具体如图:
部署成功以后我们打开浏览器,填入URL:span class="paths"->http://localhost:9080/WebReport/ReportServer?reportlet=/com/doc/jndi.cpt
若出现下图所示画面,则说明配置成功。
帆软报表FineReport中数据连接之Websphere配置JNDI连接的更多相关文章
- 帆软报表FineReport中数据连接之Tomcat配置JNDI连接
1. 问题描述 在帆软报表FineReport中,通过JNDI方式定义数据连接,首先在Tomcat服务器配置好JNDI,然后在设计器中直接调用JNDI的名字,即可成功使用JNDI连接,连接步骤如下: ...
- 帆软报表FineReport中数据连接的JDBC连接池属性问题
连接池原理 在帆软报表FineReport中,连接池主要由三部分组成:连接池的建立.连接池中连接使用的治理.连接池的关闭.下面就着重讨论这三部分及连接池的配置问题. 1. 连接池原理 连接池技术的核心 ...
- 帆软报表FineReport中数据连接之Weblogic配置JNDI连接
1. 制作报表的原理 在帆软报表FineReport设计器中先用JDBC连接到数据库,建立数据库连接,然后用SQL或者其他方法创建数据集,使用数据集制作报表,然后把建立的数据库连接从JDBC连接改成J ...
- 帆软报表FineReport中数据连接之Jboss配置JNDI连接
使用sqlsever 2000数据库数据源来做实例讲解,帆软报表FineReport数据连接中Jboss配置JNDI大概的过程和WEBSPHERE以及WEBLOGIC基本相同,用JDBC连接数据库制作 ...
- 帆软报表FineReport SQLServer数据库连接失败常见解决方案
1. 问题描述 帆软报表FineReport客户端连接SQLServer(2000.2005等),常常会出现如下错误:com.microsoft.sqlserver.jdbc.SQLServerExc ...
- 帆软报表FineReport数据连接中游标问题解决方案汇总
1. 概念 在数据库中, 游标是一个十分重要的概念.游标是一种能从包括多条数据记录的结果集中,每次提取一条记录的机制. 用SQL语言从数据库中检索数据后,结果放在内存的一块区域中,往往是一个含有多个记 ...
- 帆软报表FineReport数据库连接编码转换
1. 问题描述 数据库会以某种编码方式保存与读取数据,FineReport解析时默认使用GBK字符集,若数据库端编码与设计器端编码不一致时,就会导致中文及特殊字符的乱码. FineReport在定义数 ...
- 帆软报表(FineReport)实现跨数据源父子查询(2阶段查询)
问题描述: 在报表中需要查询多个系统多个数据源,且有一个数据源的入参是另一个数据源的返回值.所以当用户点击查询到展现报表数据这个过程中,需要先做父查询,查询出的结果在作为子查询. 实现方案: 方案一: ...
- 帆软报表(finereport)单元格中各颜色标识的含义
帆软报表(finereport)单元格中,可根据单元格角标的颜色判断单元格进行的操作 过滤:单元格左下角黄色三角形 条件属性:单元格左上角红色三角形. 控件:单元格右侧中间的各种矩形. 左父格:单 ...
随机推荐
- caching与缓存
通常,应用程序可以将那些频繁访问的数据,以及那些需要大量处理时间来创建的数据存储在内存中,从而提高性能.例如,如果应用程序使用复杂的逻辑来处理大量数据,然后再将数据作为用户频繁访问的报表返回,避免在用 ...
- 【Win10开发】Toast通知——后台激活
前篇文章我们写了关于Toast的前台激活,那么接下来就讲一讲它的后台激活.当通知出现时并不会出现app的界面,但是app能在后台获取到通知中的信息. 关于xaml和Toast通知架构我们在这里就不再赘 ...
- 基于CkEditor实现.net在线开发之路(2)编写C#代码,怎么调用它。
上一章简约的介绍了CkEditor编辑器,可以编辑js逻辑代码,css,html,C#代码,这章我根据实际例子,讲解怎么编写C#代码和怎么调用它. 大家都还记得刚刚接触程序编时的hello Word吧 ...
- Andriod小项目——在线音乐播放器
转载自: http://blog.csdn.net/sunkes/article/details/51189189 Andriod小项目——在线音乐播放器 Android在线音乐播放器 从大一开始就已 ...
- tomcat启动时候报错Can't convert argument: null
一.启动报错: 为了避免导入的项目重名,我先修改了前一个项目的名称. 重新启动该项目至tomcat,报错:java.lang.IllegalArgumentException: Cant conver ...
- python基础之异常处理
Python3 错误和异常 作为Python初学者,在刚学习Python编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍. Python有两种错误很容易辨认:语法错误和异常. ...
- mybatis入门
1.什么是MyBatis ? 亲爱的度娘是这样说的: MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation ...
- java实现链表
单链表 package com.voole.linkedlist; public class Test { public static void main(String[] args) { Linke ...
- java代码实现栈
这几天在老家有点事,现在弄完了,继续研究一下数据结构,这次的栈并没有对多线程进行优化,如果有想优化的童鞋可以参考我上一篇文章对队列进行的优化,话不多说,上代码: package com.voole.c ...
- C#中==、Equals、ReferenceEquals的区别
原文链接:http://www.studyofnet.com/news/1188.html 本文导读: C#中Equals , == , ReferenceEquals都可以用于判断两个对象的个体是不 ...