Oracle® Application Express

Release Notes

Release 4.0

E15512-02

September 2010

These Release Notes contain important information not included in the Oracle Application Express documentation. For the most current information, refer to updates of this document, which are located at the following Web site:

http://www.oracle.com/technetwork/indexes/documentation/index.html

For a complete description of each new 4.0 feature, please see "What's New in Oracle Application Express" in the Oracle Application Express Application Builder User's Guide.

This document contains these topics:

1 Checking for the Most Current Release

Oracle Application Express is released more frequently than the Oracle Database. To view information about or download a more current release, refer to:

http://www.oracle.com/technetwork/developer-tools/apex/overview/index.html

2 Configuration Requirements

The value of the character set portion of PlsqlNLSLanguage in the configuration of the mod_plsql Database Access Descriptor (DAD) must be set to AL32UTF8, regardless of the underlying database character set.

The Database Access Descriptor now contains a parameter for PlsqlRequestValidationFunction. The purpose of this parameter is to limit the number of procedures which can be invoked through mod_plsql. By default, the only procedures permitted are the public entry points of Oracle Application Express. This can be extended using the validation functions shipped with Oracle Application Express. To learn more, see "Restricting Access to Oracle Application Express by Database Access Descriptor (DAD)" in Oracle Application Express Application Builder User's Guide.

Enabling the PlsqlRequestValidationFunction for a Database Access Descriptor may cause existing applications which relied upon publicly executable procedures to fail. You may choose to either omit the PlsqlRequestValidationFunction from the Database Access Descriptor definition, or follow the recommended approach of extending the supplied validation function.

3 Changed Behavior

This section describes changed behavior in Oracle Application Express release 4.0.

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 available off the Downloads page. See:
http://www.oracle.com/technetwork/developer-tools/apex/downloads/index.html

This section contains the following topics:

3.1 Ability to Define Authorized URLs

Oracle Application Express developers can use a URL as an argument in Oracle Application Express procedures that redirect to the defined URL. Examples include the p_url parameters in the APEX_UTIL.COUNT_CLICK procedure and the p_next_url in the WWV_FLOW_CUSTOM_AUTH_STD.LOGOUT procedure.

Instance administrators can now define a list of authorized URLs. When a URL is provided as an argument to these procedures, it is verified internally against this list. See "Defining Authorized URLs" in Oracle Application Express Administration Guide.

3.2 About Granting Privileges to Database Users

In Oracle Application Express release 4.0, no privileges are granted to database users when creating a workspace on an existing schema. Unless direct grants exist, database users in Oracle Application Express will not be able to create tables or other database objects. To allow the creation of typical database objects, Oracle recommends the following list of directly granted privileges:

grant CREATE SESSION to [database username]

grant CREATE CLUSTER to [database username]

grant CREATE DIMENSION to [database username]

grant CREATE INDEXTYPE to [database username]

grant CREATE JOB to [database username]

grant CREATE MATERIALIZED VIEW to [database username]

grant CREATE OPERATOR to [database username]

grant CREATE PROCEDURE to [database username]

grant CREATE SEQUENCE to [database username]

grant CREATE SNAPSHOT to [database username]

grant CREATE SYNONYM to [database username]

grant CREATE TABLE to [database username]

grant CREATE TRIGGER to [database username]

grant CREATE TYPE to [database username]

grant CREATE VIEW to [database username]

3.3 List of Values Behavior Changes

The validations of List of Values, which required the columns of the SELECT statement to be valid identifiers and be unique, now also apply to List of Values defined as PL/SQL functions which return a SELECT statement

Additionally, Null Return Value for LOVs no longer defaults to %null%. Instead the string defined in the attribute is always used.

3.4 Item Type Enhancements

Oracle Application Express includes the following behavior changes for item types:

  • Display As Text item types have been merged into a new item type called Display Only.

    Note that Display Only item types no longer convert HTTP:// in the text to HTML links.

  • LOV-based item types no longer display brackets ([ ]) in read-only and printer friendly mode.

  • Radio Group item types now use the p_txx array for value mapping. Previously, this item type used the p_vxx arrays for the html input element.

  • The Select List, Popup LOVs, and Shuttle item types will now always escape the values contained in the list.

3.5 Improvements to JavaScript Set function

