Overview Oracle Reports Services

2-4 Publishing Reports to the Web with Oracle Reports Services ■ The data tier, including databases and pluggable data sources The client software could be: ■ A rwclient ■ A browser The way you set up the tiers can range from having all of them on one machine to having each of them on a separate machine. Additionally, you can have multiple Web servers on multiple machines as well as multiple application servers on multiple machines. Refer to the Oracle Fusion Middleware Installation Planning Guide for more information on sample topologies. If you choose to have your Web server on multiple machines, you can cluster and load balance multiple Oracle Fusion Middleware instances for a highly available, fail-safe environment. Oracle Reports Services provides event-based reporting. This uses database events to trigger the generation of a report. For example, you can define an event that signals a change in revenue levels above or below a particular watermark. If the change occurs in the database the event, a report is automatically generated. This feature is discussed in detail in Chapter 21, Using Event-Driven Publishing . Oracle Reports Services includes a distribution module that uses XML to define unique configurations for the distribution of reports. Call the desired XML file from the runtime command line or URL to generate one report, and let the server handle diverse outputs and destinations. Processing time is significantly reduced and configuration changes can all be handled within the XML file. This feature is discussed in detail in Chapter 20, Creating Advanced Distributions . Note: Do not use server=clustername statements while calling jobs from an HA Reports Sever. For calling jobs from an HA Reports server, you must use a load balancer. Refer to the Oracle Fusion Middleware Installation Planning Guide for information on load balancing. Refer to the Oracle Fusion Middleware Enterprise Deployment Guide for Java EE and Oracle Fusion Middleware High Availability Guide for information on enterprise deployment architectures and high availability. Understanding the Oracle Reports Services Architecture 2-5

2.3.2 Oracle Reports Services Components

Figure 2–1 Oracle Reports Services Components Figure 2–1 illustrates the components of a working Oracle Reports Services environment. This includes:

1. The Oracle HTTP Server, a Web server provided by Oracle Fusion Middleware. It

incorporates an OpenSSL module to provide support for Secure Sockets Layer SSL and HTTP Secure Sockets Layer HTTPS. It also provides a servlet engine to support the running of Java servlet applications.

2. The module mod_weblogic, used by the Oracle HTTP Server to redirect requests

from servlets and JSPs to Oracle WebLogic Server. WebLogic Server provides a complete Java EE environment that includes a JSP translator, a JSP servlet engine OJSP, and an Enterprise JavaBeans EJB container. It provides a fast, lightweight, highly scalable, easy-to-use, complete Java EE environment. It is written entirely in Java and executes on the standard Java Development Kit JDK Virtual Machine JVM.

3. The module mod_osso, used by the Oracle HTTP Server to connect to Single

Sign-On Server. The Single Sign-On Server, in turn, uses Oracle Internet Directory.

4. Oracle Reports Servlet

rwservlet, a component of Oracle Reports Services that runs inside the Web servers servlet engine. Oracle Reports Servlet rwservlet translates and delivers information between HTTP and Reports Server. It uses Single Sign-On Server for authentication. Oracle Reports Servlet includes: 2-6 Publishing Reports to the Web with Oracle Reports Services ■ The in-process Reports Server, which reduces the maintenance and administration of the Reports Server by providing a means for starting the server automatically, whenever it receives the first request from the client through rwservlet or a Reports JSP.

5. The Custom Tag Handler, which processes custom Oracle Reports tags included

in a JSP file. In a JSP file, Oracle Reports-related custom tags are identified by the prefix rw:; other custom tags using other prefixes may also be present.

6. The Reports Server rwserver, which processes client requests, including

ushering them through its various services, such as security authentication and authorization, job scheduling, caching, publishing, and bursting and distribution including distribution to custom—or pluggable—output destinations. The security service offers authentication based on the following methods: ■ Oracle Internet Directory ■ Java Platform Security JPS Oracle Internet Directory ■ Any LDAP-based ID Store using Java Platform Security JPS The security service offers authorization based on the following methods: ■ Java Platform Security JPS Oracle Internet Directory ■ XML file-based ■ Portal-based The bursting and distribution service enables the distribution of reports to multiple destinations, such as wireless, printer, FTP server, Portal, WebDAV, browser, and e-mail. The publishing service publishes Reports into multiple output formats, such as PDF, HTML, XML, and spreadsheet. The Reports Server also spawns runtime engines for generating requested reports, fetches completed reports from the Reports Server cache, and notifies the client that the job is ready. Reports output can be stored in the Reports cache or on a physical disk.

7. The Reports Server Cache, which securely stores completed job outputs.

8. The Reports Engine, which includes components for running SQL-based and

pluggable data source-based reports. It fetches requested data from the data source, formats the report, sends the output to cache, and notifies the Reports Server that the job is complete. The Reports engine also includes pluggable data sources, which are custom data sources like text, database, JDBC, OLAP, XML, and web services.

9. The pluggable data sources, a set of design-time and runtime Java APIs that

provide openness to Reports by enabling data input from numerous sources through the implementation of the PDS Java Interface. The PDS feature enables developers to leverage Reports’ aggregation, summarization, formatting, and scheduling capabilities not only on data that is accessed through SQL, but also on data that is available elsewhere.

10. The pluggable engines, which are custom engines that use Java APIs to pass jobs

to the Reports Server, as well as leverage the servers other features, such as scheduling, distribution, notification, and caching. Oracle Reports Services provides an out-of-the-box pluggable engine called the URL engine. The URL engine enables you to distribute content from any publicly available URL to destinations such as e-mail, Oracle Portal, and WebDAV. In addition to the Reports Services components, Figure 2–1 depicts the following: