C About the Oracle REST Data Services Configuration Files
C.1 Locating Configuration Files
Use the configdir
command to display the current location of the configuration files:
java -jar ords.war configdir
If the configuration folder has not yet been configured, the message: The config.dir setting is not set
, is displayed. If it has been configured, the current value of the setting is displayed.
C.3 Understanding the Configuration Folder Structure
The configuration folder has the following structure:
./ | +-defaults.xml +-apex.properties* +-url-mapping.xml | +conf/ | +-apex.xml +-apex_al.xml +-apex_rt.xml +-apex_pu.xml | ... +-(db-name).xml +-(db-name)_al.xml +-(db-name)_rt.xml +-(db-name)_pu.xml
Global settings that apply to all database connections are stored in defaults.xml
.
Settings specific to a particular database connection (for example, the default apex
connection) are stored in conf/
<db-name>
.xml
, where <db-name>
is the name of the database connection.
If the database connection uses Oracle Application Express RESTful Services, the files with names including _al.xml
, _rt.xml
, and _pu.xml
store the configuration for the APEX_LISTENER
, APEX_REST_PUBLIC_USER
, and ORDS_PUBLIC_USER
database users, respectively.
If the database connection uses Oracle REST Data Services RESTful Services, the file <db-name>
_pu.xml
stores the configuration for the ORDS_PUBLIC_USER
database user.
C.4 Understanding the Configuration File Format
Configuration files use the standard Java XML properties file format, where each configuration setting contains a key and a corresponding value. The following is an example of a defaults.xml
file:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties> <entry key="db.connectionType">basic</entry> <entry key="db.hostname">localhost</entry> <entry key="db.port">1521</entry> <entry key="db.sid">orcl</entry> <entry key="jdbc.DriverType">thin</entry> <entry key="jdbc.InitialLimit">3</entry> <entry key="jdbc.MinLimit">1</entry> <entry key="jdbc.MaxLimit">10</entry> <entry key="jdbc.MaxStatementsLimit">10</entry> <entry key="jdbc.InactivityTimeout">1800</entry> <entry key="jdbc.statementTimeout">900</entry> <entry key="jdbc.MaxConnectionReuseCount">1000</entry> </properties>
C.4.1 Understanding the url-mapping.xml File Format
The url-mapping.xml
file stores the rules that route requests to the appropriate database when more than one database is configured. The following is an example of a url-mapping.xml
file:
<pool-config xmlns="http://xmlns.oracle.com/apex/pool-config"> <pool name="sales_db" base-path="/sales" workspace-id="sales_rest"/> </pool-config>
C.5 Understanding Configurable Parameters
Table C-1 lists editable parameters for the defaults.xml
and (db-name).xml
configuration files.
Note:
Oracle recommends users to use the Oracle REST Data Services command-line interface and Oracle SQL Developer Oracle REST Data Services Administration to edit the configuration files.
Table C-1 Oracle REST Data Services Configuration Files Parameters
Key | Type | Description | Example | Setting Type |
---|---|---|---|---|
|
string |
This parameter is deprecated, instead use |
|
Pool specific |
|
boolean |
Supported values:
For caching to be enabled, this must be set to true and the |
|
Global |
|
string |
The directory location for the cache files. |
|
Global |
|
string |
Supported values:
Required for expire cache type. |
|
Global |
|
numeric |
Required for expire cache type. Defaults to 7. |
|
Global |
|
numeric |
Required for lru cache type. Defaults to 500. |
|
Global |
|
numeric |
Interval time is specified in minutes. If the cache type is expire, Oracle REST Data Services, checks the cache every Defaults to 60. |
|
Global |
|
string |
Specifies the procedure names to allow for caching of their files. Procedure names can contain the wildcard characters asterisk ( Each procedure name must be separated by a comma. |
|
Global |
|
string |
Supported values:
|
|
Global |
|
string |
The type of connection. Supported values:
|
|
Pool specific |
|
string |
Specifies the JDBC URL connection to connect to the database. |
|
Pool specific |
|
string |
Specifies the host system for the Oracle database. |
|
Pool specific |
|
string |
Specifies the password of the specified database user. Include an exclamation at the beginning of the password so that it can be stored encrypted. |
! |
Pool specific |
|
numeric |
Specifies the database listener port. |
|
Pool specific |
|
string |
Specifies the network service name of the database. |
|
Pool specific |
|
string |
Specifies that the pool points to a CDB, and that the PDBs connected to that CDB should be made addressable by Oracle REST Data Services (see Making All PDBs Addressable by Oracle REST Data Services (Pluggable Mapping)). |
|
Pool specific |
|
string |
Specifies the name of the database. |
|
Pool specific |
|
string |
Specifies the TNS alias name that matches the name in the |
|
Pool specific |
|
string |
The directory location of your |
|
Pool specific |
|
string |
Specifies the name of the database user for the connection. |
|
Pool specific |
|
boolean |
Specifies whether to display error messages on the browser. Supported values:
|
|
Global |
|
boolean |
Specifies whether to retain the error messages. Supported values:
|
|
Global |
|
numeric |
Specifies the total number of error messages to retain. Defaults to 50. |
|
Global |
|
string |
Specifies the path to a folder that contains the custom error page. |
|
Global |
|
numeric |
Specifies the Internet Content Adaptation Protocol (ICAP) Port to virus scan files. The |
|
Global |
|
string |
Specifies the Internet Content Adaptation Protocol (ICAP) Server name to virus scan files. The |
|
Global |
|
string |
Specifies the JDBC driver type. Supported values:
|
|
Pool specific |
|
numeric |
Specifies how long an available connection can remain idle before it is closed. The inactivity connection timeout is in seconds. Defaults to 1800. |
|
Pool specific |
|
numeric |
Specifies the initial size for the number of connections that will be created. Defaults to 3. (The default is low, and should probably be set higher in most production environments.) |
|
Pool specific |
numeric |
Specifies the maximum number of times to reuse a connection before it is discarded and replaced with a new connection. Defaults to 1000. |
|
Pool specific | |
|
numeric |
Specifies the maximum number of connections. Defaults to 10. (Might be too low for some production environments.) |
|
Pool specific |
|
boolean |
Specifies if the PL/SQL Gateway calls can be authenticated using database users. If the value is |
|
Pool specific |
|
numeric |
Specifies the maximum number of statements to cache for each connection. Defaults to 10. |
|
Pool specific |
numeric |
Specifies the minimum number of connections. Defaults to 1. |
|
Pool specific | |
|
numeric |
Specifies how long a borrowed (in use) connection can remain unused before it is considered as abandoned and reclaimed. The abandoned connection timeout is in seconds. Defaults to 900. |
|
Pool specific |
|
boolean |
Specifies whether to retain the log messages. Supported values:
|
|
Global |
|
numeric |
Specifies the total number of log messages to retain. Defaults to 50. |
|
Global |
|
boolean |
Specifies whether procedures are to be logged. Supported values:
|
|
Global |
|
string |
Specifies the default page to display. The Oracle REST Data Services home page, apex, is commonly used. |
|
Pool specific |
|
numeric |
Specifies the maximum number of rows that will be returned from a query when processing a RESTful service and that will be returned from a nested cursor in a result set. Affects all RESTful services generated through a SQL query, regardless of whether the resource is paginated. Defaults to 10000. |
|
Pool specific |
|
string |
Specifies the name of the document table used by the file upload. Defaults to Note: For APEX 4.x and above this parameter should not be used. |
|
Pool specific |
|
string |
Specifies the procedure name(s) to execute after executing the procedure specified on the URL. Multiple procedure names must be separated by commas. |
|
Pool specific |
|
string |
Specifies the procedure name(s) to execute prior to executing the procedure specified on the URL. Multiple procedure names must be separated by commas. |
|
Pool specific |
|
string |
Specifies the function to be invoked prior to dispatching each Oracle REST Data Services based REST Service. The function can perform configuration of the database session, perform additional validation or authorization of the request. If the function returns true , then processing of the request continues. If the function returns false , then processing of the request is aborted and an HTTP 403 Forbidden status is returned.
|
|
Pool specific |
|
boolean |
If this value is set to Note: The Oracle REST Data Services internal exclusion list blocks the users from accessing the following:
Supported values:
Oracle recommends that you do not set this value to |
|
Global |
|
string |
Specifies a pattern for procedures, packages, or schema names which are forbidden to be directly executed from a browser. Procedure names can contain the wildcard characters asterisk ( Note: Separate multiple patterns using commas. |
|
Global |
|
string |
Specifies a pattern for procedures, packages, or schema names which are allowed to be directly executed from a browser. Procedure names can contain the wildcard characters asterisk ( Note: Separate multiple patterns using commas. |
|
Global |
|
numeric |
Specifies the maximum number of cached procedure validations. Defaults to 2000. Set this value to 0 to force the validation procedure to be invoked on each request. |
|
Global |
|
string |
Specifies an authentication function to determine if the requested procedure in the URL should be allowed or disallowed for processing. The function should return |
|
Pool specific |
string |
Specifies a validation function to determine if the requested procedure in the URL should be allowed or disallowed for processing. The function should return true if the procedure is allowed; otherwise, return false. |
|
Pool specific | |
boolean |
Specifies whether HTTPS is available in your environment. Supported values:
If you change the value to false, see Using OAuth2 in Non-HTTPS Environments. |
|
Global | |
string |
When using the SODA REST API, specifies the default number of documents returned for a GET request on a collection when a limit is not specified in the URL. Must be a positive integer, or "unlimited" for no limit. Defaults to 100. |
|
Pool specific | |
string |
When using the SODA REST API, specifies the maximum number of documents that will be returned for a GET request on a collection URL, regardless of any limit specified in the URL. Must be a positive integer, or "unlimited" for no limit. Defaults to 1000. |
|
Pool specific | |
|
boolean |
Specifies whether the REST-Enabled SQL service is active. Supported values:
|
|
Pool specific |
See Also:
For more information, see Configuring and Installing Oracle REST Data Services and "Oracle REST Data Services Administration" in Oracle SQL Developer User's Guide.