Oracle Apex Release Notes

Download as pdf or txt
Download as pdf or txt
You are on page 1of 56

Oracle® APEX

Release Notes

Release 23.1
F74114-03
June 2023
Oracle APEX Release Notes, Release 23.1

F74114-03

Copyright © 2003, 2023, Oracle and/or its affiliates.

Primary Author: Caryn Dietrich

Contributing Authors: John Godfrey, Terri Jennings

This software and related documentation are provided under a license agreement containing restrictions on
use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your
license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license,
transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse
engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is
prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If
you find any errors, please report them to us in writing.

If this is software, software documentation, data (as defined in the Federal Acquisition Regulation), or related
documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S.
Government, then the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs (including any operating system, integrated software,
any programs embedded, installed, or activated on delivered hardware, and modifications of such programs)
and Oracle computer documentation or other Oracle data delivered to or accessed by U.S. Government end
users are "commercial computer software," "commercial computer software documentation," or "limited rights
data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental
regulations. As such, the use, reproduction, duplication, release, display, disclosure, modification, preparation
of derivative works, and/or adaptation of i) Oracle programs (including any operating system, integrated
software, any programs embedded, installed, or activated on delivered hardware, and modifications of such
programs), ii) Oracle computer documentation and/or iii) other Oracle data, is subject to the rights and
limitations specified in the license contained in the applicable contract. The terms governing the U.S.
Government's use of Oracle cloud services are defined by the applicable contract for such services. No other
rights are granted to the U.S. Government.

This software or hardware is developed for general use in a variety of information management applications.
It is not developed or intended for use in any inherently dangerous applications, including applications that
may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you
shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its
safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this
software or hardware in dangerous applications.

Oracle®, Java, and MySQL are registered trademarks of Oracle and/or its affiliates. Other names may be
trademarks of their respective owners.

Intel and Intel Inside are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are
used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Epyc,
and the AMD logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered
trademark of The Open Group.

This software or hardware and documentation may provide access to or information about content, products,
and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly
disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise
set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be
responsible for any loss, costs, or damages incurred due to your access to or use of third-party content,
products, or services, except as set forth in an applicable agreement between you and Oracle.
Contents

1 About These Release Notes


1.1 Before You Begin 1-1
1.1.1 Oracle Database Requirements 1-1
1.1.2 Browser Requirements 1-1
1.1.3 Web Server Requirements 1-2
1.1.4 About Release Numbering Conventions 1-2
1.1.5 About Checking for the Most Current Release 1-2
1.1.6 About Upgrading to the Latest Oracle APEX Release 1-2
1.1.7 About Determining Your Release Version 1-2
1.1.8 Important Information if Updating from a Release Prior to 23.1 1-3

2 New Features
2.1 Template Components 2-1
2.2 PWA Push Notifications 2-2
2.3 Modernized Object Browser 2-2
2.4 Page Processing Improvements 2-3
2.5 REST Data Source Enhancements 2-3
2.6 Property Graph Support 2-4
2.7 SQL Developer Web Integration 2-4
2.8 Capture ECID in APEX Webservice Log 2-4
2.9 Application Continuity 2-4
2.10 APEX Administrator Digest 2-5
2.11 Auto-Provisioning Restrictions 2-5
2.12 New Application Administration API Package 2-5
2.13 New Color Picker 2-6
2.14 Import and Export in Theme Roller 2-6
2.15 Region Display Selector Enhancements 2-6
2.16 Plug-In Attributes Updates 2-6
2.17 Improved App Icon Fidelity 2-6
2.18 Translation of Runtime Messages into Icelandic 2-7
2.19 Save and Run Page from Code Editor 2-7
2.20 Context-Sensitive APEX Help 2-7

iii
2.21 Multi-Tenant Authentication 2-7
2.22 Approvals Component Enhancements 2-7
2.23 JavaScript API Updates 2-7
2.24 JavaScript Library Upgrades 2-8

3 Changed Behavior
3.1 Rich Text Editor 3-1
3.2 Unsupported Format Masks in Date Picker 3-1
3.3 HTML Sanitization 3-1
3.4 Shuttle Item Events 3-2
3.5 Combined JavaScript File Change 3-2
3.6 Substitutions in HTML Expressions of Interactive Report 3-2
3.7 App Builder UI Changes 3-3
3.8 Compatibility Mode 3-3
3.9 Enabling Network Services in Oracle Database 3-6
3.9.1 When and Why Network Services Must be Enabled 3-6
3.9.2 Granting Connect Privileges 3-7
3.9.3 Troubleshooting an Invalid ACL Error 3-8

4 Ideas App Implementations

5 Deprecated Features
5.1 CKEditor5 Deprecated 5-1
5.2 Deprecated Object Browser Features 5-1
5.3 Preventing Double Escaping of LOV Display Values 5-1
5.4 Display Only Item with Format HTML (Unsafe) Deprecated 5-2
5.5 Deprecated Functions and Procedures 5-2

6 Deprecated in Previous Releases


6.1 Deprecated APEX Item Markup 6-1
6.2 Deprecated jQuery Date Picker 6-2
6.3 Previously Deprecated APIs 6-2
6.4 Deprecated Utilities 6-2
6.5 Deprecated Legacy Web Service References 6-2
6.6 jQuery UI Deprecated 6-2

iv
7 Desupported Features
7.1 Desupported Query Builder 7-1
7.2 Desupported User Interfaces Removed 7-1
7.3 Desupported JET Date Picker Item Type Migrated 7-2
7.4 DOM Object Desupported 7-2
7.5 Legacy Bulk Utilities Desupported 7-2

8 Desupported in Previous Releases


8.1 Desupported Attributes in App Builder 8-1
8.2 Desupported Properties 8-2
8.3 Desupported View Columns 8-2
8.4 FullCalendar 3 Desupported 8-2
8.5 App Builder Defaults Desupported 8-2
8.6 Copying Legacy Themes Desupported 8-2
8.7 CKEditor4 Desupported 8-2
8.8 Desupported Public Package APIs 8-3
8.9 Desupported Page Positions 8-3
8.10 Desupported Region Positions 8-3
8.11 Custom Page Region Templates with Duplicated Positions Desupported 8-4
8.12 Legacy Substitution Strings Desupported 8-4
8.13 Desupported JavaScript Functions 8-4
8.14 Post Calculation for Page Items Desupported 8-4
8.15 Show / Hide All Page Items On Same Line Attributes Desupported 8-5
8.16 apex.server Plug-in and Process Function Async Option Desupported 8-5
8.17 apex.widget.initPageItem Function Desupported 8-5
8.18 Popup LOV Template Desupported 8-5
8.19 Based On - Output of PL/SQL Code attribute Desupported 8-5
8.20 Syntax {COLUMN_NAME}_LABEL in Interactive Grid Icon and Detail Views
Desupported 8-5
8.21 Removed Content Delivery Network 8-5
8.22 APEX-Based REST Services Desupported 8-6

9 Fixed Bugs

10 Open Bugs and Known Issues


10.1 Known Issue with Confirm or Alert Dynamic Action Messages When Upgrading 10-1
10.2 Known Issue using 'Source Display' region type plug-in in previously installed
Sample Apps 10-2

v
10.3 Known Issues for jQuery Upgrade 10-2
10.4 Interactive Grid support for REST Enabled SQL 10-3
10.5 Group By Component Type mode prevents Default View 10-3
10.6 Known Issues for Data Generator 10-3
10.7 Known Issue Using Readable Export Format 10-3
10.8 Known Issue when Displaying RESTful Module Definition Full URL 10-4
10.9 Known Issue when Displaying Full URL for Enabled Object Definition when using a
Named Pool in ORDS 10-4

11 Documentation Accessibility

12 Privacy Notice

Index

vi
1
About These Release Notes
These release notes contain important information not included in the Oracle APEX
documentation.
• Before You Begin

1.1 Before You Begin


Review the following to ensure your readiness for this version of Oracle APEX.
• Oracle Database Requirements
• Browser Requirements
Oracle APEX requires a JavaScript-enabled browser and supports the current and prior
major release of Google Chrome, Mozilla Firefox, Apple Safari, and Microsoft Edge.
• Web Server Requirements
Oracle APEX requires Oracle REST Data Services (ORDS) 20.x or later.
• About Release Numbering Conventions
New releases of Oracle APEX correlate to the calendar year.
• About Checking for the Most Current Release
• About Upgrading to the Latest Oracle APEX Release
• About Determining Your Release Version
• Important Information if Updating from a Release Prior to 23.1

1.1.1 Oracle Database Requirements


Oracle APEX release 23.1 requires an Oracle Database release 19c or later. APEX runs on
all database editions, including Enterprise Edition (EE), Standard Edition (SE) and Database
23c Free. APEX can be installed in single-instance database and in Oracle Real Application
Clusters (Oracle RAC) database.

See Also:
Oracle APEX Installation Requirements in Oracle APEX Installation Guide

1.1.2 Browser Requirements


Oracle APEX requires a JavaScript-enabled browser and supports the current and prior
major release of Google Chrome, Mozilla Firefox, Apple Safari, and Microsoft Edge.

1-1
Chapter 1
Before You Begin

1.1.3 Web Server Requirements


Oracle APEX requires Oracle REST Data Services (ORDS) 20.x or later.
Oracle REST Data Services (ORDS) is Java-based web server. Oracle REST Data
Services features the ability to emit RESTful web services, offers improved file upload
capability, and is certified with Oracle WebLogic Server and Apache Tomcat.

Tip:
APEX-based REST Services were desupported in release 22.1. Oracle
REST Data Services (ORDS) release 21.4.2 now ships with migration scripts
that enable you to upgrade any remaining APEX-based REST Services to
ORDS-based Services. To learn more, see Migration of Oracle APEX
RESTful Service Modules in Oracle REST Data Services Release Notes.

1.1.4 About Release Numbering Conventions


New releases of Oracle APEX correlate to the calendar year.
In 2018 and starting with release 18.1 and 18.2, APEX introduced correlating the
release number to the calendar year.
In addition, APEX now only offers full releases and no longer provides patch set
releases (such as 5.1.1). Eliminating patch set releases reduces downtime when
updating existing installations. APEX architecture also enables developers to revert
releases if necessary.
Patch set exceptions (PSEs) may still be delivered for major defects. To learn more
about PSEs, visit the Oracle APEX 23.1 Known Issues page or the Prior Release
Archives for earlier releases.

1.1.5 About Checking for the Most Current Release


Oracle APEX is released more frequently than the Oracle Database. To view
information about or download a more current release, see:
http://www.oracle.com/technetwork/developer-tools/apex/downloads/index.html

1.1.6 About Upgrading to the Latest Oracle APEX Release


If you already have Oracle APEX installed, Oracle strongly recommends that you
regularly upgrade to the latest version available.
To learn more, see Upgrading from a Previous Oracle APEX Release in the Oracle
APEX Installation Guide.

1.1.7 About Determining Your Release Version


To determine which release of Oracle APEX you are currently running, do one of the
following:

1-2
Chapter 1
Before You Begin

• View the release number on the Workspace home page:


– Sign in to APEX.
The Workspace home page appears. The current release version displays in the
bottom right corner.
• View the About APEX page:
1. Sign in to APEX.
The Workspace home page appears.
2. Click the Help menu at the top of the page and select About.
The About APEX page appears.

See Also:
About Accessing Your Development Environment in Oracle APEX App Builder
User’s Guide

1.1.8 Important Information if Updating from a Release Prior to 23.1


