24.7 Understanding One-Click Remote Application Deployment

Deploy an application to remote Oracle APEX instances using REST Enabled SQL references.

24.7.1 About One-click Remote Application Deployment

One-click remote application deployment leverages the existing REST Enabled SQL references that works with a Oracle REST Data Services (ORDS) REST Enabled SQL Service.

One-click remote application deployment is authenticated through first party authentication (Basic Authentication), Schema Authentication (database username and password), or OAuth 2 Client Credentials. When you create a REST Enabled SQL reference in Shared Components, you either specify an existing credential, or create a new credential. Optionally create the credentials as empty credentials to prompt for client ID and client secret each time the REST Enabled SQL reference is used.


Oracle recommends always using empty credentials for remote application deployment in shared development environments so only those with the knowledge of those credentials can deploy applications or run SQL or PL/SQL on the REST Enabled SQL reference.

24.7.2 Remotely Deploying an Application

Access the Remote Deployment option from the Export/Import option in App Builder.

To remotely deploy an application:

  1. Create an application.
  2. Optional: Create supporting object installation scripts to create the underlying table and insert the rows.
  3. Navigate to the Remote Deployment page:
    1. On the Workspace home page, click the App Builder icon.
    2. Select an application.
    3. On the Application home page, click Export/Import.
    4. Click Remote Deployment.
  4. On Deployment Server, select an existing REST Enable SQL Service or click the plus (+) icon to create a new one.
  5. To create a new REST Enable SQL Service:
    1. Click the plus (+) icon.
    2. Name - Enter a descriptive name for this REST Enabled SQL Service.
    3. Endpoint URL - Enter the base URL for this REST Enabled SQL Service. Include the ORDS context root and schema URL prefix, (for example, https://host:port/ords/schema, but do not add /_/sql.
    4. Click Next.
    5. Credentials - Select the credential to authenticate against. To edit an existing credential, navigate to Credentials in Shared Components.
      To create new credentials, enter a Credential Name and select an Authentication Type.
    6. Click Create.
  6. On Remote Deployment:
    1. Deployment Server - Select an existing REST Enable SQL Service.
    2. Client ID - For Basic Authentication, enter the database user name. For OAuth2, enter the client ID.
      This information will not be encrypted. User names for Basic Authentication are converted to upper case. To include a case-sensitive user name, prefix it with the exclamation mark (!).
    3. Client Secret - Enter the password or OAuth2 Client Secret. This information is stored encrypted and cannot be retrieved in clear text.
    4. Click Next.
    The Remote Deployment Options page appears.
  7. Under Deploy Application:
    1. Build Status - Set the build status of the application. Options include:
      • Run Application Only - Users can only run an application. This option is an effective way to protect an application from modifications from other developers.

      • Run and Build Application - Developers and users can both run and develop the application.

      This setting can be changed when importing using the APEX Web interface but not the command line interface.
    2. As of - Specify a time in minutes to go to back to for your export. This option enables you to go back in time in your application, perhaps to get back a deleted object.
      This utility uses the DBMS_FLASHBACK package. Because the timestamp to System Change Number (SCN) mapping is refreshed approximately every five minutes, you may have to wait that amount of time to locate the version for which you are looking. The time undo information is retained and influenced by the startup parameter UNDO_RETENTION (the default is three hours). However, this only influences the size of the undo tablespace. While two databases can have the same UNDO_RETENTION parameter, you are able to go back further in time on a database with fewer transactions because it is not filling the undo tablespace, forcing older data to be archived.
  8. Under Export Preferences:
    1. Export Supporting Object Definitions - Supporting object definitions include all configuration options and scripts and enable an application export to include database object definitions, image definitions, and seed data SQL statements encapsulated in a single file. Options include:
      • Yes - Includes supporting object definitions in the application export. Does not automatically load supporting objects when invoked from a command line.

      • No - Does not include the supporting object definitions in the export.

      • Yes and Install on Import Automatically - Includes supporting object definitions and a call to install supporting objects in the application export.

    2. Export Public Reports - Specify whether to include public reports with your application. Public reports are the public shared report settings saved by users from an interactive report or interactive grid.
      • On - Include public reports in the application export.

      • Off - Do not include public reports in the application export.

    3. Export Private Reports - Specify whether to include private reports with your application. Private reports are the private customized settings saved by users from an interactive report or interactive grid.
      • On - Include private reports in the application export.

      • Off - Do not private public reports in the application export.

    4. Export Report Subscriptions - Specify whether to include interactive report or interactive grid subscription settings with your application. This will be limited to the unexpired subscription settings of all users for all interactive reports or interactive grids in the application.
      • On - Include report subscriptions for the reports you are exporting in the application export.

      • Off - Do not include report subscriptions for the reports in the application export.

    5. Export Developer Comments - Specify whether to include Developer Comments in your application export.
      • On - Include Developer Comments in the application export.

      • Off - Do not include Developer Comments in the export.

    6. Export Translations - Specify whether to include translations with your application export. Translation Text Messages and Dynamic Translations are always included in the application export. .
      • On - Include the translation mappings and all text from the translation repository.

      • Off - Do not include translation mappings or the translation repository.

  9. On Deployment Overrides:
    1. Owner Override - Use this attribute to import this application into the available schemas defined by your REST Enabled SQL connection. If there are no entries to select, then this connection is not mapped to any workspaces, and you will not be able to deploy the application.
    2. Workspace Override - Select the workspace where the application should be deployed from the list. If there are no entries in the list, then the database user associated with the REST Enabled SQL connection is not mapped to any workspaces.
    3. Overwrite Existing Application - Specify whether to overwrite the application on the target system. Available options include:
      • On- The application will be deployed with the same application ID as this application and the application will be overwritten on the target system.

      • Off - You must specify the application ID for the target system.

    4. Application ID Override - Specify a new application ID for the application on the target system.
    5. Application Alias Override - Specify a new alternate alphanumeric application identifier. You can use this identifier in place of the application ID. The value is defaulted to the application alias of the current application.
  10. Click Deploy.