报表软件FineReport Websphere配置JNDI连接
- 格式:pdf
- 大小:535.42 KB
- 文档页数:6
类excel报表开发工具FineReport教程之Weblogic服务器Weblogic服务器部署1.描述1.1FR支持的Weblogic版本及对应JDK版本Weblogic版本对应JDk版本Weblogic8.0JDK1.4Weblogic9.0/9.1/9.2/10JDK1.5Weblogic10gR3/11g JDK6.01.2操作系统Windows、Linux、Unix操作系统。
Linux、Unix下的Weblogic管理控制台和Windows下的界面是一样的,即实现步骤是一样的,所以下面我们以Windows系统下的实现做介绍。
2.实现步骤以下示例环境为Windows7+Weblogic10+jdk1.7,其他版本步骤基本相同,可能每个版本功能位置不同,希望大家能够谅解,仔细找找所在的位置。
2.1复制目录拷贝FineReport安装目录下的WebReport文件夹至服务器(Weblogic所在的服务器)任意目录,如服务器的C:\WebReport。
2.2Weblogic部署FineReport应用启动服务器,打开Weblogic管理控制台,默认地址为http://localhost:7001/console,选择左边的部署菜单,点击右侧的安装按钮进行部署,如下图:调整至FineReport部署位置,即C:\WebReport,选定WebReport,点击“下一步”:选择默认的定位方式不变(将此部署安装为应用程序),“下一步”:使用默认设置直接点击“完成”(也可根据需求点击“下一步”逐步进行设置):注:在部署weblogic过程中,无需更改编码方式,FineReport在定义数据连接时已经对编码进行了处理。
点击左侧的“激活更改”按钮进行提交:看到“激活所有更改。
不需要重新启动”信息时,表示我们已经部署完毕了。
选择刚部署的应用>启动:2.3检测是否部署成功打开浏览器,在地址栏输入http://localhost:7001/WebReport/ReportServer,能成功看到部署成功页面,则表明FineReport应用部署Weblogic成功:weblogic部署问题1.weblogic12.1.1部署问题按照weblogic服务器部署的步骤对weblogic12.1.1进行部署,会出现部署不成功的现象。
JDBC连数据库一、配置jdbc1.在浏览器中输入http://<服务器IP>:<端口> /nwa,进入登陆页面,输入用户名密码登陆。
2.选择Configuration Management → Infrastructure → Application Resources。
点击进入后界面如下:3.新增数据库驱动(Create New Resource→Deploy New JDBC Driver)上传驱动:成功后界面如下:4.创建JDBC datasource(在每次服务器重启后失效)填入相关信息点击保存成功后,如下图(如果状态不是Fully Available,请检查配置重新配置)配置完成后在程序中通过如下方法调用连接:InitialContext initialcontext = new InitialContext();DataSource ds = (DataSource) initialcontext.lookup("jdbc/testJdbc") ;Connection con = ds.getConnection() ;连接数据库经常用到,可以写一个类专门处理数据库操作(后面的实例中就是用这种方式的)。
二、设计web Dynpro界面。
1.完成以上配置后,在net weaver studio中配置sap服务器(配置方法如下图)2.开始web Dynpro工程(file—>new web Dynpro development Component),创建完成后展开工程选址Application,右键创建Application。
创建完成后如图:3.打开创建的components的component controller,在context中创建如下context对象,用来存放数据对象。
4.复制节点粘贴到view的context中,并进行映射。
帆软报表FineReport中数据连接之Weblogic配置JNDI连接1.制作报表的原理在帆软报表FineReport设计器中先用JDBC连接到数据库,建立数据库连接,然后用SQL或者其他方法创建数据集,使用数据集制作报表,然后把建立的数据库连接从JDBC 连接改成JNDI连接,然后配置好服务器中的JNDI连接,然后按照我们下面章节所说的部署weblogic服务器,这样就可以通过WEB浏览器浏览到使用JNDI连接的报表了。
WEBLOGIC的JNDI资源应用与WEBSPHERE的JNDI资源应用很类似,所以本章就简略地进行讲解,具体的步骤可以参照上一章WEBSPHERE的JNDI资源应用。
1.1制作使用JNDI连接的报表首先使用jdbc方式连接数据库orcl10g,然后使用orcl10g数据库中的一个表制作一个模板jndi.cpt保存可以预览,如下图:然后,回到定义数据库连接,新建一个JNDI方式的数据连接orcl10g,将jndi的名字命名为oracle,删掉前面建的连接方式JDBC的orcl10g数据连接,确定保存。
如下图:保存模板,此时的模板jndi.cpt是无法预览的,因为我们只定义了jndi的名字,没有建立jndi连接。
注:只需要设置JNDI的名字,上下文里面的可以省略。
1.2WEBLOGIC中的JNDI连接配置登陆WEBLOGIC的管理平台,在域结构里面选择服务Services,选择Jdbc数据源,新建Connectionpool设置数据源JNDI名称为oracle(即制作模板时定义的JNDI名字),选择数据库类型及驱动点击“下一步”,如下图:事务选项根据自己要求定义,在此默认,点击“下一步”配置连接属性:数据库名,URL,用户名及密码,建立weblogic10至oracle10g的物理连接。
测试刚定义的数据源连接:点击下一步,weblogic服务器会呈现之前我们配置好的数据源,并提供连接测试,点击“测试配置”,弹出消息“连接测试成功”说明配置正确,点击“下一步”,部署新建的JDBC数据源:选中需要部署该数据源的服务器,点击“完成”。
关于wepspare建立jdbc数据源/项目部署一、建立jdbc数据源1.在装完wepspare服务软件后/进入安装后文件bin目录/在DOS下通过通过输入startServer server1启动服务(stopServer server1停止服务)。
2.通过IE浏览器输入http://127.0.0.1:9060/ibm/console进入webspare控制台目录,.随便输入一个用户标识,进入3.单击左边资源==》在菜单中选择jdbc提供者==》右边将显示相应的jdbc提供者界面==》选择服务器:server1/应用/单击下面的新建按钮据库驱动步骤;3选择连接池数据源或XT数据源单击下一步5.在弹出的界面中把名称改成你所需要的名称→类路径改称你电脑放置oracle驱动的位置如(在计算机中的路径是D:\ojdbc14你要改成D:/ojdbc14)→确定→保存(在界面上部)→确定6.操作完上面后单击右边的数据源进入相应数据源界面/单击新建7在新建界面把jndi名称改成你需要的名称如(jdbc/mmp) 选择一个helper类/输入url 地址如:jdbc:oracle:thin:@133.64.39.208:1521:sxnew97→确定→保存(在界面上部)→确定,如图:8.回到数据源界面/在列表中选中刚刚建立的数据源→进入界面后→单击右边j2ee连接器体系统结构(j2c)认证条目→进入配置界面9.在j2ee连接器体系统结构(j2c)认证条目界面→单击新建→进入相应的配置界面→输入别名→用户标识(oracle数据库用户名)→密码(oracle数据库密码) →确定/保存(在界面上部)/确定10.回到建好数据源界面→在里面选择数据库存储help类名→组件管理的认证别名(刚刚建立的认证用户)组件管理的认证别名下面选择→容器管理的认证(刚刚建立的认证用户)容器管理的认证别名(在V6.0 中不推荐,请使用资源引用认证设置来代替)下面选择即可→确定→保存(在界面上部)→确定11. 测试连接,如表示DataSourse的测试连接是成功的12.完成~!二、项目部署1.在webspare界面单击应用程序 进入安装新的应用程序2.进入截面,单击安装3、进入安装界面选择本地文件系统,在指定路径中选择项目路径,然后点击下一步2.进入安装界面选择虚拟主机(选择使用Web 模块的缺省虚拟主机名:)单击下一步3.进入界面三不用设置,单击下一步4.进入界面四→在操作界面选择集群和服务器以及下面加载的类包列表→单击应用→单击下一步5.进入接面五→是提供用于执行EJB部署的选项→选择部署EJB选项-数据库类型选择你需要连接的数据棵类型,然后点击下一步进行操作6、进入界面显示的是提供bean 的jndi的名称,不需要进行任何更改,单击下一步7.进入界面六/在界面显示虚拟主机根据需要选择 单击下一步8.进入界面七→不用操作→单击下一步9.进入界面八→查看部署是否正确→单击完成9.进入显示正在部署........................10.只要看到应用程序***安装成功功了12完成。
FineReport中如何进行Informix数据库连接报表开发工具Finereport中,对于Informix数据库,定义数据连接处进行如下配置:数据库:Others驱动器:rmix.jdbc.IfxDriverURL:jdbc:informix-sqli://localhost:port/mydatabase:INFORMIXSERVER=mydatabase 用户名:username密码:password说明:1.在我们的WebReport工程下的WEB-INF\lib下,已有JDBC驱动包:Informix的jar包,其名字为ifxjdbc.jar。
2.选择了数据库类型是Others之后,默认会带出来ODBC的驱动写法。
驱动器一定要改。
rmix在安装时需要定义一个用户名和密码,和Oracle的安装是类似的。
所以定义连接时,用户名密码一定不是空的。
如果有用户反映说没有用户名密码,也必须要创建一个,否则是连接不成功的。
1.jdbc连接Informix中文显示乱码informix不支持gbk,jdbc连接时,中文会显示乱码,报错informix Locale not supported,那么怎么才能使用jdbc连接informix呢?1.1解决思路自己手动定义NEWCODESET设置。
NEWCODESET格式:NEWCODESET=JDK-encoding,Ifx-codeset,Ifx-codeset-numberJDK-encoding对应java中的encoding是gbk;ifx-codeset对应数据库中的编码格式,是ISO885901;ifx-codeset-number对应informix数据库编码id,手册中8859-1对应的是819。
修改JDBC连接的url配置如下:jdbc:informix-sqli:ip:port/test:informixserver=test;NEWCODESET=gbk,885 9-1,819如果informix的语言环境为GB18030,其jdbc的URL链接参数设置如下:jdbc:informix-sqli://ip:8090/sky:INFORMIXSERVER=test;DB_LOCALE=zh_cn. GB18030-2000;CLIENT_LOCALE=zh_cn.GB18030-2000;NEWCODESET=GB1803 0,GB18030-2000,5488;DBDATE=Y4MD。
WebSphere下数据源配置流程如下:1.新建J2C认证打开 WebSphere管理控制台,选择”安全性” ”安全管理、应用程序和基础结构”,如下图所示:(3指导性活动田服务器回应用程序国资源E)安全性菅環应用程序和基础结执二■ SSL证书和密钥管理| ■总线安全•陛选择右边的“认证”“ Java认证和授权服务”“ J2C认证数据”,如下图所示认证□3 Web ^±143(WIIOP安至性应用程序登录系统登录认证数-据二A认证机制和到期外部授权提供程序定制属性在打开的页面中“新建”一条认证数据,如下图所示:蛍全管理、应用軽序和基础貉构>3砖—2I2C认讦数轄>新建將走供Java仃恫)2连接器受全性使用的一齟用户耘识和题码.配置•别名应用确定.|夏空取消用户 webadminen 的密码为 webadminen确定并保存设置。
2.配置数据源驱动包变量上传Oracle数据库与应用程序间的驱动包classes12.jar至oracle安装目录下,如159 服务器上是./oracle/ojdbc14.jar在websphere左边菜单栏部分依次打开"环境”“ WebSphere变量”,如下图示:回安全性曰环境•虛拟主机-更新全局Wib服务器插件配置bSoh 已「E赛量二>■共享库■复制域回命名国系统管理在打开的页面中选择"作用域”,并选中"节点=loopbackNode01,服务器=server1 选项,如下图示:3. 定义数据源打开左边菜单的“资源”“ JDBC ” “数据源”,如下图示:□作用或二所有作用域作用域皓定资源定义可视的馥别.要获得有关作用域的内容以反如何工作的详细信息.请参80所有作用域EI 首选所営作用域单元=loopbackNode01Cell 节点曰oopbBtkNo 血01 新建埒_鬥©节点二SRCB巴并点=SRCBHttpServer-node T 服务器=SRCBHttpSer-veroopbEckNod E OI.服劳器二呂ErvE 「l单击“新建”按钮,属性名称定义为“ srcben_oracle_PATH ”,值定义为驱动包 classes12.jar 存放的路径 :“/waiwa ng/WebSphere/AppServer/profiles/AppSrv01/i nstalledApps/localhostNodW 吐印hmrp 麦量 > s rcben_orade_P ATH使用就页面来定义替换变量・这些变虽指定某些系统定义的值(例如,文件系蜿^目录)的间接程度. 器、节点、集群或单元.某个作用威的值可与苴他级剧的值不同-当吏量具有[中突的作用域值时,樹 高」整的值.因此・服务器变量覆盖节点吏量,节点芟量覆盖集群變量,集群齋量覆盖单元变量・ 配置*名称曰资源■ Scheduler■对象池管理器a JMS□ JDB 匚■ JDBC提供程序■数据源(WebSphereApplication Server V4)0资源适配器3 Asynchronous beans在右边打开的页面中中选择"作用域”,并选中"节点 =loopbackNode01,服务器=server1 ”选项,如下图示:□作用坯:有作用域新建数据源在打开的页面中单击“新建”按钮,将会打开下图所示页面,并按图中的值填写创建新的JDBC 提供程序 设置JDBC 提供程序的棊本配置值,该提拱程序包仓访问数弱库所需的特定供应商JDBC 驱动程序实现类.向导会填写名称和描述字段 >但您也可输入不同的值.作用域〔cells :locmlhostNode01.Cell: nodes: localhostNode01:serv8rs:serverl. *数狂库类型Oracle ▼♦趙理匡塑 _______________Oracle JDBC Driver ▼丨来实施类型|连接池数据源▼♦名称Oracle JDBC Driver EN描述Ordde JDBC Driver EN旦上一步|下一步|取消|步骤1:输入基本数 据憑信息步骤2:选挥JDBC 提供程厚 T 步W2.1:创建新 的JDBC 提供程序步骤2・2:输入数据库类豁径信息步骤3:辐入觀据湧 的特定于数搭库的犀 性步骤4:总结SASfc 据库芙路径信息设宜襪示JDBC 9黝遅序类丈件的环慎吏虽,websphere (R) AppficaUort server 使用它们 来定買JDBC 程序■吐何导页是示文件名,感仅提供这些文件的吕录庇埒・在输入JDBC 36 动程厚文弊位玄时,诸偻用芫茎的目录賂径.洌如:/home/dbzinstl/sqliib/iavat 在Unux (TMJ 上 > ・如果肯謝=走了位,则可单击“下一歩櫛以搖盘语fH* 帆 sreben Q 「acle RATH}1设負这些特定于数霜库的圉生,敷据库供应商JDBC 孔动理序需要这些屈性以交持通过na 粥 谊进轩管童的i 斑.*LIRL _______________________________________________|jdbc:orade: thin:@10.1.231.158: lS21:srcbweben+數捋吞储牆helper^| orade 1 og 歎据存储器 helper丁将上慮秀題用于容鋼管应的甘久性f CMP1下一步,到完成界面,单击“完成”后“保存”到主配置。
WebSphere数据库连接池配置一.数据库连接池配置(WebSphere 6.0)1.登陆配置页面,新建JDBC数据程序:选择“新建”选择下一步保存后将会显示:2.配置jar包把75下面的包抄到需要配置服务器的相同的目录下% cd /opt/IBM/ifxjdbc221jc5/lib% lsifxjdbc-g.jar ifxjdbcx-g.jar ifxlang.jar ifxsqlj-g.jar ifxtools-g.jar xerces.jar ifxjdbc.jar ifxjdbcx.jar ifxlsupp.jar ifxsqlj.jar ifxtools.jar开始配置“类路径”根据上面的页面:显示如下页面:页面中“类路径”${INFORMIX_JDBC_DRIVER_PATH}/ifxjdbc.jar ${INFORMIX_JDBC_DRIVER_PATH}/ifxjdbcx.jar该地方的配置有两种,一种是:直接写绝对路径:/opt/IBM/ifxjdbc221jc5/lib/ifxjdbc.jar/opt/IBM/ifxjdbc221jc5/lib/ifxjdbcx.jar一种是:在“环境- WebSphere变量”中配置INFORMIX_JDBC_DRIVER_PATH配置的值为:/opt/IBM/ifxjdbc221jc5/lib,并保存,如下。
3.开始配置“数据源”选择其他属性-数据源“新建”填写:名称:需要配置的数据库连接池的名称JNDI 名称:需要配置的数据库jndi的名称Informix数据源属性:可以填写,也可以不填。
如果填写可以按照下面的方式填写,下面是10.243.178.225 testa数据库的配置Informix 数据源属性如果不填,则需要配置配置其他属性-定制属性新建password新建uesr点击应用并保存配置。
4.测试连接登陆到一下界面,选择需要测试的数据库连接池,点击测试连接,显示的消息如:消息在节点BI_CH2Node01 上的服务器server1 上,数据源表示数据库连接池配置成功。
JNDI方法连接数据库用了JNDI之后的做法:首先,在在J2EE容器中配置JNDI参数,定义一个数据源,也就是JDBC引用参数,给这个数据源设置一个名称;然后,在程序中,通过数据源名称引用数据源从而访问后台数据库1.创建一个web工程,把mysql的驱动包放到lib中,或者在Tomcat6.0的安装目录下的lib文件夹放入mysql的驱动包。
2. 在Tomcat6.0的安装目录下,找到conf/ context.xml,打开context.xml进行修改:在<context> </context>中加入如下内容:<Context><Resource name=" test"//JNDI的名字随便写auth="Container"type="javax.sql.DataSource"driverClassName="com.mysql.jdbc.Driver"url="jdbc:mysql://localhost:3306/info "username="root" //访问数据库的用户名password="dp" //数据库密码maxActive="10" //连接池的最大数据库连接数。
设为0表示无限制。
maxIdle="30" //maxIdle,最大空闲数,数据库连接的最大空闲时间。
超过空闲时间,数据库连接将被标记为不可用,然后被释放。
设为0表示无限制。
maxWait="10000" /> //maxWait最大建立连接等待时间。
如果超过此时间将接到异常。
设为-1表示无限制。
</Context>2 在项目的WEB-INF/web.xml,中修改web.xml:在<web-app></wep-app>中加入<resource-ref><description>DB Connection </description>//描述(可不要)<res-ref-name>test</res-ref-name><res-type>javax.sql.DataSource</res-type><res-auth>Container</res-auth></resource-ref>4.JSP测试代码index.jsp<%@page import="java.sql.*"%><%@page import="javax.sql.*"%><%@page import="javax.naming.*"%><%try {Context ctx = new InitialContext();DataSource ds = (DataSource)ctx.lookup("java:comp/env/message");//获得数据源Connection conn = ds.getConnection();Statement st = conn.createStatement();ResultSet rs = st.executeQuery("select * from tb_message");while(rs.next()){out.println(rs.getString(3) + "<br/>");}out.println("测试成功");} catch (NamingException e) { e.printStackTrace();} catch (SQLException e) {e.printStackTrace();}%>。
报表软件FineReport Websphere配置JNDI连接
问题描述
由于常用服务器的JNDI驱动过大,软件并不自带,所以通常采取下面的方法来使用服务器中的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,在其中添加一部分内容。
<resource-ref>
<description>Oracle DB connection</description>
<res-ref-name>jdbc/oracle</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</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
若出现下图所示画面,则说明配置成功。