If you are updating from a previous release of Oracle APEX, see the Changed Behavior
sections in the following documents:
• Oracle APEX Release Notes release 22.2
• Oracle APEX Release Notes release 22.1
• Oracle Application Express Release Notes release 21.2
• Oracle Application Express Release Notes release 21.1
• Oracle Application Express Release Notes release 20.2
• Oracle Application Express Release Notes release 20.1
• Oracle Application Express Release Notes release 19.2
• Oracle Application Express Release Notes release 19.1
• Oracle Application Express Release Notes release 18.2
• Oracle Application Express Release Notes release 18.1
• Oracle Application Express Release Notes release 5.1
• Oracle Application Express Release Notes release 5.0

1-3
2
New Features
Oracle APEX release 23.1 includes a number of new features. These new features are not
present in APEX release 22.2 and earlier releases.
• Template Components
• PWA Push Notifications
• Modernized Object Browser
• Page Processing Improvements
• REST Data Source Enhancements
• Property Graph Support
• SQL Developer Web Integration
• Capture ECID in APEX Webservice Log
• Application Continuity
• APEX Administrator Digest
• Auto-Provisioning Restrictions
• New Application Administration API Package
• New Color Picker
• Import and Export in Theme Roller
• Region Display Selector Enhancements
• Plug-In Attributes Updates
• Improved App Icon Fidelity
• Translation of Runtime Messages into Icelandic
• Save and Run Page from Code Editor
• Context-Sensitive APEX Help
• Multi-Tenant Authentication
• Approvals Component Enhancements
• JavaScript API Updates
• JavaScript Library Upgrades

2.1 Template Components


Template Components are a new plug-in type for building re-usable UI components with
support for actions, menus, and custom attributes within Page Designer. These components
can be rendered standalone as regions displaying one or multiple rows of data, and can also
be within reports as partials for a column.

2-1
Chapter 2
PWA Push Notifications

Fully Declarative - Template Components let you create plug-ins with attributes that
can be set declaratively in Page Designer. Attributes defined in the plug-in are
available in Page Designer for any column or region using the plug-in type.
Actions and Menu Buttons - With the introduction of Action Positions and Action
Templates for plug-ins, you can define actions and menu buttons with row-level
conditions for Template Components.
Universal Theme Components - Six out-of-the-box Template Components are added
to Universal Theme and available as region types in Page Designer: Avatar, Badge,
Comments, Content Row, Media List, and Timeline. These new regions remember
pagination, work with faceted search and smart filters, and support the external Order
By Item. When working with apps that use the latest version of Universal Theme,
Comments, Content Row, Media List, and Timeline are available in the Create Page
wizard.
Partials for Report Columns - Use partial components as Interactive Report column
types to display content like avatars and badges or apply a Template Component
directly in any HTML Expression using new template directive syntax.
For more information, see Template Components in Oracle APEX App Builder User’s
Guide.

2.2 PWA Push Notifications


Low-code push notifications are now available with a single switch. Users on all
devices, desktop and mobile, can opt-in to receive push notifications.
Notifications - Send notifications directly to user's devices that feature a message
title, body, and icon. Tap on notifications to link back to the APEX application, or a
specific page in the app.
Easy Subscription - APEX users can subscribe to push notifications from within the
application, while instance administrators can manage a queue of notifications.
New Process and API - A new native process and public API (apex_pwa) are available
in APEX to handle sending push notifications from APEX applications.

2.3 Modernized Object Browser


New Functionality
The Object Browser delivers a more accessible and streamlined user experience that
makes managing database objects easier.
Easy Filtering - You can now view and filter database objects of all types from a
single tree. Stay focused on your filtered subset of objects throughout your browser
session until you clear or change the filter.
Editing Made Easier - An enhanced editing experiences makes it easy to continue
editing the last object you viewed, including remembering your cursor position in the
code editor. A new warning on navigation ensures unsaved changes are never
unintentionally lost.
Improved Performance - Create common objects from a new landing page, using a
simplified Create Object wizard. When viewing an object, you can now switch quickly

2-2
Chapter 2
Page Processing Improvements

between an object's tabs--for example, between the spec and body of a package, or the
columns and data of a table.
Accessible - Object Browser is now coded to accessibility guidelines, making it easier to
work on database objects with assistive technologies like screen readers.

Changed Functionality
As part of streamlining the Create Object wizards, some functionality that used to be in the
wizard is now only available when editing the object.
Additional changes to the Object Browser include:
• Data downloads from tables, views, or materialized views are now in .XLSX format
instead of .CSV format.
• The REST tab for tables, views, packages, procedures, and functions is moved. It is now
available in the RESTful Services, Enabled Objects section.
• The UI Defaults tab for tables is moved. To access the UI defaults for a selected table, go
to the Columns tab and select More, then UI Defaults

Deprecated Functionality
For a list of items that are deprecated, see Deprecated Object Browser Features.

More Information
For more information on the modernized Object Browser, see Managing Database Objects
with Object Browser in Oracle APEX SQL Workshop Guide.

2.4 Page Processing Improvements


New features are available to streamline and better manage page processing.
Execution Chains - There is a new page process type: Execution Chain. Group page
processes together, or execute page processes one after the other by adding them as
children of a chain. Chains can be declaratively run in the background or in the foreground.
Control Background Execution - Monitoring is added to the Active Sessions page, giving
you more control over processes executing in the background.
Status and Progress Reporting - Report on the status and progress of background
processes with a new API (APEX_BACKGROUND_PROCESS) and APEX view
(APEX_APPL_PAGE_BG_PROC_STATUS).

2.5 REST Data Source Enhancements


REST Data Sources are updated to provide more control over source discovery and
responses.
Invoke API for REST Sources - The Invoke API process is extended to support REST Data
Sources. This provides fully declarative REST invocation for page processes, and makes it
simple to map REST source parameters to page items, SQL expressions, static values, and
more.
There are new REST Source Parameter types:

2-3
Chapter 2
Property Graph Support

• Use "Status Code" and "Reason Phrase" to easily get the server response into the
page items.
• Use "Data Profile" to easily fetch a JSON response attribute into a page item.
Discover REST Sources with Swagger - APEX now supports REST Source
discovery based on a Swagger/OpenAPI response. Create a complete REST Data
Source based on a response, including a data profile and additional metadata like
operations, URL, or other parameters.
Raw Selectors - A new switch item is added to REST Data Source Profiles to select
rows as they are. When enabled, all selectors are used exactly as specified and APEX
does not sanitize row and column selectors when generating the SQL query for JSON
parsing.

2.6 Property Graph Support


APEX now supports building APEX components based on Property Graph queries, a
feature introduced in Oracle Database 23c. Build APEX Page Components, shared
LOVs, Automations, and Search Configurations directly on a Property Graph using
SQL queries.

2.7 SQL Developer Web Integration


You can now open SQL Developer Web directly from the SQL Workshop menu in the
menu bar. This feature requires ORDS version 23.1, and is configured at the instance
level.
For workspaces with one associated schema that is REST-enabled, SQL Developer
Web opens in a separate tab. Otherwise, you must select the desired schema from a
pop-up dialog. You can only log in to SQL Developer Web with a single schema at a
time. If you have a SQL Developer Web window open for a particular schema and then
open a second SQL Developer Web window for a different schema, the session for the
original schema is invalidated.

2.8 Capture ECID in APEX Webservice Log


You can now pass the Execution Context ID (ECID) to external web services for end-
to-end tracing with the Pass ECID application setting. If this attribute is switched on,
customers can relate external web service calls to page calls in APEX.
You can overwrite this value in the configuration of a REST Data Source or by using
the web service API apex_web_service.set_request_ecid_context. You can use
APEX_APPLICATION_INSTALL to set the value during application installation.

2.9 Application Continuity


A new application security attribute, Session State Commit, controls how changes to
session and item values and the accompanying commits are handled:
• End of Request - Changes are deferred to the end of request processing.
• Immediate - Changes are immediately written and committed.
New applications are set to End of Request, and existing applications to Immediate.

2-4
Chapter 2
APEX Administrator Digest

2.10 APEX Administrator Digest


Monitor the health of your instances, workspaces, and schemas with metrics and trend charts
in the new APEX Administrator Digest. Reports in the summary dashboard include daily
metrics for the previous day:
• Instance Metrics - Metrics at the instance level, including created workspaces, removed
workspaces, and database links.
• Workspace Metrics - Metrics at the workspace level, including user accounts, distinct
users, page events, login attempts, created and removed applications, and web service
requests.
• Schema Metrics - Metrics at the schema level, including database links, aggregations for
user scheduler jobs, and information about used versus free space.

2.11 Auto-Provisioning Restrictions


Instance Administrators can now easily manage the auto-provisioning of workspaces with a
new UI and API that allows you to define and manage a list of email patterns. Query a block
list when auto-provisioning a workspace to restrict email addresses that match the pattern on
the block list. Automatic Provisioning must be enabled for this restriction to work.
This functionality adds two new procedures to the APEX_INSTANCE_ADMIN package:
• ADD_AUTO_PROV_RESTRICTIONS
• REMOVE_AUTO_PROV_RESTRICTIONS

2.12 New Application Administration API Package


You can now programmatically interface with admin jobs through the new
APEX_APPLICATION_ADMIN package. This package contains existing APIs moved from
APEX_UTIL, and has the following methods for administrative tasks:
• (s|g)et_application_alias
• (s|g)et_application_name
• (s|g)et_application_status
• (s|g)et_application_version
• (s|g)et_authentication_scheme
• (s|g)et_build_option_status
• (s|g)et_build_status
• (s|g)et_global_notification
• (s|g)et_image_prefix
• (s|g)et_max_scheduler_jobs
• (s|g)et_parsing_schema
• (s|g)et_pass_ecid

2-5
Chapter 2
New Color Picker

• (s|g)et_proxy_server
• get_no_proxy_domains

2.13 New Color Picker


There is a new web component-based color picker with JET-compatible color objects.
You can create the color picker dynamically and change options at runtime to re-
render it. The new color picker replaces the old one in Theme Roller, Page Designer,
and Interactive Report/Interactive Grid highlighting dialogs.

2.14 Import and Export in Theme Roller


You can now import and export theme styles directly from Theme Roller in JSON
format. Use the Additional Options menu in Theme Roller to import, export, or reset a
theme style.

Tip:
The Vita theme and the Redwood Light theme are not compatible. It is not
possible to export from one and import into the other.

2.15 Region Display Selector Enhancements


The Region Display Selector now supports:
• displaying region icons next to titles in Region Display Selector tabs
• controlling tab selection on page load with Remember Last Selection tab
• using APEX_REGION.RESET to reset user or session preference for tab selection

2.16 Plug-In Attributes Updates


The item plug-in infrastructure is extended to support 25 attributes, up from 15. The
apex_application_page_items dictionary view is extended to show these new
attributes.
You can now define custom groups for plug-in attributes, making it easy to group
similar plug-in attributes together. You can add custom attribute groups to existing
plug-ins by editing the plug-in.

2.17 Improved App Icon Fidelity


When creating an application or changing application icons, APEX now generates two
new icon files in Shared Component, Application Static Files. These new icons styles
support PWAs for all operating systems, including Windows, macOS, Android, and
iOS.
For applications created prior to APEX 23.1, use the Change Icon button in the User
Interface Attributes page to regenerate the full suite of icons.

2-6
Chapter 2
Translation of Runtime Messages into Icelandic

2.18 Translation of Runtime Messages into Icelandic


APEX now supports the translation of runtime messages into Icelandic, extending our
language support to 32 languages.
APEX supports the following languages: Arabic, Brazilian Portuguese, Croatian, Czech,
Danish, Dutch, Finnish, French, French - Canada, German, Greek, Hebrew, Hungarian,
Icelandic, Italian, Japanese, Korean, Norwegian, Polish, Portuguese (Portugal) (pt),
Romanian, Russian, Serbian - Cyrillic, Serbian - Latin, Simplified Chinese, Slovak, Slovenian,
Spanish, Swedish, Thai, Traditional Chinese, and Turkish.
For more information, see Installing Translated Versions of APEX in Oracle APEX Installation
Guide.