The JavaScript function $s has been extended to support setting the value of the following elements:

  • A Display Only item type that defines some explicit class in the HTML Form Element Attributes (for example, class="my_class").

  • Any span or div element.

3.6 AnyChart AnyGantt Flash Gantt and AnyChart AnyMap

This release of Oracle Application Express includes the AnyChart AnyGantt Flash Gantt Component and the AnyChart AnyMap extension. These products are exposed through the Create Page and Create Region wizards. To learn more about these products, see:

For specifics about the XML structures necessary to use these products, see:

3.7 Improvements to the JavaScript Show and Hide Functions

The JavaScript functions $x_Show and $x_Hide have been extended to also show and hide an item's label, if it exists. The label will be shown or hidden if it has a for attribute value matching the string ID attribute value of the item.

3.8 Including Different JavaScript Libraries

Oracle Application Express release 4.0 includes the jQuery JavaScript library (Version 1.4.2) and jQuery UI JavaScript library (Version 1.8). If you wish to include a different version of either of these libraries, or any other JavaScript library using $ as a global namespace, then you need to include them after the #HEAD# placeholder in the Definition > Header section of your application's page templates. This ensures that your versions of the libraries are available.

Note that prior to Oracle Application Express release 4.0, you could include the jQuery libraries before the #HEAD# placeholder. Includnig jQuery libraries. With the inclusion of jQuery libraries that approach is no longer supported.

4 Functionality No Longer Supported

The following are not supported in Oracle Application Express, release 4.0.

This section contains the following topics:

4.1 No Support for Running in an EBCDIC Character Set

Oracle Application Express does not support an EBCDIC character set. The value of the character set in the configuration of the mod_plsql Database Access Descriptor (DAD) must be set to AL32UTF8, regardless of the underlying database character set.

4.2 Text Areas No Longer Support Spell Checks

Text Area item types have been migrated to a simple text area. This functionality has been replaced by Web browser spell checking support, which supports more languages.

4.3 Format Masks Not Supported by Date Picker

Oracle Application Express includes a new jQuery based Date Picker. This new date picker does not support the format masks described in Table 1, "Unsupported Date Picker Formats".

Table 1 Unsupported Date Picker Formats

Format Description

CC

Century

BCC

Century BC prefixed with

SYYY

Year with BC prefixed

IYYYY

ISO year

YEAR

Year spelled out

SYEAR

Years spelled out with BC prefixed

BC

BC/AD indicator

Q

Quarter

RM

Roman month

WW

Week of year 1-52

W

Week of month 1-5

IW

ISO standard week of year

DDTH

Ordinal day

DDSPTH

Spelled out Ordinal

J

Julian Day

TH

Ordinal format

TZD

Abbreviated time zone name

TZH

Time zone Hour displacement

TZM

Time zone Minute displacement

TZR

Time Zone Region


5 Open Bugs and Known Issues

Tip:

This section is current as of the writing of this document. To view the most current listing of known issues, go to the Known Issues page available off the Downloads page. See:
http://www.oracle.com/technetwork/developer-tools/apex/downloads/index.html

This section describes bugs and known issues for Oracle Application Express.

5.1 Access Denied When Validating Migration Export File

If you enter invalid text in the Migration Export File field in the first step of the Create Project wizard, you might receive an Access Denied error and the progress bar might persist. This may occur when you are using Internet Explorer 6.0 on Windows XP.

Workaround:

Use either the Browse option or enter the full path manually. Be sure to enter a valid SQL script and path in this field.

5.2 Supported Web Browsers

To view or develop Oracle Application Express applications, Web browsers must support Java Script and the HTML 4.0 and CSS 1.0 standards. The following browsers are required to develop applications in Oracle Application Express:

  • Microsoft Internet Explorer 7.0 or later version

  • Mozilla Firefox 3.5 or later version

  • Google Chrome 4.0 or later version

  • Apple Safari 4.0 or later version

Application Express applications can be developed that support earlier Web browser versions, including Microsoft Explorer 6.0.

5.3 Problems with SVG Charts

If you experience problems with an SVG chart, try upgrading the chart to a Flash chart.

To upgrade an SVG chart to Flash:

  1. Navigate to the appropriate Page Definition.

  2. Under Regions, click the region name. The region name displays to the left of SVG Chart.

  3. On the Region Definition, click Upgrade SVG Chart to Flash Chart on the Tasks list.

  4. Click Upgrade.

