帆软报表FineReport中数据连接之Weblogic配置JNDI连接
1. 制作报表的原理
在帆软报表FineReport设计器中先用JDBC连接到数据库,建立数据库连接,然后用SQL或者其他方法创建数据集,使用数据集制作报表,然后把建立的数据库连接从JDBC连接改成JNDI连接,然后配置好服务器中的JNDI连接,然后按照我们下面章节所说的部署weblogic服务器,这样就可以通过WEB浏览器浏览到使用JNDI连接的报表了。
WEBLOGIC的JNDI资源应用与WEBSPHERE的JNDI资源应用很类似,所以本章就简略地进行讲解,具体的步骤可以参照上一章WEBSPHERE的JNDI资源应用。
首先使用jdbc方式连接数据库orcl10g,然后使用orcl10g数据库中的一个表制作一个模板jndi.cpt保存可以预览,如下图:
然后,回到定义数据库连接,新建一个JNDI方式的数据连接orcl10g,将jndi的名字命名为oracle,删掉前面建的连接方式JDBC的orcl10g数据连接,确定保存。如下图:
保存模板,此时的模板jndi.cpt是无法预览的,因为我们只定义了jndi的名字,没有建立jndi连接。
注:只需要设置JNDI的名字,上下文里面的可以省略。
登陆WEBLOGIC的管理平台,在域结构里面选择服务Services,选择Jdbc数据源,新建Connectionpoo
l
设置数据源JNDI名称为oracle(即制作模板时定义的JNDI名字),选择数据库类型及驱动点击“下一步”,如下图:
事务选项根据自己要求定义,在此默认,点击“下一步”配置连接属性:数据库名,URL,用户名及密码,建立weblogic 10 至oracle 10g的物理连接。
测试刚定义的数据源连接:点击下一步,weblogic 服务器会呈现之前我们配置好的数据源,并提供连接测试,点击“测试配置”,弹出消息“连接测试成功”说明配置正确,点击“下一步”,部署新建的JDBC数据源:选中需要部署该数据源的服务器,点击“完成”。如下图:
服务器端的数据源配置好了,激活配置后部署的应用就能通过“oracle”这个桥梁(JNDI名字)与oracle数据库连接。
接下来我们选择%FineReport%/WebReport/Web-INF文件夹下的web.xml,在其中添加一部分内容。
1. <resource-ref>
2. <description>Oracle DB connection</description>
3. <res-ref-name>oracle</res-ref-name>
4. <res-type>javax.sql.DataSource</res-type>
5. <res-auth>Container</res-auth>
6. </resource-ref>
然后将WebReport工程部署到WEBLOGIC服务器上,具体部署过程请参照FineReport帮助文档中WEBLOGIC服务器的部署,部署成功以后我们打开浏览器,填入URL:
http://localhost:7001/WebReport/ReportServer?reportlet=jndi.cpt。如模板运行成功,则说明jndi配置成功了。