2.19 Save and Run Page from Code Editor


You can now run standard pages in Page Designer directly from a code editor dialog without
closing it first. Use the new Save and Run Page button in the editor toolbar or the default
keyboard shortcut (Alt+F8).

2.20 Context-Sensitive APEX Help


Links to documentation resources in internal applications are updated to redirect to the
appropriate book or chapter. This improves the quality of all documentation links from within
APEX App Builder, SQL Workshop, and other internal applications.

2.21 Multi-Tenant Authentication


The new Configuration Procedure attribute allows you to use a procedure to dynamically
configure authentication at runtime. The authentication procedure runs at least once per
session. You can use the procedure to specify the authentication_name, substitutions,
and the tenant_id.

2.22 Approvals Component Enhancements


A new due date parameter is now available for tasks.
In Page Designer, Due Date Item is available under Settings. When specified, this value
overrides the due date calculated from the associated task definition.
The parameter p_due_date is also available in the CREATE_TASK API.

2.23 JavaScript API Updates


New Functions and Methods
This release contains new functions or methods:
• actions interface method ariaKeyshortcut
• apex.pwa namespace functions:

2-7
Chapter 2
JavaScript Library Upgrades

– getPushSubscription
– hasPushSubscription
– subscribePushNotifications
– unsubscribePushNotifications
• model interface method getDataOverflow

New Options, Parameters, and Functionality


This release contains new options, parameters, and functionality:
• apex.message.alert and apex.message.confirm have new options enabling
functionality that was previously only available from the Alert and Confirm dynamic
actions
• apex.model.create has new model option trackChanges
• apex.page.isChanged, used by Warn on Unsaved Changes feature, now logs
which item or model is changed when the page is in debug mode

Improved API Descriptions


API descriptions are improved for:
• apex.model.create options onlyMarkForDelete and identityField, and
parameters pMoreData and pDataOverflow
• model interface Ajax Messages section
• model interface methods:
– fetch
– getTotalRecords
– indexOf
– setOption
• apex.page function warnOnUnsavedChanges
• apex.pwa various function return values
• apex.util.applyTemplate fix loop directive example
• item.displayValueFor pValue parameter
• menu widget item type definition accelerator property

2.24 JavaScript Library Upgrades


• CKEditor5 36.0.0
• cropperjs 1.5.13
• CSSO 5.0.5
• DOMPurify 2.4.3
• FullCalendar 5.11.3
• JavaScript Extension Toolkit (JET) 14.0.0

2-8
Chapter 2
JavaScript Library Upgrades

• jQuery 3.6.4
• MapLibre 2.4.0
• MarkedJS 4.2.5
• prism.js 1.29.0
• Terser 5.16.1

2-9
3
Changed Behavior
Some existing behaviour changes in this release.
• Rich Text Editor
• Unsupported Format Masks in Date Picker
• HTML Sanitization
• Shuttle Item Events
• Combined JavaScript File Change
• Substitutions in HTML Expressions of Interactive Report
• App Builder UI Changes
• Compatibility Mode
• Enabling Network Services in Oracle Database
You must enable network services in Oracle Database to send outbound mail, use Web
services, or use template-based PDF report printing with BI Publisher in Oracle APEX.

3.1 Rich Text Editor


New Rich Text Editor page items are now based on a new thirty party library, TinyMCE. APEX
23.1 ships with the free edition of TinyMCE version 6.3.1.
Existing items based on the CKEditor5 library continue to work. However, these items are
deprecated, and will be automatically converted to TinyMCE in a future release.
You can choose which library the Rich Text Editor uses via the new item attribute Library.
Note that the two libraries are API-incompatible, and any custom code using CKEditor5 APIs
must be re-worked.

3.2 Unsupported Format Masks in Date Picker


Some formatting elements are not supported by the Date Picker. Previously, APEX attempted
to render these elements. Now, unsupported format masks cause an error. To resolve the
error, modify the format mask.
Unsupported items in the format mask include SSSSS, SYEAR, SYYYY, IYYY, YEAR, IYY, SCC, TZD,
TZH, TZM, TZR, AD, BC, CC, EE, FF, FX, IW, IY, RM, TS, WW, E, I, J, Q, W, and X.

3.3 HTML Sanitization


Before APEX 23.1, the following components output HTML without any sanitization for Cross-
Site Scripting (XSS):
• Display Only Page Item (Format HTML)
• Interactive Grid - Display Only Column (Format HTML)

3-1
Chapter 3
Shuttle Item Events

• Classic Report - Rich Text Column (Format HTML)


• Interactive Report - Rich Text Column (Format HTML)
It was the developer's responsibility to ensure the contents were safe. This was not a
trivial task.
As of APEX 23.1, these components sanitize the HTML content on the client before
displaying it. This simplifies display of user-provided HTML, including the content of an
HTML-based Rich Text Editor.
Consciously displaying "unsafe" HTML, such as script tags or javascript:
expressions, onclick attributes, etc., is no longer possible as this content is stripped
away. While display of this content is not recommended, you can choose to display it
with the following methods:
• for Display Only Page Items in HTML format, use a Static Content Region
• for Display Only Interactive Grid Columns in HTML format, use an HTML
Expression Column
• for Classic Report Rich Text Columns in HTML format, use a Plain Text Column
with Escape special characters disabled
• for Interactive Report Rich Text Columns in HTML format, use a Plain Text Column
with Escape special characters disabled

3.4 Shuttle Item Events


Shuttle Item now triggers the change event when the selected items are reordered.
When a Shuttle item value can be reordered, the value's order is important. A change
to the order is a change to the value, which justifies the change event.

If you previously used both change and shuttlechangeorder Dynamic Actions or event
handlers, only the change handler is needed now. If you need to distinguish the two
cases, the change event happens after the shuttlechangeorder event.

3.5 Combined JavaScript File Change


The combined JavaScript file interactiveGrid.min.js is replaced with
modelViewBase.min.js, which contains a subset of the files in the former combined
file. This is unlikely to affect existing apps unless custom code on your page implicitly
depends on a module that was included in interactiveGrid.min.js and is not
otherwise loaded on the page now. To avoid issues with custom code, always specify
the individual files your code depends on.

3.6 Substitutions in HTML Expressions of Interactive Report


Interactive Reports now use HTML escaping as the default escape mode for item
substitutions in HTML expressions.
If it is safe to output the referenced item value, developers can replicate the previous
behavior of an unescaped value by using the RAW escape mode (&ITEM!RAW.).

3-2
Chapter 3
App Builder UI Changes

3.7 App Builder UI Changes


User interface changes in this release include:
• Quickly create copies of pages from the current application or other applications directly
from the Create Page Wizard with the new Create Page as Copy button.
• The Page Designer "Pick Table" dialog no longer shows table comments from the Data
Dictionary.
• When creating new plug-ins, the default type is now Template Component rather than
Item.
• Global template options and template option groups now display in an interactive grid to
make editing easier.
• All internal applications (4000-4999), including App Builder and SQL Workshop, now use
Friendly URLs. This paves the way for future enabling of PWA in Builder.

3.8 Compatibility Mode


The application attribute Compatibility Mode controls the compatibility mode of the APEX
runtime engine. Certain runtime behaviors change from release to release. You can use the
Compatibility Mode attribute to obtain specific application behavior. This section lists
Compatibility Mode changes by release. Note that all mode changes are inclusive in that all
changes in older releases are included in newer releases.

Compatibility Mode Changes in Mode 4.1


In Oracle Application Express release 4.1, Automatic DML forms raised an error when
rendering the page if the column name of the source of an item was invalid. Prior to Oracle
Application Express release 4.1, an invalid column name of the source of an item would not
raise an error when rendering the page but it would also not set session state of the item.
Also, in Oracle Application Express release 4.1, there are two new application Security
Attributes to control Browser Security: Cache and Embed in Frames. Enabling the Cache
attribute enables the browser to save the contents of your application's pages in its cache,
both in memory and on disk. The Embed in Frames attribute controls if the browser displays
your application's pages within a frame. Applications running in a Pre-4.1 Compatibility Mode
function as if the Cache is enabled and as if Embed in Frames is set to allowed. Applications
running in Compatibility Mode 4.1 or later respect the specific Browser Security attributes.
Also, in Oracle Application Express release 4.1, because of bug 12990445, the following
changes were implemented for Automatic Row Processing (DML) process types. The code
which performs the INSERT was changed to determine if the columns should be included in
the INSERT statement. Note that these are the same checks which occur before
an UPDATE. These new checks include:
• Is the source type a DB Column?
• Is the page item contained in the POST request? For example, if the page item is
conditional it will not be contained in the POST request if the condition evaluates
to FALSE during page rendering.
• Is the page item not of type Display Only where Save State is set to No?
To enable these behaviors, set the Compatibility Mode to 4.1 or later. For behavior that
matches earlier releases, set the Compatibility Mode to Pre-4.1.

3-3
Chapter 3
Compatibility Mode

Compatibility Mode Changes in Mode 4.2


In Oracle Application Express release 4.2 due to changes for the new grid layout,
when a page is rendered, all regions in a certain display point are evaluated before
rendering that display point, to find out if they should be displayed or not (so that the
grid layout knows how many columns to render). The regions where the evaluation
returned true will be executed and displayed. However, this will not work if a PL/SQL
based region sets session state which is then used in a subsequent region condition to
determine if the region should be displayed. In that scenario, the condition has already
been checked before the display point is rendered. Use computations or PL/SQL
processes to set session state before any region is displayed. In previous versions, the
condition was evaluated right before each region was displayed.
In Oracle Application Express release 4.2, computations and processes with a
processing point Before Region(s) do now fire before any region gets rendered.
Computations and processes with a processing point After Region(s) fire after all
regions have been rendered. In previous versions, the computations and processes
fired just before and after the region display point Page Template Body (1-3).
Oracle Application Express Patch Set 4.2.2 added two new Compatibility Mode
changes for Compatibility Mode 4.2:
• Text areas were changed to always use the Maximum Width attribute to restrict
text input.
• Enhanced security for report column links, where the link contains both JavaScript
and references to other report column substitutions, for example:

javascript:alert( 'Delete #NAME#' );

In the previous example, NAME is a column name in the report.


Prior to Oracle Application Express release 4.2.1, to protect against possible cross-site
scripting vulnerabilities, you would have had to explicitly escape any column values in
the report source, so that they could safely be used in JavaScript links. When running
in Compatibility Mode 4.2, Oracle Application Express automatically JavaScript
escapes column name substitutions referenced in JavaScript links if the column is
defined to escape special characters.
To fix this, Oracle recommends that you remove the manual JavaScript escaping from
your report source and use of the native escaping.

Compatibility Mode Changes in Mode 5.0


In Oracle Application Express release 5.0, referencing a Static Application File
with #WORKSPACE_IMAGES# no longer returns the application file. Instead,
use #APP_IMAGES#.

The API calls


to wwv_flow_custom_auth_std.logout, wwv_flow_custom_auth_std.logout_then_go_
to_page, wwv_flow_custom_auth_std.logout_then_go_to_url,
and apex_custom_auth.logout are desupported and will raise a runtime error instead
of logging out from the Oracle Application Express session. Instead, use
the apex_authentication.logout entry point.
Prior to release 5.0, developers using data upload did not have the option to choose a
date format. Instead, a parser checked for the best format to match the user's entry or

3-4
Chapter 3
Compatibility Mode

