13.3 Registering Destination Types with the Server

Before Oracle Reports Services can send a report to a particular destination type, the type must be a default type (printer, e-mail, cache, or file) or a type registered in the server configuration file, rwserver.conf. The configuration file contains a destination element for registering destination types that are valid for your reports. You can register anywhere from zero to any number of destination types.

Registering a destination type with the server involves:

These tasks are described in the following sections.

13.3.1 Setting Up a Destination Section in the Server Configuration File

To set up a destination section in the rwserver.conf file:

  1. Open the server configuration file with your preferred text editor.

    You'll find the server configuration file in the following directory (Windows and UNIX use the same path):

    ORACLE_INSTANCE\config\ReportsServerComponent\server_name\rwserver.conf
    
  2. If the configuration file does not have a destination section, create one underneath the element that precedes it in the configuration file's data type definition file (rwserverconf.dtd) section.

    Note:

    The server configuration file follows the order of elements defined in the file's related document type definition file (ORACLE_HOME\reports\dtd\rwserverconf.dtd). Place destination after the elements that precede it, whichever are present in your server configuration file.

  3. Use the following syntax to register all the destination types you will use for outputting reports:

    <destination destype="output_type_1" class="java_class_1">
    <property name="valid_destype_property" value="valid_value"/>
    <property name="valid_destype_property" value="valid_value"/>
    </destination>
    <destination destype="output_type_2" class="java_class_2">
    <property name="valid_destype_property" value="valid_value"/>
    </destination>
    

    The valid values for these tags are discussed in the following sections.

13.3.2 Entering Valid Values for a Destination

This section outlines the destinations supported by Oracle Reports.

13.3.2.1 Destination destypes and classes

The destype and class attributes are required for valid registration of a nondefault output type. They specify the destination types and their associated Java classes. The predefined (default) destination types and classes that come with Oracle Reports Services are listed in Table 13-1:

Table 13-1 Standard Destination Types and Classes

Destination destype Class

Oracle Portal content area

oraclePortal

oracle.reports.server.
DesOraclePortal

SMTP-compliant e-mail

mail

oracle.reports.server.DesMail

file

file

oracle.reports.server.DesFile

cache

cache

oracle.reports.server.DesCache

printer

printer

oracle.reports.server.DesPrint

FTP

ftp

oracle.reports.plugin.destination.ftp.DesFTP

WebDAV

WebDAV

oracle.reports.plugin.destination.webdav.DesWebDAV


See Also:

Section A.5.31, "DESTYPE" for examples of pushing a report using the oraclePortal destype.

You are not limited to the predefined destypes and classes provided with the server. You can register custom destination types, such as a fax, once you have defined a custom handler (through the Destinations API).

Note:

For more information on the available APIs for Oracle Reports, refer to the Reports Software Development Kit (RSDK) on the Oracle Technology Network (OTN): on the Oracle Reports page (http://www.oracle.com/technology/products/reports/index.html), click SDK.

13.3.2.2 Destination Property name/value Pairs

The server configuration file allows the association of an unlimited number of properties with a registered destination. Destination properties consist of name/value pairs that define some aspect of an output type's configuration. They are expressed in terminology recognized by the destination type. For example, a destination with a destype of oraclePortal would recognize the name/value pair:

<property name="portalUserid" value="portal_id/portal_password@portal_schema"
encrypted="no"/>

This example defines the values to be associated with a portal user ID. It includes the encrypted attribute, which indicate that the values within this element should be encrypted; encrypted="no", which indicates that the values are not yet encrypted. The next time the Reports Server starts, it will automatically encrypt the values and reset encrypted to yes.

Note:

Elements and attributes allowable in server configuration file are determined by the syntax defined in the rwserverconf.xsd file (ORACLE_HOME\reports\dtd\rwserverconf.xsd). This is discussed in detail in Chapter 8, "Configuring Oracle Reports Services".

What is valid for a destination type's properties depends entirely on the destination type. These values do not come from Oracle Reports and are not put to use by the Reports Server. They come from the destination type itself and use terms the destination recognizes. It is up to the developer to understand the requirements of a custom destination and to know what properties to associate with a given custom output type.

When we begin to discuss distribution, you may note that within the distribution XML file, the destype element also allows for the use of property name/value pairs. It is important to make a distinction between properties entered for a destination element in the server configuration file and those entered for a destype element in the distribution XML file:

  • Properties entered for a destination element in the server configuration file should deal only with configuring an output type, for example setting an allowable number of retries for a destination fax.

  • Properties entered for a destype element in the distribution XML file should deal only with specifying a runtime parameter, for example the identity of the fax's intended recipient.

13.3.3 Example Destination

The following example illustrates a destination element for pushing content into Oracle Portal:

<destination destype="oraclePortal" class="oracle.reports.server.DesOraclePortal">
  <property name="portalUserid" value="<username_pwd_tnsname_for_logon_to_portal>"
     encrypted="yes"/>
</destination>