5.4 Problems with Queries Containing a Bind Variable and a String with Two Dashes

Creating a report region based on a query that contains a string with two dashes may hinder the Application Express Engine's ability to handle item bind variable references. Consider the following example:

SELECT ename, job, sal, comm, deptno
FROM   emp
WHERE instr ('-'||'-dash-'||'-','uu') = 0 
AND deptno = :P18_X 
AND 1 = 1 

Workaround:

You can correct this behavior by changing the bind variable format. For example, to correct this issue in the previous example you would change :P18_X to v('P18_X').

5.5 Importing Spreadsheet Data Containing Quotation Marks

If you import spreadsheet data by copying and pasting and a column value contains a double quotation mark, the data will not import correctly (for example, 54" Plasma Flat Screen). To avoid this problem, you have two options:

  • Option 1:

    1. Save the data in a delimited format (such as comma-delimited (.csv) or tab-delimited).

    2. Use Import Text Data wizard to upload and import the saved file.

  • Option 2:

    1. Replace the quotation mark with two double quotation marks as shown in the following example:

      54"" Plasma Flat Screen
      
    2. Use the Import Spreadsheet Data wizard to import the file.

5.6 Creating an Item with Multibyte Characters

If you create a form on a table or view using a wizard and the included column name contains multibyte characters, the name of the new item will contain multibyte characters.

This issue is tracked with Oracle bug 3393090.

Workaround:

To correct this problem, when you create new items on the Page Definition use alphanumeric characters A_Z, 0-9 and '_' for the item names. You may also need to changes item names to alphanumeric before you apply changes to the item.

5.7 Runtime Errors in an Application Imported from a Previous Release

If you export an application from an earlier Oracle Application Express release and then import and install it using the installation pages in Application Builder, in rare situations you may encounter runtime errors after the application installs.

These errors often manifest themselves as PL/SQL parser or execution errors pertaining to blocks of PL/SQL code embedded within application components. The installation process sometimes splits strings greater than 200 characters into multiple lines. For example, lines may split between PL/SQL keywords, or at other places that cause parsing errors.

Workaround:

If you encounter these types of errors and suspect the installation process has split large strings:

  1. Isolate the failing component containing the suspect PL/SQL within the application by editing the failing page in Application Builder.

  2. Locate the blocks of code that appear to split incorrectly.

  3. Attempt to split the blocks of code in more appropriate places, or insert white space with the lines until no runtime errors are observed.

  4. Export the application, import the export file, and then reinstall it.

  5. Retain the new export file as a permanent backup copy.

5.8 Enabling Network Services in Oracle Database 11g

By default, the ability to interact with network services is disabled in Oracle Database 11g. Therefore, if you are running Oracle Application Express with Oracle Database 11g, you need to use the new DBMS_NETWORK_ACL_ADMIN package to grant connect privileges to any host for the APEX_040000 database user. Failing to grant these privileges results in issues with:

  • Sending outbound mail in Oracle Application Express.

    Users can call methods from the APEX_MAIL package, but issues arise when sending outbound email.

  • Using Web services in Oracle Application Express.

  • PDF/report printing.

  • Searching for content in online Help (that is, using the Find link).

Topics in this section include:

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 an 11g database will already have the parameter set properly, but a database upgraded to 11g from a prior version may not. See "Creating and Configuring an Oracle Database" in Oracle Database Administrator's Guide for information about changing database initialization parameters.

5.8.1 Granting Connect Privileges to a Host

The following example demonstrates how to grant connect privileges to any host for the APEX_040000 database user.

DECLARE
  ACL_PATH  VARCHAR2(4000);
  ACL_ID    RAW(16);
BEGIN
  -- Look for the ACL currently assigned to '*' and give APEX_040000
  -- the "connect" privilege if APEX_040000 does not have the privilege yet.

  SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS
   WHERE HOST = '*' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL;

  -- Before checking the privilege, make sure that the ACL is valid
  -- (for example, does not contain stale references to dropped users).
  -- If it does, the following exception will be raised:
  --
  -- ORA-44416: Invalid ACL: Unresolved principal 'APEX_040000'
  -- ORA-06512: at "XDB.DBMS_XDBZ", line ...
  --
  SELECT SYS_OP_R2O(extractValue(P.RES, '/Resource/XMLRef')) INTO ACL_ID
    FROM XDB.XDB$ACL A, PATH_VIEW P
   WHERE extractValue(P.RES, '/Resource/XMLRef') = REF(A) AND
         EQUALS_PATH(P.RES, ACL_PATH) = 1;

  DBMS_XDBZ.ValidateACL(ACL_ID);
   IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_040000', 
     'connect') IS NULL THEN 
      DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH, 
     'APEX_040000', TRUE, 'connect'); 
  END IF;