an end user could enter their own format. Oracle Application Express release 5.0 includes a
new item that enables the user to choose an application date format or user entered format.
Because applications created before release 5.0 do not have an item, a Compatibility Mode
of 5.0 checks if the user has entered some data. If no data has been entered, it picks the
application date format.
When a session timeout occurs and no timeout URL is specified, Oracle Application Express
raises an error instead of redirecting to the application's home page. If the session setup for
an Ajax requests fails, Oracle Application Express also raises an error. For Ajax requests that
expect JSON, the response is a JSON string with members that describe the error. For other
requests, the error appears on an error page.
Page items based on a database column where the attribute Source Used is set to Only
when current value in session state is null will raise an error when the page item gets
rendered. Using this setting for a database column is very dangerous and can result in
accidentally overwriting data when viewing and saving multiple records. Always set the
Source Used attribute to Always, replacing any existing value in session state.

Compatibility Mode Changes in Mode 5.1 / 18.1 / 18.2


In Oracle Application Express 18.1, buttons where the Execute Validations attribute is set to
Yes also perform some client-side validations (such as item required checks) and will not
submit the page until all issues are fixed. In previous versions this flag was just used to
determine if server-side validations should be executed.

Tip:
Please pay attention when changing the Compatibility Mode to 5.1/18.1/18.2.
Buttons, such as Cancel or Previous, where the Execute Validation flag has
incorrectly been set to Yes and which use an After Submit branch, never execute
validations when the user clicks the button. You can address this issue by using the
new client-side validations, or by setting Execute Validations to No.

In release 5.1, any Ajax-based Dynamic Actions where the "Wait for Result" attribute is set to
Yes perform an asynchronous Ajax call. Prior to 5.1, such calls would be made
synchronously.

Compatibility Mode Changes in Mode 19.1


In Oracle Application Express 19.1, the Rich Text editor now enforces validation of the Max
Length item attribute. When the length of the HTML markup exceeds the Max Length value,
the system produces an error message.

Compatibility Mode Changes in Mode 19.2 / 20.1 / 20.2 / 21.1


In Oracle Application Express 19.2, Classic Reports render empty column values as an
empty cell instead of using a "non-breaking white-space" ( ).

Compatibility Mode Changes in Mode 21.2 / 22.1 / 22.2 / 23.1


Prior to Oracle Application Express 21.2, all processes of the current processing point have
been executed regardless of the added errors.
In Oracle Application Express 21.2, calling APEX_ERROR.ADD_ERROR in a process stops further
processes from executing and immediately displays the inline errors.

3-5
Chapter 3
Enabling Network Services in Oracle Database

3.9 Enabling Network Services in Oracle Database


You must enable network services in Oracle Database to send outbound mail, use
Web services, or use template-based PDF report printing with BI Publisher in Oracle
APEX.

Note:
The following does not apply to APEX instances running on Oracle
Autonomous Database. APEX can communicate with external endpoints
over the internet without additional configuration.

• When and Why Network Services Must be Enabled


Enabling network services enables support for sending outbound mail in Oracle
APEX, using REST Services, REST Enabled SQL, or other web services, and
using a remote server for report printing.
• Granting Connect Privileges
• Troubleshooting an Invalid ACL Error
Learn how to identify any invalid ACL error by running the query.

3.9.1 When and Why Network Services Must be Enabled


Enabling network services enables support for sending outbound mail in Oracle APEX,
using REST Services, REST Enabled SQL, or other web services, and using a remote
server for report printing.
By default, the ability to interact with network services is disabled in Oracle Database.
Therefore, you must use the DBMS_NETWORK_ACL_ADMIN package to grant network
connect privileges to the APEX_230100 database user. Failing to grant these privileges
results in issues with:
• Sending outbound mail in Oracle APEX.
Users can call methods from the APEX_MAIL package, but issues arise when
sending outbound email.
• Consuming REST services and other web services from APEX.
• Making outbound LDAP calls from APEX.
• Using a remote print server for report printing.

Note:
When upgrading APEX, the upgrade automatically configures Network
Services based on the configuration of the previous APEX version.

3-6
Chapter 3
Enabling Network Services in Oracle Database

Tip:
To run the examples described in this section, the compatible initialization
parameter of the database must be set to at least 11.1.0.0.0. By default, the
parameter is set properly, but a database upgraded from a version prior to 11g may
require an update. For information about changing database initialization
parameters, see Specifying the Database Compatibility Level in Oracle Multitenant
Administrator's Guide.

See Also:
About Report Printing in Oracle APEX App Builder User’s Guide.

3.9.2 Granting Connect Privileges


The following example demonstrates how to grant connect privileges to any host for the
APEX_230100 database user. This example assumes you connected to the database where
Oracle APEX is installed as SYS specifying the SYSDBA role.

BEGIN
DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
host => '*',
ace => xs$ace_type(privilege_list => xs$name_list('connect'),
principal_name => 'APEX_230100',
principal_type => xs_acl.ptype_db));
END;
/

The following example demonstrates how to provide less privileged access to local network
resources. This example enables access to servers on the local host only, such as email and
report servers.

BEGIN
DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
host => 'localhost',
ace => xs$ace_type(privilege_list => xs$name_list('connect'),
principal_name => 'APEX_230100',
principal_type => xs_acl.ptype_db));
END;
/

3-7
Chapter 3
Enabling Network Services in Oracle Database

3.9.3 Troubleshooting an Invalid ACL Error


Learn how to identify any invalid ACL error by running the query.
If you receive an ORA-44416: Invalid ACL error after running the previous script, use
the following query to identify the invalid ACL:

REM Show the dangling references to dropped users in the ACL that is
assigned
REM to '*'.

SELECT ACL, PRINCIPAL


FROM DBA_NETWORK_ACLS NACL, XDS_ACE ACE
WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL AND
NACL.ACLID = ACE.ACLID AND
NOT EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME =
PRINCIPAL);

Next, run the following code to fix the ACL:

DECLARE
ACL_ID RAW(16);
CNT NUMBER;
BEGIN
-- Look for the object ID of the ACL currently assigned to '*'
SELECT ACLID INTO ACL_ID FROM DBA_NETWORK_ACLS
WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL;

-- If just some users referenced in the ACL are invalid, remove just
those
-- users in the ACL. Otherwise, drop the ACL completely.
SELECT COUNT(PRINCIPAL) INTO CNT FROM XDS_ACE
WHERE ACLID = ACL_ID AND
EXISTS (SELECT NULL FROM ALL_USERS WHERE USERNAME =
PRINCIPAL);

IF (CNT > 0) THEN

FOR R IN (SELECT PRINCIPAL FROM XDS_ACE


WHERE ACLID = ACL_ID AND
NOT EXISTS (SELECT NULL FROM ALL_USERS
WHERE USERNAME = PRINCIPAL)) LOOP
UPDATE XDB.XDB$ACL
SET OBJECT_VALUE =
DELETEXML(OBJECT_VALUE,
'/ACL/ACE[PRINCIPAL="'||R.PRINCIPAL||'"]')
WHERE OBJECT_ID = ACL_ID;
END LOOP;

ELSE
DELETE FROM XDB.XDB$ACL WHERE OBJECT_ID = ACL_ID;
END IF;

3-8
Chapter 3
Enabling Network Services in Oracle Database

END;
/

REM commit the changes.

COMMIT;

Once the ACL has been fixed, you must run the first script in this section to apply the ACL to
the APEX_230100 user.

3-9
4
Ideas App Implementations
APEX thrives because of community engagement and feedback. The APEX Ideas app
makes it easier for you to contribute directly to the product direction of APEX.

Feature Request Number Subject Solution


FR-845 / FR-2455 API to set Version No Delivered. See New Application
Administration API Package.
FR-1576 Advisor report on buttons in Delivered. See 33352932 in
invalid region template positions Fixed Bugs.
FR-1600 / FR-2565 Save and Run from the Code Delivered. See Save and Run
Editor modal screen Page from Code Editor.
FR-1639 / FR-1701 Display Loading Indicator when Delivered. See Modernized
performing actions in SQL Object Browser.
Workshop
FR-1740 Visual/Wizard support for Delivered. See Page Processing
ASYNC server-side processes Improvements.
FR-1885 Edit default value of table Delivered. See Modernized
columns Object Browser.
FR-1928 Native push notifications and Delivered. See PWA Push
push events for dynamic actions Notifications.
FR-2005 Identity Column in SQL Delivered. See Modernized
Workshop Object Browser.
FR-2085 Fix objects filter in SQL Delivered. See Modernized
Workshop - Object Browser Object Browser.
FR-2086 Fix: Using SQL Workshop we Delivered. See Modernized
need to reset query columns to Object Browser.
load new ones when column is
added to table.
FR-2133 Declarative way to add dropdown Delivered. See Content Row in
menu button to report & assign Template Components.
dynamic actions or process to
menu items
FR-2421 Allow me to use real JSON paths Delivered. See REST Data
in REST Service Row Selector Source Enhancements.
FR-2507 Possibility to give comments to Delivered. See Modernized
the tables and columns during Object Browser.
creation
FR-2898 Return timezone in addition to Delivered. See 34929885 in
longitude and latitude in APEX Fixed Bugs.
geocoded address item

4-1
5
Deprecated Features
Deprecated features are features which Oracle plans to desupport or remove in a future
release of Oracle APEX. If a feature is related to application metadata or an API, existing
applications can still use the feature, but Oracle strongly recommends that developers start to
modify their applications as described in this section. Use APEX Advisor to scan existing
applications for deprecated attributes.
• CKEditor5 Deprecated
• Deprecated Object Browser Features
• Preventing Double Escaping of LOV Display Values
• Display Only Item with Format HTML (Unsafe) Deprecated
• Deprecated Functions and Procedures

5.1 CKEditor5 Deprecated


CKEditor5 is deprecated. Existing items based on the CKEditor5 library continue to work.
However, these items will be automatically converted to TinyMCE in a future release. Any
custom code using CKEditor5 APIs must be re-worked.

5.2 Deprecated Object Browser Features


Some functionality in Object Browser is deprecated:
• The Model tab for tables is removed.
• The Create Materialized View Wizard is removed. Create materialized views by using a
CREATE MATERIALIZED VIEW statement in SQL Commands or SQL Scripts. You can still
view materialized views in Object Browser.

5.3 Preventing Double Escaping of LOV Display Values


By default, APEX automatically HTML-escapes Lists of Values (LOV) display values as
necessary. To ensure backward compatibility with legacy apps, APEX checks whether the
LOV query already includes a utility function to escape the display value. If it does, APEX
avoids double-escaping the value when displaying it in a Select List, Popup LOV, Shuttle,
Display Only item, or similar components.
Oracle recommends removing redundant inline escaping calls from your LOVs. In a future
version of APEX, this prevention mechanism may be removed, which could cause some
display values to appear double-escaped.
To identify whether any of your LOVs are impacted, run the following queries:

select *
from apex_application_lovs
where lov_type = 'Dynamic'

5-1
Chapter 5
Display Only Item with Format HTML (Unsafe) Deprecated

and ( upper(list_of_values_query) like '%HTF.ESCAPE_SC%'


or upper(list_of_values_query) like '%APEX_ESCAPE.HTML%'
or upper(list_of_values_query) like '%WWV_FLOW_ESCAPE.HTML%' );

select *
from apex_application_page_items
where lov_named_lov is null
and ( upper(lov_definition) like '%HTF.ESCAPE_SC%'
or upper(lov_definition) like '%APEX_ESCAPE.HTML%'
or upper(lov_definition) like '%WWV_FLOW_ESCAPE.HTML%' );

If the queries returns no rows, then no action is required. Otherwise, check the LOV
definition and/or page items, remove any manual escaping, and test your applications
to ensure that the values still appear as intended.

