Beruflich Dokumente
Kultur Dokumente
Version: OU5_1.ppt
Released: 06_JULY_01
HTTP
CORBA/IIOP CORBA/IIOP
OID Oracle9iAS
Portal
All reports are run via the Reports Server. The Oracle9iAS Reports Servers
need to be configured. The Reports Builder too includes a built-in Reports
Server and needs to be configured. The slide shows you the path and
name of both Reports Servers. The configuration file for the Oracle9iAS
Reports Services server is server_name.conf and for the builder it is
rwbuilder.conf. The DTD file for both is rwserverconf.dtd - so the XML
configuration files must adhere to the rules defined in this DTD file.
<server>
<compatible version="6i"/>
…
<persistFile filename="your_filename.dat"/>
…
</server>
tnsnames.ora
rep9isvr.world = (ADDRESS=
(PROTOCOL=tcp)
(HOST=host.company.com)
(PORT=1949)
)
The persistFile element identifies the file that records all job status
information. If you do not specify a file, the server will create one of its
own. You can have only one persistFile per server. The persistFile is
persistent so the file remains intact even when the server is restarted. The
persistFile is a binary file, and therefore can only be used by Oracle9iAS
Reports Services. The showjobs command line option uses the persistFile
to display job information.
<server>
…
<cache class="oracle.reports.cache.RWCache">
<property name="cacheSize" value="50"/> Megabytes
<property name="cacheDir" value="your cache directory"/>
</cache>
…
</server>
The cache element specifies the Java class that defines the server’s cache
implementation. You can have as many property name/value pairs as
needed by your cache implementation class. The default cache Java class
settings looks as you see on the slide. The cache size is specified in
Megabytes. Cache directory specifies the location of the cache. You enter
a standard directory path for this value.
<security id="rwSec"
class="oracle.reports.server.RWSecurity">
<property name="securityUserid"
value="portal_id/portal_password@portal_schema"
confidential="yes" encrypted="no"/>
</security>
…
<destination destype="oraclePortal"
class="oracle.reports.server.DesOraclePortal">
<property name="portalUserid"
value="portal_id/portal_password@portal_schema"
confidential="yes" encrypted="no"/>
</destination>
The security element specifies the Java class that controls server access.
The default security class provided with Oracle9iAS Reports Services relies
on using the Oracle9iAS Portal interface to administer Reports Services
security. During the initial setup you specify the username, password and
portal_schema name for the securityUserid property. Confidential is set to
yes and encrypted is set to no. Since confidential was set to yes - when
the Reports Server is started, the value for securityUserID in the
configuration file is encrypted and the encrypted property will be changed
to yes. This prevents anyone from seeing the username, password, and
portal schema values after the server is restarted.
Destinations are also setup using the server configuration file. There is no
need to register default destinations other than Oracle9iAS Portal. You
need to enter the Oracle9iAS Portal userid, password, and schema
information in a destination element in the configuration file. Again this
information is encrypted following the Reports Server startup since
confidential is set to yes. The encrypted attribute will be changed to yes
following encryption.
<Course name> <Lesson number>-9
[Delete from Slide Master]
Configuring the Reports Server
<engine id="rwURLEng"
class="oracle.reports.urlengine.URLEngineImpl"
initEngine="1" maxEngine="1" minEngine="0" engLife="50"
maxIdle="30" callbackTimeOut="60000"/>
…
You must have at least one engine element in your configuration file. The
engine attribute specifies the Java class that implements the engine. The
default implementation settings are shown on the slide. The initEngine
attribute specifies the number of engines that are started at initialization.
The maxEngine attribute specifies the maximum number of engines of this
type that can run on the server. The minEngine attribute specifies the
minimum number of this type of engine that should be active on the server.
The engLife attribute specifies the number of jobs the engine can run
before the engine is terminated. The maxIdle attribute specifies the number
of minutes of allowable idle time before the engine is shut down, provided
the current number of engines is higher than minEngine. The
callbackTimeOut specifies the number of mSec of allowable waiting time
between when the server calls the engine and the engine calls the server
back.
The first engine on the slide is the engine to run reports. The second
engine is the URL engine. The job elements indicate the functionality of
each engine. The first job element specifies that the rwEng is for the
purpose of running reports. The second job element specifies that the
<Course name> <Lesson number>-10
rwURLEng is for the purpose of running rwurl or URL Engine jobs.
[Delete from Slide Master]
Configuring the Reports Server
<jobStatusRepository
class="oracle.reports.server.JobRepositoryDB">
<property name="repositoryConn"
value="scott/tiger@orcl" confidential="yes"
encrypted="no"/>
</jobStatusRepository>
…
<pluginParam
name="mailServer">your_mail_server.company.com
</pluginParam>
…
<trace traceFile="your_file.trc" traceOpts="trace_all"
traceMode="trace_append"/>
The trace element is used to create a file for tracing your report’s execution
and to specify the objects and activities you want to trace. Trace-all for
traceOpts, logs all possible server and engine information in a trace file.
The trace_append for traceMode will append the trace information to the
end of the existing trace file.
<Course name> <Lesson number>-11
[Delete from Slide Master]
Configuring the Reports Servlet
ORACLE_HOME\reports\conf\rwservlet.properties
CGINODIAG=YES
TRACEOPTS=TRACE_ALL
SERVER_IN_PROCESS=yes
SERVER=<reports_server_name>
IMAGEURL=http://<web_server>:<port>/servlet/rwservlet
RELOAD_KEYMAP=NO
You have several tools to maintain Oracle9iAS Reports Services. You can
use Oracle Enterprise Manager also called OEM, the showjobs command
line option and the Job Status Repository.
OEM provides the following benefits
1. Control the server (start, stop and restart)
2. Monitor server activity
a) server metrics such as CPU load, memory usage, and average
response time
b) queue information
c) trace information
3. Edit server configuration
With the showjobs command line option, you can look at job queue
information and view cached output. You can also delete current jobs.
With the Job Status Repository, you can query job queue information since
the information is stored in a database table.
<Course name> <Lesson number>-14
[Delete from Slide Master]
Integrating Reports Server with OEM
<targets> targets.xml
<target type="oracle_repserv" name="your_repsvr">
<property name="password" value="tiger"
encrypted="true"/>
<property name="host" value="host.company.com"/>
<property name="server" value="your_repsvr"/>
<property name="servlet" value="http://host.company.com
/servlet/rwservlet"/>
<property name="userName" value="scott"/>
<property name="oracleHome" value="ORACLE_HOME"/>
<compositeMembership>
<memberOf type="oracle_ias" name="IAS-1"/>
</compositeMembership>
</target>
…
</targets>
In order for you to manage a Reports Server using OEM, you need to
include the information in the targets.xml file. The slide shows you an
example. The target type for a Reports Server is oracle_repserv. You
include the Reports Server name in the name attribute. You will need to
include the reports servlet information and the reports host machine
information. You will also need to include the username and password
information for the Reports Server. For a secure server, this is the
username and password you entered in the security element in the
<server_name>.conf file. This is used for comparing usernames and
passwords between OEM and the Reports Server when shutting down the
Reports Server via OEM. The password will be encrypted after you restart
OEM.
• Job id
• Job type
• Job name
• Job status - click to view output or delete job
• Job owner
• Output type, and output name
• Server name
• When queued, started, and finished
The showjobs command line option provides you job queue information.
You need to specify the Reports Server you want query. The information
that can be obtained with this command is shown on the slide. After you
run the showjobs command line in the URL - you can view the cached
output of a completed job by clicking on the job status column of a
completed job. You can delete a job that is running by clicking on the job
status column of a job that is currently running. The default statusformat
for showjobs is html. You can also get an XML and XML with the inline
DTD using the xml and xmldtd statusformat options respectively.
scott/tiger@orcl
Oracle
Login Access Control Information
Server
Oracle9iAS
OID Reports Server Portal Repository
Reports Servlet
Reports Servlet CORBA / IIOP
Reports Server Reports Server
In-Process Stand-Alone
Server Server
Setting Server_In_Process=yes Server_In_Process=no
(rwservlet.properties) (rwservlet.properties)
Location Reports Servlet Independent
Starting Up Automatic with job Must be started
Performance Faster Slower
Cluster No Yes
Tuning the Reports Engine. Here are some points to remember - Report
engines take memory, it takes time to start an engine, the more an engine is
reused it can lead to memory leaks and faster the machine the faster the
communication between the Reports Server and the engine.
Bearing these in mind, the more engines that are up and running the faster
the response time but it uses more memory. The choice depends on the
load, for a high constant load you would need more engines running. For
low loads with occassional peaks, you can have fewer engines running.
For high constant loads it is better to have the maxEngine and minEngine
close together to prevent engines from starting up and shutting down in
high volume situations.
<server_name>.<cluster_name>.conf
<connection …>
<cluster
publicKeyFile="ORACLE_HOME\reports\server\yourpubkey"
privateKeyFile="ORACLE_HOME\reports\server\yourprikey"/>
</connection>
To setup a peer-level cluster, you need to create a new public key and a
private key. You use the command shown on the screen to create these
keys. Each server in the cluster must have the same public and private
keys in the server configuration file. The reports servers are then restarted
after the configuration files have been changed.
You can use expiration and tolerance with rwclient, rwservlet and rwcgi.
Use tolerance to set the maximum acceptable time for reusing a report’s
cached output when a duplicate job is detected. Setting the time tolerance
on a report reduces the processing time when duplicate jobs are found.
However, you need to balance the need for current information versus the
time to rerun the report. If tolerance is not specified, then Oracle9iAS
Reports Services reruns the report even if a duplicate report is found in
cache.
Use expiration to define how long the report output can exist in cache
before it is deleted. Again here, you will need to balance the need for
<Course name> <Lesson number>-22
current information, cache file space, and time to rerun the report. If
expiration is not specified then Oracle9iAS Reports Services rer ns the
[Delete from Slide Master]
Running Reports using Oracle9iAS
Reports Services
Now that pluggable data sources have been introduced with Oracle9iAS
Reports Services, the need for Single-Sign-On authentication to all data
sources must be satisfied. This is done with OID. Before the OID can be
used, users need be entered. This can be done manually or if you have
some other LDAP compliant directory you can use an OID tool to populate
the directory.
Report Parameters
Enter values for the parameters
P Lastname
Running a report via the Reports Servlet. You can specify the complete
URL as shown on the slide. You can also use a key and specify the
parameters for the key in the cgicmd.dat file. The Reports servlet runs
paper reports only.
<rw:report id="report"
parameters="server=your_repsvr&userid=hr/hr@orcl">
…
</rw:report>
Running a JSP report. You can use the URL as shown on the slide to run a
JSP report. You can also use the parameters attribute of the rw:report tag
to specify default parameters. You can also use a key mapping with the
key parameters specified in the cgicmd.dat file.
Key mapping provides many advantages - it shortens the URL, you can
change runtime commands without affecting the URL, you can standardize
on typical runtime configurations within a company, you can hide sensitive
information such as usernames and passwords. You can also restrict the
parameters that can be used.
;PaperReports
XMLdata: server= repsvr userid= hr/hr@orcl report=Inventory.rdf
destype=cache desformat=PDF
P_FileLocation="FILE://D|/examples/XML_PDS/scripts/"
Key mapping provides many advantages - it shortens the URL, you can
change runtime commands without affecting the URL, you can standardize
on typical runtime configurations within a company, you can hide sensitive
information such as usernames and passwords. You can also restrict the
parameters that can be used.