EXCEPTION
  -- When no ACL has been assigned to '*'.
  WHEN NO_DATA_FOUND THEN
  DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('power_users.xml',
    'ACL that lets power users to connect to everywhere',
    'APEX_040000', TRUE, 'connect');
  DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('power_users.xml','*');
END;
/
COMMIT;

5.8.2 Granting Connect Privileges to a Local Host

The following example is a less privileged demonstration of how to access resources on a local host. This example would enable indexing of Oracle Application Express Online Help and could possibly enable email and PDF printing if those servers were also on the local host.

DECLARE
  ACL_PATH  VARCHAR2(4000);
  ACL_ID    RAW(16);
BEGIN
  -- Look for the ACL currently assigned to 'localhost' and give APEX_040000
  -- the "connect" privilege if APEX_040000 does not have the privilege yet.
  SELECT ACL INTO ACL_PATH FROM DBA_NETWORK_ACLS
   WHERE HOST = 'localhost' AND LOWER_PORT IS NULL AND UPPER_PORT IS NULL;

  -- Before checking the privilege, make sure that the ACL is valid
  -- (for example, does not contain stale references to dropped users).
  -- If it does, the following exception will be raised:
  --
  -- ORA-44416: Invalid ACL: Unresolved principal 'APEX_040000'
  -- ORA-06512: at "XDB.DBMS_XDBZ", line ...
  --

  SELECT SYS_OP_R2O(extractValue(P.RES, '/Resource/XMLRef')) INTO ACL_ID
    FROM XDB.XDB$ACL A, PATH_VIEW P
   WHERE extractValue(P.RES, '/Resource/XMLRef') = REF(A) AND
         EQUALS_PATH(P.RES, ACL_PATH) = 1;

  DBMS_XDBZ.ValidateACL(ACL_ID);
   IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(ACL_PATH, 'APEX_040000', 
     'connect') IS NULL THEN 
      DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(ACL_PATH, 
     'APEX_040000', TRUE, 'connect'); 
  END IF;

EXCEPTION
  -- When no ACL has been assigned to 'localhost'.
  WHEN NO_DATA_FOUND THEN
  DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('local-access-users.xml',
    'ACL that lets power users to connect to everywhere',
    'APEX_040000', TRUE, 'connect');
  DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('local-access-users.xml','localhost');
END;
/
COMMIT;

5.8.3 Troubleshooting an Invalid ACL Error

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;

END;
/

REM commit the changes.

COMMIT;

Once the ACL has been fixed, you need to run the first script in this section to apply the ACL to the APEX_040000 user. See "Granting Connect Privileges to a Host".

5.9 Enabling Indexing of Online Help in Oracle Database 11gR2 and Higher

The ability to search Oracle Application Express online Help is accomplished through Oracle Text and a URL datastore. There is a change in the default behavior and permissions to use an Oracle Text URL datastore in database 11gR2 and higher.

If users attempt to search Oracle Application Express online Help in Oracle database 11gR2 and encounter the following error, then the permission to use an Oracle Text URL datastore has not been granted to database user APEX_040000.

ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine 
ORA-20000: Oracle Text error: 
DRG-10758: index owner does not have the privilege to use file or URL datastore

To enable the indexing of online Help in Oracle Application Express, the permission to use an Oracle Text URL datastore must be granted to the APEX_040000 database user. This is accomplished by assigning this specific privilege to a database role and then granting this role to the APEX_040000 database user.