5.4 Display Only Item with Format HTML (Unsafe)


Deprecated
As of APEX 23.1, Format HTML sanitizes the HTML content on the client before
displaying it. This simplifies the display of user-provided HTML, including the content
of HTML-based rich text editors.
To maintain backward compatibility with existing applications, all current Display Only
page items using the Format HTML option will be migrated to HTML (Unsafe) to
preserve their current behavior. However, going forward, this option is deprecated, and
displaying "unsafe" HTML, such as script tags or javascript: expressions, onclick
attributes, and others, is no longer possible, as this content is stripped away.
Although it is not recommended to display unsafe HTML content, you can still choose
to display it. For more information, see HTML Sanitization.

5.5 Deprecated Functions and Procedures


As part of moving existing APIs from APEX_UTIL to APEX_APPLICATION_ADMIN, some
comments changed. The following functions and procedures are deprecated:
• set_build_option_status
• get_build_option_status (two times, overloaded)
• set_application_status
• get_application_status
• set_global_notification
• get_global_notification
• set_app_build_status

5-2
6
Deprecated in Previous Releases
The following section lists features which were deprecated in a previous release but have not
been fully removed or desupported from Oracle APEX.
Oracle strongly recommends that developers start to modify their applications as described in
this section. Use APEX Advisor to scan existing applications for deprecated attributes.
• Deprecated APEX Item Markup
• Deprecated jQuery Date Picker
• Previously Deprecated APIs
• Deprecated Utilities
• Deprecated Legacy Web Service References
• jQuery UI Deprecated

6.1 Deprecated APEX Item Markup


Future releases of APEX may include fixes and improvements to the accessibility, usability,
and functionality of various items that require changing the markup or using custom elements
(web components). These changes may create more dynamic behaviors for items, and will
be done in a way that minimizes impact to items and forms in existing apps.
The apex.item namespace and item interface are the only supported APIs for customizing
and programatically working with items. APEX discourages customizations that rely on
undocumented item markup or CSS classes, as these may not work as expected in future
releases.
Assumptions about the HTML markup used by each of the native APEX items may not hold
in the future. Item customization through Advanced attributes (CSS Classes), Custom
Attributes, JavaScript code, and CSS rules that assumes particular markup could break.
For example, you could make the text area item character counter bold by adding class
important-text to the Advanced: CSS Classes attribute of a text area and then add a
custom CSS rule like:

.important-text.apex-item-textarea + .apex-item-textarea-counter {
font-weight: bold;
}

This currently works, but may not in the future because it relies on undocumented class
names and the counter element directly following the textarea element. It is also not a best
practice to add event handlers in Custom Attributes.
Future releases may document new custom element markup, classes, and CSS variables to
allow more supportable customization.

6-1
Chapter 6
Deprecated jQuery Date Picker

6.2 Deprecated jQuery Date Picker


jQuery Date Picker is now deprecated and cannot be used for new pages or
applications. The old jQuery Date Picker JavaScript APIs are not supported.
Oracle recommends replacing all old Date Pickers with the new Date Picker.

6.3 Previously Deprecated APIs


The APEX_IR.GET_REPORT API is deprecated. Instead, use
APEX_REGION.OPEN_QUERY_CONTEXT to get interactive report data.

6.4 Deprecated Utilities


The APEXExport utility is deprecated, and will be removed in a future release.

Oracle recommends using SQLcl instead.

6.5 Deprecated Legacy Web Service References


SOAP style Web Service references and legacy support for REST style Web Services
references are deprecated.

6.6 jQuery UI Deprecated


jQuery UI is deprecated. Oracle recommends that customers update third-party APEX
plug-ins and custom JavaScript code to remove any jQuery UI references. Native
APEX components that use jQuery UI will continue to function, but support will be
removed in a future release.
Oracle ships a custom bundle of JQuery UI 1.13.2 that includes only the modules that
APEX needs. Oracle no longer ships individual widgets or any jQuery UI CSS files.

6-2
7
Desupported Features
Desupported features are no longer available. If a desupported feature has to do with
application metadata or APIs, then existing applications may not work as they did previously.
Oracle recommends modifying the application to replace the feature.
• Desupported Query Builder
• Desupported User Interfaces Removed
• Desupported JET Date Picker Item Type Migrated
• DOM Object Desupported
• Legacy Bulk Utilities Desupported

7.1 Desupported Query Builder


SQL Workshop Query Builder is now desupported, and will be removed in a future release.

7.2 Desupported User Interfaces Removed


APEX previously defined multiple users interfaces for each application. This is no longer the
case. This release cleans up desupported user interfaces, which impacts many APEX
Dictionary Views:
• Obsolete views:
– apex_workspace_ui_types
– apex_appl_user_interfaces
• New view columns:
– apex_applications.theme_style_by_user_pref
– apex_applications.built_with_love
– apex_applications.navigation_list
– apex_applications.navigation_list_position
– apex_applications.nav_bar_type
– apex_applications.nav_bar_list
– apex_applications.include_legacy_javascript
– apex_applications.include_jquery_migrate
• Obsolete view columns:
– apex_applications.ui_detection_css_urls
– apex_appl_concatenated_files.user_interface_id
– apex_application_pages.user_interface_id

7-1
Chapter 7
Desupported JET Date Picker Item Type Migrated

– apex_application_pages.page_transition
– apex_application_pages.popup_transition
– apex_application_themes.ui_type_id
– apex_application_themes.ui_type_name
– apex_application_themes.default_page_transition
– apex_application_themes.default_popup_transition
– apex_appl_plugins.supported_ui_types
– apex_appl_plugin_std_attrs.supported_ui_types
– apex_appl_plugin_attributes.supported_ui_types
• Removed Page Designer Properties:
– Page Transition
– Popup Transition
– User Interface
Older applications created when APEX could have two User Interfaces now only use
the active user interface. Inactive user interfaces are removed from the metadata.

7.3 Desupported JET Date Picker Item Type Migrated


The Date Picker (JET) item type is now removed. Existing page items and interactive
grid columns are automatically migrated to the new Date Picker item type introduced in
APEX 22.2.
This impacts any JavaScript customizations made for the JET Date Picker component.

7.4 DOM Object Desupported


The DOM Object Dynamic Action selector type is desupported. Any page that uses
this type for an action now throws an exception in the browser console, and the action
does not execute.
Use the JavaScript Expression type instead of DOM Object.

7.5 Legacy Bulk Utilities Desupported


The Grid Edit tools are now desupported. This includes grid edit tools available in:
• Cross Page Utilities
• Region Utilities
• Button Utilities
• Item Utilities
• Computation Utilities
• Validation Utilities
• Process Utilities

7-2
Chapter 7
Legacy Bulk Utilities Desupported

• Dynamic Action Utilities


• Branch Utilities
You can edit items individually through Page Designer, or view them in bulk through the
appropriate Utility area.

7-3
8
Desupported in Previous Releases
The following section lists features that were desupported in a previous release.
If a desupported feature has to do with application metadata or APIs, then existing
applications may not work as they did previously. Oracle recommends modifying the
application to replace the feature.
• Desupported Attributes in App Builder
• Desupported Properties
• Desupported View Columns
• FullCalendar 3 Desupported
• App Builder Defaults Desupported
• Copying Legacy Themes Desupported
• CKEditor4 Desupported
• Desupported Public Package APIs
• Desupported Page Positions
• Desupported Region Positions
• Custom Page Region Templates with Duplicated Positions Desupported
• Legacy Substitution Strings Desupported
• Desupported JavaScript Functions
• Post Calculation for Page Items Desupported
• Show / Hide All Page Items On Same Line Attributes Desupported
• apex.server Plug-in and Process Function Async Option Desupported
• apex.widget.initPageItem Function Desupported
• Popup LOV Template Desupported
• Based On - Output of PL/SQL Code attribute Desupported
• Syntax {COLUMN_NAME}_LABEL in Interactive Grid Icon and Detail Views Desupported
• Removed Content Delivery Network
• APEX-Based REST Services Desupported

8.1 Desupported Attributes in App Builder


The following attributes in App Builder are desupported:
• In Edit Application Definition:
– Progressive Web App - Icon URL
– Application Icon - Icon File Name

8-1
Chapter 8
Desupported Properties

• In Edit User Interface:


– Favicon

8.2 Desupported Properties


The following properties in the property editor are desupported:
• Region Image
• Image Tag Attributes

8.3 Desupported View Columns


The following view columns are desupported:
• In apex_applications:
– app_builder_icon_name
– favicons
– pwa_manifest_icon_url

8.4 FullCalendar 3 Desupported


FullCalendar v3 is desupported, including:
• deprecated plug-in attributes
• files and folders specific to v3 or jquery-fullcalendar
• v3-specific logic in PL/SQL and JavaScript
The used library version is now FullCalendar 5.11.2. APEX upgrades the library
automatically.

8.5 App Builder Defaults Desupported


Developers can no longer define App Builder Defaults from Workspace Utilities, App
Builder Defaults. The Create Application Wizard no longer uses the defined attributes.

8.6 Copying Legacy Themes Desupported


The Copy Theme Wizard no longer supports copying legacy themes. This includes
Themes 1 - 26, and the jQuery Mobile theme.

8.7 CKEditor4 Desupported


Rich Text Editor items based on CKEditor4, which are marked as deprecated since
APEX 20.2, are now desupported and will be automatically converted to CKEditor5.
CKEditor4 is removed from APEX completely.
Converted items receive the following configuration:
• Format: HTML

8-2
Chapter 8
Desupported Public Package APIs

• Toolbar: unchanged
• Toolbar Style: Multiline
• Minimum Height: 180
• Maximum Height: null
• Allow Custom HTML: Enabled
The properties Toolbar Position and Skin do not have a CKEditor5 equivalent, and are
removed. Any code included in the JavaScript Initialization Code attribute is automatically
commented out.
Oracle recommends manually checking the functioning of each Rich Text Editor item.

Note:
With this update, any code referencing CKEditor4 and the CKEDITOR global object
no longer works.

8.8 Desupported Public Package APIs


Desupported public package APIs:
• apex_page.is_desktop_ui function
• apex_page.get_ui_type function

8.9 Desupported Page Positions


The following page positions are desupported and display as Legacy in Page Designer:
• Body 1
• Body 2
• Body 3
• After Header
• Before Footer

8.10 Desupported Region Positions


The following region positions used for button positioning are desupported and display as
Legacy in Page Designer:
• Top of Region
• Bottom of Region
• Above Region
• Below Region

8-3
Chapter 8
Custom Page Region Templates with Duplicated Positions Desupported

8.11 Custom Page Region Templates with Duplicated


Positions Desupported
Custom page template and custom region templates with duplicated positions are
desupported. For example, a region template referencing position #CHANGE# twice is
not recommended because that duplicate position causes duplicate DOM IDs.

8.12 Legacy Substitution Strings Desupported


As of this release, the following apex.env substitution strings are desupported:

• APP_IMAGES
• IMAGE_PREFIX
• THEME_DB_IMAGES
• THEME_IMAGES
• WORKSPACE_IMAGES
While the legacy substitutions still function, Oracle recommends developers update
their environments to use updated substitutions (listed below).

Table 8-1 Updated apex.env Substitutions

Legacy New
IMAGE_PREFIX APEX_FILES
WORKSPACE_IMAGES WORKSPACE_FILES
APP_IMAGES APP_FILES
THEME_IMAGES THEME_FILES
THEME_DB_IMAGES THEME_DB_FILES

8.13 Desupported JavaScript Functions


The following functions are desupported:
Universal Theme JavaScript API function:
• apex.theme42.util.mq (use apex.theme.mq instead)

