2.4 Setting Up Your System

The way you set up Oracle Reports Services can vary widely depending upon the requirements of your system. Before you set up Oracle Reports Services, you must make some decisions based upon your requirements. By making these decisions beforehand, you can greatly simplify the setup process.

The following subsections discuss some of the decisions involved in:

2.4.1 Choosing the Types of Requests You Will Service

Oracle Reports Services can be configured to accept both Web and non-Web job requests.

In the Web case, you can run reports by clicking or typing a URL in a Web browser. Depending on the URL, the report output is then served back to you in your browser or sent to a specified destination (for example, a printer). To enable users to launch reports from a browser, you will use either Oracle Reports Servlet (rwservlet) or a JSP with your Web server. One or the other of these components must be present on the Web server to enable communications between it and Oracle Reports Services and to enable the processing of report requests from Web clients.

In non-Web cases, you can send job requests using the rwclient component, installed on each of your user's machines.

From the perspective of configuration, these are the key differences between enabling Web and non-Web requests:

  • Enabling Web requests requires that you choose between Oracle Reports Servlet (rwservlet) or JSP for the server side, but eliminates the need to install any client software beyond a standard Web browser.

  • Enabling non-Web requests requires that you install client software on each machine that will be used to run requests. This introduces the need to administer client software on each client machine.

    The client software could be:

    • An Oracle Developer Suite installation, which can be used to submit reports requests through rwclient or rwrun.

    • A utility such as the Oracle Reports Java EE Thin Client, which is available on the Oracle Technology Network (OTN). Note that this utility is supported only through Discussion Forums on OTN.

The Web case is clearly the most cost effective because it reduces client maintenance costs. But there might be cases where launching non-Web requests is a necessity. Oracle Reports Services supports the implementation of both Web and non-Web requests in a single deployment environment.

2.4.2 Choosing Oracle Reports Servlet, JSP, or Web Services

To use Oracle Reports Services in a Web environment, you must use Oracle Reports Servlet (rwservlet), Reports Web Services, or Reports JSP.

Between Oracle Reports Servlet (rwservlet) and Reports JSP there are additional considerations. A JSP-only implementation means that you can publish a layout that is optimized for Web delivery (that is, the Oracle Reports Web Layout). Oracle Reports Servlet (rwservlet) enables you to include paper layouts in your report publishing solution and fully leverage the distribution features of Oracle Reports Services.

Using Oracle Reports Servlet (rwservlet) does not imply that you cannot also use JSP files, because JSP files can contain both Web and paper layouts. When you run a report stored in a JSP, you specify the servlet in the URL and call the JSP with the command line option report=myreport.jsp. In this case, report output is created based on the paper layout.

For more information on running reports, see Chapter 17, "Running Report Requests".

2.4.3 Choosing Single or Multiple-Machine Configurations

You can place Oracle Reports Services on the same machine as your Web server or on a different machine. Both scenarios have pros and cons.

For example, while it's true that having Oracle Reports Services and the Web server on the same machine requires more of the machine's memory and disk space, it's also true that such an implementation reduces network traffic. This is because requests traveling between the Web server and the application server do not have to travel across a network, only incoming requests must do so.

If you are using the in-process Reports Server (available only with Oracle Reports Servlet (rwservlet) implementations) you can further amplify the performance advantages of a single machine. The in-process Reports Server speeds up processing time by allowing for faster and more efficient communication between Oracle Reports Services components. We recommend that you use the in-process Reports Server unless you will not use Oracle Reports Servlet (rwservlet) to deploy reports.

On the other hand, if you have a single machine configuration and that machine fails, everything fails.

While there is a greater amount of network traffic when the Web server and the application server are on different machines, you also benefit from the increase in system resources, in the form of additional CPUs, more disk space, and more available memory. Even in a multiple machine configuration, the in-process Reports Server will aid performance by speeding communication between Oracle Reports Services components.

Another possibility is placing your Web server and your application server each on multiple machines. This will require additional configuration, but it enables you to implement load balancing on the Web server.

By using the environment switching feature it is possible to spawn Reports Engines with different environment settings, including language, in the same Reports Server. Refer to Section 7.2.2, "Dynamic Environment Switching" for more information.