To determine if the ability to use an Oracle Text URL datastore is already granted to a database role:

  1. Start SQL*Plus and connect to the database where Oracle Application Express is installed as SYS specifying the SYSDBA role. For example:

    • On Windows:

      SYSTEM_DRIVE:\ sqlplus /nolog
      SQL> CONNECT SYS as SYSDBA
      Enter password: SYS_password
      
    • On UNIX and Linux:

      $ sqlplus /nolog
      SQL> CONNECT SYS as SYSDBA
      Enter password: SYS_password
      
  2. Run the following command:

    SELECT par_value FROM ctxsys.ctx_parameters WHERE par_name = 'FILE_ACCESS_ROLE';
    

    This returns either NULL or the database role which is granted the ability to use an Oracle Text URL datastore.

  3. If no value is returned by step 2, then create a new database role as shown in the following example:

    CREATE ROLE APEX_URL_DATASTORE_ROLE;
    
  4. Grant this role to the database user APEX_040000 with the following statement:

    GRANT APEX_URL_DATASTORE_ROLE to APEX_040000;
    

    If step 2 returned a value, use this database role name instead of the example APEX_URL_DATASTORE_ROLE.

  5. Lastly, if step 2 did not return a value, then use the Oracle Text API to grant permission to the newly created database role with the following statement:

    EXEC ctxsys.ctx_adm.set_parameter('file_access_role', 'APEX_URL_DATASTORE_ROLE');
    

5.10 DBA Authentication Restriction

The following restriction applies to features in Oracle Application Express that require DBA authentication (for example, the Session report on the Database Monitor page). The DBA account used for authentication must not require double-quoting. In other words, it cannot be lower or mixed case.

5.11 Exporter Tool Support for Microsoft Access

When migrating a Microsoft Access application to an Oracle Application Express application, you export your Microsoft Access metadata using the Exporter tool. Note that Exporter Tool for Microsoft Access supports Microsoft Access 97, Microsoft Access 2000, Microsoft Access 2002, Microsoft Access 2003, and Microsoft Access 2007.

5.12 Issue with Online Help Table of Contents

The table of contents does not always highlight the topic being viewed in the right pane. This occurs when a user navigates from one help topic to another using links within the topic, rather than using the table of contents to navigate. This issue is being tracked by bug 8198833.

5.13 Issues with Importing Export Files with Oracle SQL Developer

Application export files from Oracle Application Express 4.0 cannot be imported using Oracle SQL Developer. This problem will be corrected in a future release of Oracle SQL Developer.

5.14 Problem with Brazil Map

There are problems creating a map of Brazil because the region Distrito Federal is not independent of the surrounding state Goias. As a result, any associated data is not displaying correctly on the map.

This issue is tracked with Oracle bug 9725582.

5.15 Issues Displaying Data Point in AnyChart5

To display all data points associated with an AnyChart 5 chart, generated in Oracle Application Express release 4.0, each data point must have a unique label. AnyChart 5 does not support the display of data points with duplicate labels, and the occurrence of duplicate labels will result in missing data points on your chart. Ensure that the chart series query returns a result set with a unique label for each data point to be displayed on your chart

5.16 Themes Not Supporting Custom Calendars

The following themes do not support custom calendars:

  • Theme 8

  • Theme 10

  • Theme 13

  • Theme 14

  • Theme 15

  • Theme 16

  • Theme 18

  • Theme 19

  • Theme 20

5.17 Interactive Report Region Hangs When Session Expires

If a session expires after the point when a page containing in interactive report region has been displayed and the user tries to interact with the interactive report, the report hangs and does nothing.

This issue is tracked with Oracle bug 7702051.

5.18 Issues with Dynamic Action Set Value

The Set Value action available within the dynamic action framework does not work in Internet Explorer when the event type of Page Unload is used.

This issue is tracked with Oracle bug 9776633.

5.19 No Declarative Button Support for Dynamic Actions

The dynamic action framework currently has no declarative support for native buttons.

This issue is tracked with Oracle bug 9736760.

5.20 Some Dynamic Action When Condition Types Not Applicable for Certain Events