8.14 Post Calculation for Page Items Desupported


The Post Calculation functionality of page items is desupported.
This functionality remains for existing page items where it has been used, but you can
no longer set it for new page items nor add it to existing page items where it has not
been used in the past.

8-4
Chapter 8
Show / Hide All Page Items On Same Line Attributes Desupported

8.15 Show / Hide All Page Items On Same Line Attributes


Desupported
In Dynamic Actions, the Show and Hide actions have attributes Show all page items on
same line and Hide all page items on same line, respectively. These attributes were
designed for forms with a table-based layout. Because Universal Theme no longer uses
table-based layout, these attributes are desupported.
This functionality remains for existing Dynamic Actions where it was set to Yes, but
developers cannot select it for new Dynamic Actions.

8.16 apex.server Plug-in and Process Function Async Option


Desupported
In a future release, the async option will be ignored and all Ajax requests will be
asynchronous.

8.17 apex.widget.initPageItem Function Desupported


The function apex.widget.initPageItem is desupported. Item plug-in creators should use
apex.item.create instead.

8.18 Popup LOV Template Desupported


The Popup LOV template type is desupported.

8.19 Based On - Output of PL/SQL Code attribute Desupported


The selection Output of PL/SQL Code of the attribute Based On is now desupported.

8.20 Syntax {COLUMN_NAME}_LABEL in Interactive Grid Icon


and Detail Views Desupported
The &{COLUMN_NAME}_LABEL. syntax, which is used to reference the column label in
Interactive Grid Detail and Icon views, is desupported.
Instead, use &{COLUMN_NAME}%LABEL..

8.21 Removed Content Delivery Network


The attribute Content Delivery Network that could be found under User Interface Attributes,
Javascript with options None, Google, Microsoft, and jQuery, has been removed. Enabling
this option was only relevant for pulling in a few of the JavaScript libraries that APEX needs.

8-5
Chapter 8
APEX-Based REST Services Desupported

If you were using this option, it's recommended to instead use the more modern,
Oracle-provided CDN approach. For further information, see Announcing Oracle APEX
Static Resources on Content Delivery Network.

8.22 APEX-Based REST Services Desupported


APEX-based REST Services are desupported in this release. Prior to release 18.1,
definitions of RESTful services created within Oracle APEX were stored within the
metadata tables of the core APEX schema, and referred to as APEX-based REST
Services. With release 18.1, we introduced support for Oracle REST Data Services
(ORDS) -based REST Services, where definitions are stored in the ORDS repository.
ORDS-based REST Services continue to be supported for definitions of RESTful
Services in Oracle APEX.
The instance parameter APEX_REST_PATH-PREFIX is desupported.

Note:
Oracle REST Data Services (ORDS) release 21.4.2 now ships with migration
scripts that enable you to upgrade any remaining APEX-based REST
Services to ORDS-based Services. To learn more, see Migration of Oracle
APEX Restful Service Modules in Oracle REST Data Services Release
Notes.

8-6
9
Fixed Bugs
The following section lists bugs fixed in this release.

Bug Number Description


28685154 PUBLISH THE EXPLANATION ABOUT "JOIN LOV FOR COLUMN
DISPLAY" ATTRIBUTE TO MANUAL
30203115 IMPROVE HELP TEXT FOR SWITCH ITEM TO BETTER EXPLAIN WHEN
ON/OFF LABEL TEXT IS DISPLAYED
31811949 IGNORE COMBINED FILE WHEN FILE GETS LOADED VIA REQUIREJS
OR REQUIREJET
32749605 NLS: LOCALIZATION OF DATE FORMATS REQUIRED FOR CERTAIN
PAGES UNDER MONITOR ACTIVITY
33352932 ADD AN ADVISOR ENTRY CHECK FOR LEGACY ORPHAN
COMPONENTS
33697490 COPY COMPONENT TO OTHER PAGE DOESN'T CHANGE PAGE ITEM
REFERENCES
34131666 FACETED SEARCH - DEPENDING ON HAS UNEXPECTED BEHAVIOUR
WHEN CONDITION NOT EQUAL
34146043 CHECKBOXES AND RADIOS IN FACETED SEARCH ARE NO LONGER
ACCESSIBLE
34327856 SMART FILTERS - PAGE SUBMITTED WHEN SETTING FILTER ON
ENTER
34415818 INTERACTIVE GRID POPUP LOV COLUMN: WHEN A DEFAULT IS SET,
NEW ROW IS INITIALIZED WITH RETURN AND NOT WITH DISPLAY
VALUE
34418403 DIALOGS OF INTERACTIVE REPORT COLUMN HEADERS MISSING
VISUALLY HIDDEN HEADERS FOR SCREEN READERS
34447426 INTERACTIVE GRID - SWITCHING TO SINGLE ROW VIEW MOVES JAWS
CURSOR UNEXPECTANTLY
34447594 RECORDVIEW NOT RENDERING PROPER READONLY INPUT FIELDS
WHEN IN READ-ONLY MODE
34458064 MULTIPLE EXPORTS IN A SINGLE SESSION MAY RESULT IN
CORRUPTED EXPORT FILE
34473422 PAGE DESIGNER: MULTIPLE ATTRIBUTE VALUES NOT ALWAYS
INDICATED AFTER SELECTING MULTIPLE ITEMS
34481324 SINGLE CHECKBOXES HAVE UNLABELED INACCESSIBLE OBJECTS IN
VIRTUAL PC MODE OF JAWS
34600714 COLLAPSIBLE REGION CONTENT FLICKERS ON PAGE LOAD
34608372 HELP TEXTS FOR TEXT WITH AUTOCOMPLETE ATTRIBUTES CACHE
AND SEARCH ARE INCORRECT
34609210 TEXT WITH AUTOCOMPLETE DROPDOWN CONTENT IS NOT
SCROLLED TO TOP
34616851 APEX_STRING_UTIL.FIND_TAGS MISSING SUCCESSIVE TAGS
34624879 CREATING DATA LOAD DEFINITION IN MULTIBYTE NAME RAISES
WWV_FLOW_LOAD_TAB_UK ERROR

9-1
Chapter 9

Bug Number Description


34628417 XLSX EXPORT: NO SUBSTITUTIONS APPLIED FOR PAGE HEADER
34629449 IMPROVE TOOLTIP FOR HELP TEXT BUTTONS
34632218 APEX_WEB_SERVICE.MAKE_REST_REQUEST THROWS ORA-6502
FOR URLS LARGER THAN 4K
34657289 DISCOVERY OF FUSION SAAS REST API FAILS WHEN ATTRIBUTE IS
DEFINED AS "STRING" WITH MORE PRECISION THAN "99.999"
34663380 EMBEDDED CODE DOESN'T INCLUDE ATTRIBUTE VALUE INTO THE
FULL TEXT SEARCH
34667623 ORA-12899: VALUE TOO LARGE FOR COLUMN CHANGE 'STANDARD'
TEMPLATE OPTIONS TO NON-DEFAULT SETTINGS
34669937 BUTTON'S SHORTCUT SHOULD BE EXPOSED TO SCREEN READER
USING ARIA-KEYSHORTCUTS
34678180 TYPO IN HELP TEXT FOR "CONTENT DISPOSITION" COLUMN
ATTRIBUTE
34680349 INTERACTIVE GRID DML ON REST DATA SOURCE, WITH MULTIPLE
PRIMARY KEY COLUMNS, GENERATES WRONG ORDS QUERIES
34689727 AFTER DISABLING LAYOUT VIEW IN PAGE DESIGNER, PAGE FINDER
LINKS STOP WORKING
34693264 PDF DOWNLOADS WITH ROW HIGHLIGHTS SOMETIMES CAUSE PDF
SYNTAX ISSUES
34696059 CREATING PWA SCREENSHOTS OR SHORTCUTS CAN TRIGGER A
PAGE REFRESH EVEN WHEN PWA IS NOT ENABLED
34698147 REST SOURCE EDIT PAGE (4000:1921) SHOULD SHOW THE SCHEMA
OF A SYNC TABLE
34698814 REGEXP: OPTION FOR APPLICATION SEARCH IS BROKEN
34703814 SINGLE LINE COMMENT BREAKS JAVASCRIPT MLE CODE EXECUTION
IN SQL COMMANDS
34713426 EMAIL TEMPLATES: HELP TEXT FOR ADVANCED HTML TEMPLATE IS
INCORRECT
34719591 DATA EXPORT: INCREASE MAX LENGTH OF A COLUMN HEADER
34731045 PAGE DESIGNER THROWS "JSON ERROR" WHEN TRYING TO USE
POST PROCESSING SQL WITH CSV REST SOURCE
34731068 COPY REST SOURCE DOES NOT COPY DATA PROFILE IF THE NAME
IS ALREADY USED
34731085 CSV REST SOURCES CANNOT BE DISCOVERED WHEN MIME TYPE
"APPLICATION/VND.MS-EXCEL" IS RETURNED
34731887 APEX_AUTOMATION.ABORT SHOULD DROP EXECUTOR JOB ALSO
WHEN IN "DISABLED" STATE
34733255 ORA-01008: NOT ALL VARIABLES BOUND USING DOUBLE-HYPHEN
COMMENT IN SQL COMMANDS
34736771 APP_ID IS ALWAYS NULL FROM APEX_APPROVAL.GET_TASKS
34738383 REPORT BASED ON TABLE WITH LONG RAW COLUMN THROWS
ORA-00932: INCONSISTENT DATATYPES ERROR
34739526 ADB-S WORKSPACE CREATED THROUGH APEX VS. USING API
RESULTS IN DIFFERENT DEFAULT LOGIN PAGE
34741944 REGRESSION: COPY FACETED SEARCH PAGE: "FILTERED REGION"
ATTRIBUTE IS NOT ON COPIED PAGE
34750627 DYNAMIC CONTENT REGION ALWAYS FAILS ADVISOR CHECK

9-2
Chapter 9

Bug Number Description


