一、环境 1. DB1: 10g, Redhat linux AS3.0 IP: 192.168.0.14 2. AS1: win2003, iAS10 with form&report only IP: 192.168.0.16 fmx and rep: c:\geo iAS Home: c:\oracle\ias report server: rep_test03, rep10g 3. AS2: win2000, iAS10 with form&report only IP: 192.168.0.43 fmx and rep: c:\geo report server: rep_load
二、步骤 我计划测试两种方式,一种是两个report server 在同一台机器, 另一种方式为两个分别在不同的机器上. 首先,测试在同一台机器的情况, 采用第二台机器AS1 1. 创建两个report service, 在命令行方式下分别运行 c:\oracle\ias>rwserver -install rep16_1.cluster1 c:\oracle\ias>rwserver -install rep16_2.cluster1 Oracle 询问是否创建该服务,确认. 在“服务”里, 启动这两个服务,oracle 会自动在<oraclehome>\reports\conf下创建rep16_1.cluster1.conf 和rep16_2.cluster1.conf两个文件。 1.1 修改这两个文件, 添加两个环境 <environment id="UTF8"> <envVariable name="NLS_LANG" value="AMERICAN_AMERICA.UTF8"/> </environment> <environment id="zhs"> <envVariable name="NLS_LANG" value="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"/> </environment> 1.2 添加诸如报表路径,临时目录, 默认环境ID <engine id="rwEng" class="oracle.reports.engine.EngineImpl" initEngine="1" maxEngine="1" minEngine="0" engLife="50" maxIdle="30" callbackTimeOut="60000"> <property name="sourceDir" value="c:\geo;C:\WINDOWS\Fonts"/> <property name="tempDir" value="c:\geo"/> <property name="defaultEnvId" value="zhs"/> <!--property name="sourceDir" value="your reports source directory"/--> <!--property name="tempDir" value="your reports temp directory"/--> <!--property name="keepConnection" value="yes"/--> </engine>
2. 创建供这两个report service单独使用的public key 和private key 文件。在命令行下运行 c:\oracle\ias\reports\jlib>rwgenkey pub.key priv.key Oracle 在当前目录c:\oracle\ias\reports\jlib创建了两个key文件.
3. 在report service的.conf文件里包含这两个key, <connection maxConnect="20" idleTimeOut="15"> <orbClient id="RWClient" publicKeyFile="clientpub.key"/> <!--cluster publicKeyFile="serverpub.key" privateKeyFile="serverpri.key"/--> <cluster publicKeyFile="C:\Oracle\ias\reports\jlib\pub.key" privateKeyFile="C:\Oracle\ias\reports\jlib\priv.key"/> </connection>
4. 重新启动两个report service.
5. 在应用里对原来report server的请求改为对cluster1的请求. serverURL仍旧使用原有的/report/rwservlet
6. 测试报表, 报错, http://192.168.0.16/reports/rwservlet/showjobs?server=rep16_1.cluster1 和 http://192.168.0.16/reports/rwservlet/showjobs?server=rep16_2.cluster1 发现报表实际上是完成了, 可惜, 没有拿到 
|