When defining a dynamic action in When attributes, there is an Event select list containing all the possible events that can trigger the dynamic action. Also in the When attributes is a Condition select list which enables you to define a condition that controls when the dynamic action runs. For the following event types only a condition type of JavaScript Expression works: Before Page Submit, Page Load, Page Unload, and Resize (which hides the Selection Type fields. The other condition types (equal to, is null, and so on) are for events where the Selection Type is defined.

This issue is tracked with Oracle bug 9733317.

5.21 Issues With Deleting Dynamic Actions Having a Region Defined

If you delete a region which is assigned as the affected element to a dynamic action, you are prompted to delete the dynamic action. If that dynamic action also has other actions which are not related to this region, the whole dynamic action is still deleted, rather than just the specific action that references the region.

Workaround:

To avoid the deletion of the entire dynamic action, prior to deleting the region, delete the referencing action from the dynamic action. As a result, the region delete will not pick up that dynamic action as a candidate to delete and the dynamic action will not be deleted.

This issue is tracked with Oracle bug 9615853.

5.22 Websheet Applications Missing Heading Tags to Convey Structure

Heading tags (Hn) are used as a way of conveying structure of a page to assistive technologies. The websheet application runtime is missing headings in the following places:

  • Sections title's missing Hn tags.

  • Data grid, Single Row View page, Data region missing a Hn tag.

  • Dialogs that are used for managing websheet information (Add Note, Add Link and so on) should also have their titles wrapped in a Hn tag.

This issue is tracked with Oracle bug 9740189.

5.23 JavaScript Function Not Working When Setting Multiple Values of a Multiselect List

The JavaScript function $s enables you to set the value or values of both native and plugin item types in Oracle Application Express. This function does not work for setting more than one value of a multiselect list. A multiselect list is a select list with Allow Multiple Selection set to Yes. Setting single values will work.

This issue is tracked with Oracle bug 9616570.

5.24 Screen Readers and Accessibility

This section describes screen reader and accessibility bugs and known issues for Oracle Application Express.

5.24.1 Some Ajax-based Updates in Websheets Do Not Notify Screen Reader

Some Ajax-based functionality in websheets does not notify a screen reader user that the page has updated (for example, in a data grid in the single row view page for a specific row when navigating using the Next and Previous links).

This issue is tracked with Oracle bug 9740565.

5.24.2 Page Finder Popup Icon on Page Definition Missing ALT Tab

On the Page Definition in the Application Builder, there is a Page input box with corresponding Page Finder popup icon in the top left of the header region under the breadcrumbs. This can be used to open a Page Finder popup window. The image currently has no ALT tag. As a result, screen readers announce the image source as "icon/view_small link graphic."

This issue is tracked with Oracle bug 9739771.

5.24.3 New Search Field Missing Descriptive Text

The Search field positioned in the top right of some pages within Oracle Application Express is missing text (either a corresponding label or title attribute) describing the purpose of the field. It does however have a defaulted value which describes its purpose, (for example, Search Workspace, Search Application and so on).

This issue is tracked with Oracle bugs 9738655 and 9733663.

5.24.4 Some Form Elements in Ajax-based Dialogs Contain Duplicate Descriptive Text

Both interactive report regions and data grids in websheets contain many Ajax-based dialogs that are used to manage information about those components. Although all form elements have descriptive text (either a corresponding label tag or title attribute), some text is duplicated for similar elements in a few dialogs. For example the Sort dialog in interactive report regions contains six rows of three select lists to define the Column, Direction, and Null Sorting properties of up to six sorts. All the Column select lists are unique because they have titles with numbers. However both the Direction and Null Sorting select lists have non-unique, unnumbered titles of Direction and Null Sorting respectively.

This issue is tracked with Oracle bug 7027400.

5.24.5 Wizard Pages Contain Non-unique Page Titles

Throughout Oracle Application Express, wizards are used to step the user through the creation process of creating many native components (for example, pages, regions, buttons, and so on). These regions span across multiple pages and often contain the same page title text across all wizard pages. For example, the Create Region wizard contains many pages but all have the page title Create Region.

This issue is tracked with Oracle bug 9781070.

5.24.6 Interactive Report Regions in Missing Heading (Hn) Tags

Interactive report regions used throughout the Oracle Application Express development environment do not include a HEADING (Hn) tag containing the region title. This makes it hard for screen reader users to navigate to the content within the interactive report region.

Workaround:

In order to easily navigate to the content in the interactive report region, you can go directly to the search field at the top of the interactive report with JAWS by:

  1. Press INSERT + F5 to load the Select a Form Field dialog box.

  2. Press the S key repeatedly until you hear "Search Report Edit."

    This is the field at the top of the report. It will usually be the first form field beginning with the letter S.

  3. Press ENTER and JAWS takes you to the search field at the top of the interactive report region.

    To further your understanding of what the report contains, switch the report to Report view. When running in Screen Reader Mode, interactive report regions are optimized to run in Report view. To learn more, see the Screen Reader Mode section of "Appendix B, Accessibility in Oracle Application Express" in Oracle Application Express Installation Guide.

  4. To enable Report view for A interactive report region:

    1. Press INSERT + F7 to load the links List dialog box.

    2. Press the V key repeatedly until you hear, "View Report."

    3. Press ENTER TO refresh the interactive report.

    4. To get detailed information relating to what data the report contains, press T and JAWS announces detailed information relating to this report.

This issue is tracked with Oracle bug 9780852.

5.24.7 Interactive Report Regions Contain Elements Which Cannot Receive Keyboard Focus

In the Filter and Highlight dialogs of interactive report regions, there is an icon next to the Expression field which enables the selection of a value, based on the current values stored in the relevant column. However this cannot receive keyboard focus.

Workaround:

The only workaround is to enter the Expression text manually in the corresponding input field.

This issue is tracked with Oracle bug 9671431.

5.24.8 Interactive Report Regions Have No Alternative Presentation for the Animated Progress GIF

In Ajax-based interactive report regions, an animated GIF is sometimes used to indicate processing is underway (when filtering a report or loading a chart for example). This information is not available in a non-animated presentation mode. However, the screen reader user will be notified when the update has finished, as interactive report regions are defined as WAI-ARIA Live regions.

This issue is tracked with Oracle bug 8243242.

5.24.9 Interactive Report Region Column Headers Not Accessible for Keyboard or Screen Readers

The column headings in the report used to sort the column, filter on the column, apply a control break on the column and hide the column are not accessible by screen reader or by keyboard navigation. All of these features are however available by alternative means.

Workaround:

For keyboard only access, you can achieve all of this functionality by using the Actions menu. To learn more, see "Appendix B, Accessibility in Oracle Application Express" in Oracle Application Express Installation Guide.

For JAWS access, you can also achieve all of this functionality by using the Actions menu.

This issue is tracked with Oracle bug 7655582.

5.24.10 New Inline Date Pickers Not Accessible with Screen Readers

The new inline date pickers used in the Oracle Application Express are not usable with a screen reader.

Workaround:

The only workaround available currently is to enter the date manually into the date input field.

This issue is tracked with Oracle bug 9740473.

6 Documentation Corrections and Additions

This section lists additions and corrections to Oracle Application Express documentation.

6.1 Oracle Application Express Application Builder User's Guide Corrections

This section lists corrections in the Oracle Application Express Application Builder User's Guide.

6.1.1 Keyboard Access in Page Definition Tree View

In Chapter 5, "Working with Application Pages," the section "Editing a Page in Tree View" describes that you can access attribute pages using the keyboard by pressing ENTER. Keyboard access in Tree view is not working.

This issue is tracked with Oracle bug 9773584.

7 Documentation Accessibility

Our goal is to make Oracle products, services, and supporting documentation accessible to all users, including users that are disabled. To that end, our documentation includes features that make information available to users of assistive technology. This documentation is available in HTML format, and contains markup to facilitate access by the disabled community. Accessibility standards will continue to evolve over time, and Oracle is actively engaged with other market-leading technology vendors to address technical obstacles so that our documentation can be accessible to all of our customers. For more information, visit the Oracle Accessibility Program Web site at http://www.oracle.com/accessibility/.

Accessibility of Code Examples in Documentation

Screen readers may not always correctly read the code examples in this document. The conventions for writing code require that closing braces should appear on an otherwise empty line; however, some screen readers may not always read a line of text that consists solely of a bracket or brace.

Accessibility of Links to External Web Sites in Documentation

This documentation may contain links to Web sites of other companies or organizations that Oracle does not own or control. Oracle neither evaluates nor makes any representations regarding the accessibility of these Web sites.

Access to Oracle Support

Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/support/contact.html or visit http://www.oracle.com/accessibility/support.html if you are hearing impaired.


Oracle Application Express Application Release Notes, Release 4.0

E15512-02

Copyright © 2010, Oracle and/or its affiliates. All rights reserved.

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 software or related documentation is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

This software 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 which may create a risk of personal injury. If you use this software in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure the safe use of this software. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software in dangerous applications.

Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

This software and documentation may provide access to or information on 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. 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.