34758496 RUNNING TRANSLATIONS > PUBLISH WHEN APP BUILDER RUNNING
IN NON-ENGLISH LANGUAGE CAN RESULT IN WRONG META DATA
GENERATED FOR LIST OF VALUES LOV QUERY
34778937 PAGE DESIGNER: SETTING ORDER BY ITEM FOR CLASSIC REPORT
DOESN'T DISABLE COLUMN LEVEL SORTABLE
34785016 INTERACTIVE GRID - NAVIGATION MODE - INACCESSIBLE ROW
HEADERS IN VIRTUAL CURSOR MODE OF JAWS
34787217 QUICK SQL JSON COLUMN DIRECTIVE GENERATES INVALID COLUMN
NAME WITHIN IS JSON CHECK CONSTRAINT
34788868 PAGE DESIGNER: CLASSIC REPORT BASED ON SQL QUERY ORDER
BY ITEM ATTRIBUTE DOES NOT SHOW THE CURRENT VALUE
34801334 HTML CODE IS EXPOSED BY SCREEN READER IN INTERACTIVE GRID
FOR SORTED COLUMNS WHEN HTML PRESENTS IN THE HEADING
34810793 XMLHTTPREQUEST / AJAX POST REQUESTS ARE INTERCEPTED BY
DEFAULT PWA SERVICE WORKER
34815591 LEGACY TABULAR FORM: COLUMN HEADING SORTS ARE BROKEN IN
THE BUILDER
34816104 REGION'S LANDMARK EXPOSE HTML CODE TO SCREEN READER
34816695 INACCESSIBLE EDIT LINK IN SHARED COMP > LISTS > LIST DETAILS
PAGE
34823431 APEX 22.2 CLASSIC REPORT MEDIA LIST TEMPLATE HAS NO EQUAL
SIGN AFTER ATTRIBUTE ARIA-HIDDEN
34829685 WHEN IMPORTING PLUGINS, CANCEL BUTTON IS REDIRECTING TO
APP BUILDER HOME PAGE
34835558 INTERACTIVE REPORT: HIDDEN COLUMN AS TEMPLATE DIRECTIVE
ARGUMENT IGNORED
34835670 MAXIMUM LOGIN FAILURES ALLOWED ATTRIBUTE HELP TEXT IS NOT
CLEAR IN INTERNAL WORKSPACE
34850640 TEXTAREA WITH CHARACTER COUNTER SHOULD NOT DEPEND ON
MAXIMUM LENGTH
34859744 NULL SUBSTITUTIONS NOT HANDLED FOR QUICK PICKS
34874022 MEGA MENU SOMETIMES DISPLAYS IN WRONG LOCATION
34876366 INTERACTIVE GRID: DISABLING COLUMN FROM USER BREAK
CONTROL SHORT-CIRCUITS EXPECTED SORTING IN GROUPS
34880567 REGRESSION: INTERACTIVE GRID: JAVASCRIPT ERROR WHEN
SWITCHING INTO SINGLE ROW VIEW IN MODEL.JS
34880761 NUMBERFIELD: CLIENT SIDE VALIDATION WORKS NOT CORRECTLY
WHEN MIN IS A DECIMAL NUMBER IN GERMAN
34888991 JAVASCRIPT ERROR WHEN "REFRESH ROWS" AFTER DISABLING
CELLS IN INTERACTIVE GRID WITH DYNAMIC ACTION
34896762 WWV_FLOW_EXEC_LOCAL CAN NOT DESCRIBE TABLES WITH
COLUMN TYPES > 30 BYTES
34909201 SIMPLE HTTP REST SOURCE WITH NO PAGINATION: APEX
COMPONENTS CAN ONLY ACCESS THE FIRST PAGE
34918155 CODE EDITOR NOTIFICATIONS ARE NOT ANNOUNCED BY SCREEN
READERS
34929885 GEOCODING FAILS TO RETURN TIMEZONE INFO THAT ELOCATION
SERVICE KNOWS HOW TO PROVIDE
34964974 POPUP LOV TRIGGER FOCUS EVENT ON THE DATE PICKER WHEN
BOTH ARE ON THE SAME PAGE

9-3
Chapter 9

Bug Number Description


34969093 DICTIONARY CACHE JOB ERRORS OUT WHEN TABLE HAS PK
CONSTRAINT ON OBJECT TYPE ATTRIBUTE
34974960 ADD APEX_LANG.GET_LANGUAGE_SELECTOR_LIST
34977538 MAP REGION THROWS ORA-6502 WHEN GEOMETRY TYPE DOES NOT
MATCH LAYER TYPE AND PRIMARY KEY VALUE IS NON-NUMERIC
34980663 CHOOSING SMART FILTER OPTION USING KEYBOARD
UNEXPECTEDLY APPLIES TEXT SEARCH FIRST, UNLIKE WHEN
MOUSE USED
34995573 CREATE FORM PAGE WIZARD GENERATES INVALID SELECT LIST FOR
FOREIGN KEY COLUMNS WHEN TABLE AS UI DEFAULTS
35000191 BROWSER DEVELOPER TOOLS MAY RAISE SOURCE MAP WARNINGS
FOR JET BUNDLES
35003356 APEX SERVES WASM FILES WITH WRONG CONTENT TYPE
35003528 APEX_MARKDOWN TO_HTML CANNOT PARSE EMOJIS
35009997 SAML AUTH: TIMESTAMPS WITH FRACTIONAL SECONDS LEAD TO
NLS ERRORS WHEN APP PRIMARY LANGUAGE IS GERMAN
35011645 QUICK SQL ALTERS IDENTITY COLUMN TO ALWAYS TO RESET THE
SEQUENCE IF /INSERT DIRECTIVE USED AND CAUSES SIDE BY SIDE
MD WIZARD TO FAIL
35027073 PAGE DESIGNER: LOV TYPE ATTRIBUTES HAVE SQL QUERY EXAMPLE
IN THE HELP TEXT
35032340 UNESCAPED ARIA-LABEL ATTRIBUTE MAY CAUSE HTML CODE TO BE
EXPOSED TO SCREEN READER USERS
35032866 UNIVERSAL THEME: LINKS LIST TEMPLATE DOES NOT SHOW CHILD
LIST ENTRIES
35038471 USE SEMICOLONS TO SEPARATE SQL STATEMENTS WHEN
EXPORTING EMBEDDED CODE
35042503 WORKSPACE FILE VERSION IS NOT INCREMENTED WHEN IMPORTING
A WORKSPACE EXPORT FILE
35045970 PAGE DESIGNER INTERNAL ERRORS ARE REPORTED POORLY
("UNEXPECTED END OF JSON INPUT")
35046331 INTERACTIVE GRID REVERT ACTION DOES NOT CLEAR ROW ERROR
35047273 CHANGE PAGE DESIGNER "PICK TABLE" PROPERTY TO NO LONGER
FETCH AND DISPLAY TABLE COMMENTS
35047632 INTERACTIVE GRID DISPLAY HIDE COLUMN ACTION WHEN THE
PROPERTY IS OFF
35059564 PASSWORD ITEMS INTERACTIVE REPORT HIGHLIGHT ON PG 4000:59
IS NOT ACCESSIBLE
35061631 APEX_CREDENTIAL.SET_SESSION_CREDENTIALS DOES NOT
PREPARE PRIVATE KEY FOR THE "OCI" CREDENTIAL TYPE
35072569 SOCIAL SIGN IN WITH OAUTH: SETTING "VALID FOR URLS" FOR THE
USED CREDENTIAL LEADS TO "CREDENTIAL NOT ALLOWED FOR
THIS URL" ERROR
35074102 "RESTRICTED" DEVELOPER ACCOUNTS CANNOT DELETE
APPLICATIONS
35088401 POPUP LOVS IN APP BUILDER HAVE OVERESCAPING ISSUES
35089582 USING SHARED LOV WITH MIXED NAME FOR COLUMN DISPLAY
BREAKS CLASSIC REPORT
35092961 DATA PROFILE EDIT PAGE: REDISCOVER WITH SAMPLE RESPONSE
DOES NOT WORK FOR CSV

9-4
Chapter 9

Bug Number Description


35096513 ORDS REST SOURCE THROWS HTTP-400 IF THE REST SERVICE
USES THE "CSV" HANDLER TYPE
35102526 CREATE ORDS REST SOURCE GENERATES WRONG URL PATTERNS
FOR ORDS SERVICES WHEN ENDPOINT URL CONTAINS
PARAMETERS
35105737 APPROVAL COMPONENT: CLOB COLUMNS IN THE TASK DEFINITION
ACTION SOURCE RESULT IN ERRORS WHEN CREATING NEW TASK
INSTANCE
35115943 VIEW APEX_WORKSPACE_CREDENTIALS DOES NOT CONTAIN ID
(PRIMARY KEY OF THE CREDENTIAL)
35118803 DATALOADING: SPINNER CONTINUES FOREVER AND BROWSER
POPUP FOR UNSAVED CHANGES IS DISPLAYED WHILE SAVING
CHANGES FOR COLUMN MAPPING
35118846 DATE PICKER: THE YEAR SELECTION LIST SHOULD ADAPT TO
MIN/MAX VALUES
35120434 COPY PAGE FROM OTHER APP: FACETS ARE TURNED TO NORMAL
TEXT ITEMS WHEN "DO NOT COPY" LOV OPTION WAS CHOSEN
35122774 QUICKSQL SETTINGS HELP MENTIONS "IDENTIFIERS" INCORRECTLY
FOR "LONGVC" OPTION
35125503 CREATE "REST ENABLED SQL QUERY" REST SOURCE: NOT NULL
VALIDATION ON "REST SQL REFERENCE" IS MISSING
35125959 INVALID YAML FILE FOR SUBSCRIBED LISTS
35130003 SUBMIT FEEDBACK: SESSION STATE SHOULD NOT CONTAIN
INTERNAL ITEMS (WITHOUT NAME)
35132561 ADB-S: UNABLE TO SET APPLICATION_ACTIVITY_LOGGING INSTANCE
PARAMETER USING API
35144981 CHANGING FORM REGION TYPE LEAVES PAGE WITH DUPLICATE
PAGE PROCESS & EXTRA ITEMS
35145009 PAGE PROCESSES, COMPUTATIONS, VALIDATIONS, BRANCHES CAN
BE COPIED TO GLOBAL PAGE
35154878 BRANCH_TO_PAGE_ACCEPT REQUEST ON MODAL PAGES THROWS
JAVASCRIPT ERROR WITH FRIENDLY URLS ON
35159175 DATE FORMAT SHOWS UP INCORRECTLY IN REPORT DOWNLOAD
FOR EXCEL
35161374 TEXTFIELD WITH AUTOCOMPLETE MISSING RED BORDER WHEN
FAILING VALIDATION
35166428 TABS CONTAINER REGION TEMPLATE FAILS TO RENDER WHEN
USING HTML IN REGION TITLE
35171187 INVALID IDENTIFIER: CHECKBOX OR RADIO GROUP ON SHARED
COMP LOV ON REST-ENABLED SQL OR REST SOURCE
35174652 XML DATA LOAD CAN RAISE ORA-1706: USER FUNCTION RESULT
VALUE WAS TOO LARGE
35195711 REMOVE EXTRA WHITESPACE IN FACETED SEARCH CHART LABELS
35215039 SHUTTLE ITEM DOESN'T FIRE CHANGE EVENT ON REORDER
35215238 APEX.WIDGET.UTIL.WHENBECOMESVISIBLE DOESN'T WORK WHEN
THERE ARE MULTIPLE COMPONENTS BECOMING VISIBLE AT THE
SAME TIME
35217084 REST SOURCE: CANNOT ADD SQL EXPRESSION BASED ON CLOB
COLUMN TO DATA PROFILE

9-5
Chapter 9

Bug Number Description


35260689 REPORT TEMPLATE WITH MULTIBYTE CHARACTERS IS CORRUPTED
UPON IMPORT
35285406 REGRESSION: CLOBS FAIL TO BE CLONED WITH
APEX_CLONE_SESSION

9-6
10
Open Bugs and Known Issues
This section describes bugs and known issues for Oracle APEX release 23.1.

Tip:
This section is current as of the writing of this document. To view the most current
listing of changed behavior, go to the Known Issues page:
https://www.oracle.com/tools/downloads/apex-downloads/apex-231-known-issues/

• Known Issue with Confirm or Alert Dynamic Action Messages When Upgrading
• Known Issue using 'Source Display' region type plug-in in previously installed Sample
Apps
• Known Issues for jQuery Upgrade
• Interactive Grid support for REST Enabled SQL
• Group By Component Type mode prevents Default View
• Known Issues for Data Generator
• Known Issue Using Readable Export Format
• Known Issue when Displaying RESTful Module Definition Full URL
• Known Issue when Displaying Full URL for Enabled Object Definition when using a
Named Pool in ORDS

10.1 Known Issue with Confirm or Alert Dynamic Action


Messages When Upgrading
Issue
When upgrading from APEX 21.2 or earlier, the text in existing Confirm or Alert dynamic
action messages may be truncated if it is too long, leading to data loss. This is due to APEX
HTML-escaping messages, which may increase their size past the 4000-byte limit.

Resolution
Prior to upgrading, run a query to check whether any messages are affected:

select *
from apex_application_page_da_acts
where action_name in ('Alert', 'Confirm')
and ( lengthb( attribute_01 )

10-1
Chapter 10
Known Issue using 'Source Display' region type plug-in in previously installed Sample Apps

+ ( 4 * nvl( regexp_count( attribute_01, '&|"|<|>' ), 0 ) )


) > 4000;

If the query does not return any rows, proceed with the upgrade.
If the query does return rows, convert the affected rows into application text messages
and reference them with substitution syntax before proceeding with the upgrade.

10.2 Known Issue using 'Source Display' region type plug-in


in previously installed Sample Apps
Issue
The Source Display region type plug-in that is used in a Sample App installed in a
previous release of APEX no longer works. This issue is due to the removal of views
associated with AnyChart charts and AnyMap map charts.

Resolution
1. Open the application to edit it.
2. Navigate to Shared Components, under Other Components select Plug-ins, and
Source Display.
3. Update the PL/SQL Code to remove the following lines of code (lines 35 - 48):

union all
select reg.source_type, fs.series_seq, fs.series_name,
fs.series_query source
from apex_application_page_regions reg,
apex_application_page_flash5_s fs
where reg.application_id = :APP_ID
and reg.page_id = :APP_PAGE_ID
and reg.static_id = d_region_static_id
and fs.application_id = reg.application_id
and fs.page_id = reg.page_id
and fs.region_id = reg.region_id
and reg.source_type in (
'Flash Chart',
'Map'
)

4. Click Apply Changes.

10.3 Known Issues for jQuery Upgrade


jQuery 3.x breaks compatibility with earlier 2.x versions. For applications that still rely
on removed 2.x functionality, you can use the jQuery Migrate plug-in (to include this
plug-in, set the Desktop User Interface Details attribute Include jQuery Migrate to
Yes).
If your application relies on removed 1.x jQuery APIs, that functionality no longer
works as of Application Express release 18.1. You must update the JavaScript to only
use jQuery 3.5 or later APIs. See the jQuery migration guides to learn more:

10-2
Chapter 10
Interactive Grid support for REST Enabled SQL

• To migrate from 1.x to 2.x see http://jquery.com/upgrade-guide/1.9/


• To migrate from 2.x to 3.5.x see https://jquery.com/upgrade-guide/3.5/

10.4 Interactive Grid support for REST Enabled SQL


Issue
Oracle REST Data Services (ORDS) REST Enabled SQL has a limit of 1000 bind variables in
a REST Enabled SQL request. As a result, when Interactive Grid DML sends more than 1000
column values, the following error displays: "Internal ORDS OUT Bind limits exceeded."

Solution
Reduce the amount of DML rows.

10.5 Group By Component Type mode prevents Default View


Issue
Due to the removal of "Sort by Processing Order" and "Group by Component Type" from
Page Designer, developers may be stuck in "Group by Component Type" mode without a way
to switch back to the default view ("Sort by Processing Order").

Resolution
1. In Page Designer, open Developer Console in the browser, and run the following
command:

pageDesigner.saveBoolPref( "GROUP_BY_COMPONENT_TYPE", true );

2. Refresh the page.

10.6 Known Issues for Data Generator


There are known issues with the API for the data generator:
• API does not accept Percent Blank value of 100.
• Some built-ins that return a number data type ignore values set for minimum value,
maximum value, and value precision.
• Preview ignores columns when all their values are null.
• When generating data and using row scaling other than 1x, sometimes an extra row is
added.
These issues will be fixed in a future release.

10.7 Known Issue Using Readable Export Format


The Readable Export Format in JSON and YAML does not include attribute values for plug-
ins, themes, and templates.
This will be resolved in a future release of APEX.

10-3
Chapter 10
Known Issue when Displaying RESTful Module Definition Full URL

10.8 Known Issue when Displaying RESTful Module


Definition Full URL
Issue
The full URL displayed when viewing a module definition is incorrect. This issue is
tracked in bug 35378812.

Resolution
Remove the module name from the full URL.

Example
For the default module, oracle.example.hr, the full URL displays as:

server/ORDS alias/schema alias/oracle.example.hr/hr/

The correct URL is:

server/ORDS alias/schema alias/hr/

10.9 Known Issue when Displaying Full URL for Enabled


Object Definition when using a Named Pool in ORDS
Issue
The full URL displayed when viewing an enabled module definition when using a
named pool in ORDS is incorrect. This issue is tracked in bug 35340435.

Resolution
Add the ORDS named pool to the full URL.

Example
For an AutoREST enabled object definition with ORDS configured to use a named
pool, the full URL displays as:

server/ORDS alias/schema alias/object alias/

The correct URL is:

server/ORDS alias/ORDS named pool/schema alias/object alias

10-4
11
Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility
Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support


Oracle customers that have purchased support have access to electronic support through My
Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info
or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.

11-1
12
Privacy Notice
This privacy notice describes what to expect when Oracle APEX directly collects information
about users of applications that you create or install. Note that all APEX internal applications
(such as Application Builder) are written in APEX, so the same facts apply to developers and
administrators who are using these applications. Oracle is not responsible for information
collection of applications that were developed by customers.

Event Logging
APEX provides extensive logging of user triggered events. For example, developers and
administrators can use this data to find security and performance issues. The log data
includes the user’s IP address and application username plus event specific information.
Below is a brief list of event log types.
• Activity Log - Page views and Ajax requests. Can be disabled by developers and
instance administrators.
• Login Access Log - Successful and failed login attempts.
• Debug Log - Application-specific instrumentation, such as internal variable values.
Disabled by default, the debug log can be enabled by end users and developers.
• Click Count Log - Clicks on external links within applications.
• Web Service Activity Log - Requests to external web services from inside the database.
• Developer Activity Log - Changes to application components.
• SQL Workshop Log - History of SQL statements in the development environment's SQL
Workshop.

Cookies and Related Technologies


APEX does not use any third-party cookies, but it does use functional cookies (no tracking)
and the browser’s SessionStorage and LocalStorage for maintaining the login session and for
personalization. This is essential for application security, performance, and ease of use.
Below are details about the cookie and storage names that APEX uses and their intended
use.

Session Cookies
• ORA_WWV_USER_instance id - Security cookie for internal applications, like Application
Builder.
• ORA_WWV_APP_application id, ORA_WWV_APP_workspace cookie id, custom name -
Security cookie for applications. Developers can choose custom cookie names in an
application's authentication scheme.
• ORA_WWV_RAC_INSTANCE - Session cookie for the Real Application Cluster (RAC) node
instance number, for node pinning on the web server. Only sent when multiple RAC
nodes are detected.

12-1
Chapter 12

Persistent Cookies
• ORA_WWV_REMEMBER_LANG - The user’s selected application language.
• ORA_WWV_REMEMBER_UN - (Optional) Workspace and username of the previous login
to the development environment login page. See check box Remember
workspace and username on the development environment login page for
details.
• LOGIN_USERNAME_COOKIE - (Optional) Username of the previous login to developed
applications. See check box Remember username on login pages of new
applications for details. To make this cookie optional on login pages of existing
applications, add a Remember username checkbox to the page. The API
documentation for APEX_AUTHENTICATION.GET_LOGIN_USERNAME_COOKIE and
APEX_AUTHENTICATION.SEND_LOGIN_USERNAME_COOKIE has examples for the
PL/SQL process code to set the check box value and to only send the cookie
when the check box is checked.

Session Storage
• Object Browser - Session storage keys used for the Object Browser:
– ORA_WWV_apex.objectBrowser.openTabs - Stores a JSON structure with
information about the currently open object.
– ORA_WWV_apex.objectBrowser.viewState - Stores view state for the current
view of the current open object.
– ORA_WWV_apex.objectBrowser.lastSchema - Stores an opaque number
related to the last used schema.
– ORA_WWV_apex.objectBrowser.treeExpansionState - Stores a list of
expanded tree nodes.
– ORA_WWV_apex.objectBrowser.treeSelection - Stores the selected tree
node.
– ORA_WWV_apex.objectBrowser.objectFilter - Stores the current filter.
• Spatial Map Region - Session storage keys used on the map component:
– ORA_WWV_apex.spatialMap.application id.page.region id.zoomState -
Stores the current zoom level on the map
– ORA_WWV_apex.spatialMap.application id.page.region id.lngState -
Stores the current longitude on map
– ORA_WWV_apex.spatialMap.application id.page.region id.latState -
Stores the current latitude on map
– ORA_WWV_apex.spatialMap.application id.page.region id.bearingState
- Stores the current tilt in degrees on the map
– ORA_WWV_apex.spatialMap.application id.page.region id.pitchState -
Stores current direction user is facing measured clockwise as an angle on the
map
• ORA_WWV_apex.facets.application id.page.region id.clientSideFiltering -
Stores the facets where the user has enabled or disabled on client-side filtering.
• ORA_WWV_apex.facets.application id.page.region id.hiddenFacets - Stores
the facets where the user has set Visibility to Off.

12-2
Chapter 12

• ORA_WWV_apex.facets.application id.page.region id.chartConfig - Stores the


configuration for the facet charts.
• ORA_WWV_apex.facets.application id.page.region id.openCharts - Stores the facet
charts that have been opened.
• ORA_WWV_apex.facets.application id.page.region id.facetCollapsedState -
Stores the facet-collapsible state.
• ORA_WWV_apex.PopupLov_*.application id.page.state - This stores the popup dialog
size, column widths, sort column, and direction of popup LOV items.
• ORA_WWV_apex.builder.devToolbar.grid - This stores the current setting of the
Development Toolbar’s Show Layout Columns option.
• ORA_WWV_apex.builder.utr.application id.* - This stores settings of the
Development Toolbar’s Theme Roller popup.
• ORA_WWV_apex.builder.pageDesigner.application id.(current tab id) - This
stores the current tab in each of the tab sets of Page Designer.
• ORA_WWV_apex.core.userHasTouched - This is used to remember if the user has
interacted with the application using touch (a touchstart event has been seen). It is used
by some components to customize the user experience when using touch devices.
• ORA_WWV_apex.apexTabs.application id.page.*.activeTab - This remembers the last
tab selected for Region Display Selector regions or regions using the Tabs Container
template that have enabled the option to save the current tab
• ORA_WWV_apex.Calendar.application id.page.region id.lastview - This remembers
the last viewed calendar period.
• ORA_WWV_apex.toggleCore.*.application id.page.*.preferenceForExpanded - This
remembers the expanded state for collapsible regions.
• ORA_WWV_apex.MED_*.splitterPosition - This stores the splitter bar position for various
Interactive Grid settings dialogs.

Local Storage
• ORA_WWV_apex.builder.devToolbar.options - This stores the Developer Toolbar user
preference settings: Auto Hide, Show Icons Only, and Display Position.
• ORA_WWV_apex.builder.pageDesigner.model.componentIds - This stores a pool of not
yet used IDs for new components in Page Designer.

Check for Updates


When developers log in to the APEX development environment, they get a notification when
a new version is available. To get this version information, APEX sends a request to an
oracle.com server on a bi-weekly basis. It passes anonymized, statistical information about
the development server (such as database version and APEX component usage) that the
APEX product development team uses to make decisions about the products' future. This
check is enabled by default, but can be disabled by instance administrators. To learn more,
review the CHECK_FOR_UPDATES parameter in APEX_INSTANCE_ADMIN in Oracle APEX API
Reference.

12-3
Index
B R
browser release numbering
requirement, 1-1 convention, 1-2
requirements
browser, 1-1
I
installation W
enabling network services, 3-6
Web browser
requirements, 1-1
N web server
network services Oracle REST Data Services, 1-2
enabling, 3-6 requirements, 1-2
granting connect privileges, Oracle Database
12c, 3-7
invalid ACL error, 3-8

O
Oracle APEX
browser requirement, 1-1

Index-1

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy