Oracle JDeveloper 11g and Oracle Application Development Framework (ADF) 11g

Known Issues for JDeveloper and ADF 11g 11.1.1.3.0 (PS2)
last updated: 26-APR-10

Content

Introduction

This document lists known issues for this release. As new issues arise, they will be added to this document.

We welcome and encourage your feedback. Your input helps us make the product better. Please use the JDeveloper community discussion forum on OTN for questions and answers, as well as to let us know what you think!

Installation

Please read the installation guide for details on system requirements and specific installation instructions for various platforms.

Update Center may inject emeacache proxy server (8651096)

For internal use, JDeveloper may sometimes insert emeacache.uk.oracle.com as the proxy server. This setting should only happen temporarily and only for internal users. However, there have been some reports of external customers also seeing this proxy setting which can lead to errors during deployment outside the Oracle network. The workaround is to remove (or fix) the proxy settings in Tools > Preferences, Web Browsers and Proxy.

IDE and Java SE Development.

Tab size code style preference after migrating (Bug 9360317)

After migrating IDE settings from a previous version of JDeveloper, the Tab Size setting in Tools > Preferences, Code Editor, Code Style is ignored.

Integrated WLS

Cannot run WLS on Windows 7 64-bit (9466912)

The Windows .bat scripts for managing WLS do not work if environment variables such as JAVA_HOME or CLASSPATH contain a ')'. The former happens when e.g. the 32bit JDK is installed in its default path, e.g. "C:\Program Files (x86)\Java\jdk1.6.0_18". The latter if an application such as Apple QuickTime adds itself to the CLASSPATH environment variable.

When trying to run the integrated WLS you will get an error while starting that instance, stating that
"\Java\jdk1.6.0_18 was unexpected at this time."
The integrated WLS will not start as a result of that.

This also happens if the scripts are being run manually on command prompt.

Workaround is to install the JDK and programs such as Apple QuickTime in a path without ')'.

Database Development

Only object creation is supported for Oracle Lite (9282649)

You can only create database objects (tables, columns, etc) in Oracle Lite. You cannot drop or update database objects,

unless the update is to create an object. This is because of current limitations in the Type 2 and Type 4 drivers for Oracle Lite.

SQL Worksheet Not Supported for Oracle Lite (9255545)

You cannot perform any CRUD operations using SQL Worksheet for Oracle Lite databases. This is because of current limitations in the Type 2 and Type 4 drivers for Oracle Lite.

Working with Derby Database Diagrams (9296663)

When you create a connection to Apache Derby, the default schema is not initialized for database diagrams. This means that when you try to create a database object such as a table on a database diagram for a Derby database, the table is not created.

The workaround is to:

  1. Right-click the diagram and choose Create Database Objects In > Schema.
  2. In the Specify Location dialog choose the name of the schema you want to use from the list of existing schemas.

Oracle Database 11g Release 2 Support (9475002, 9437824, 9390784)

JDeveloper does not support the following Oracle Database 11g Release 2 features:

  • Group comparison operators.
  • COST matrix clause used in data mining.
  • SQL language MODEL clause .

Generated PL/SQL is Corrupt When Object Name or Schema Name Contains "IS" or "AS" (9931137)

If the object name or schema name contains the string IS or AS, the generated SQL is corrupt.

The workaround is to avoid using IS or AS in the object name or schema name, or to change the case of the string IS or AS. For example, use one of "is", "Is", or "iS".

Web Services Development

Ignore warning message displayed when upgrading JAX-RPC web service in JDeveloper (8912681)

When upgrading a JAX-RPC Web service developed using JDeveloper from Oracle Containers for J2EE (OC4J) to Oracle WebLogic Server 10.3.x, the following warning may be displayed. This warning is displayed when the OC4J Web service contains whitespace or carriage return characters within the code. This warning can be ignored.

WARNING: A Text node was set to a value that is all whitespace. The DOM will be out of sync with the Text Buffer. The Text Node on reparse will also be removed from the DOM.

Web service test page may reference incorrect namespace when nesting complex type is an array (9066072)

When testing Web services in JDeveloper, if you have a schema with nested levels of complex type and the nested type is an array, the generated test SOAP message may use the outermost namespace in the inner nested type instead of the actual namespace of the child element.

For example:

<ns1:outermost>
                                


 <ns2:nested1>
                                


 <ns2:nested2>....</ns2:nested2>
                                


 <ns2:nested2>....</ns2:nested2>
                                


 </ns2:nested1>
                                


 </ns1:outermost>

Instead of the correct ns2:nested2 namespace, the SOAP message is being generated ns1:nested2 namespace, as shown below:

<ns1:outermost>
                                


 <ns2:nested1>
                                


 <ns1:nested2>....</ns1:nested2>
                                


 <ns1:nested2>....</ns1:nested2>
                                


 </ns2:nested1>
                                


 </ns1:outermost>

As a workaround, manually correct the inner ns1:nested2 references to ns2:nested2 in XML format before testing.

Avoid creating multiple top down web services in the same project/package (7165531)

Unless they are operating on the same schema avoid creating multiple top-down web services in the same project as each successive top-down service may overwrite the ObjectFactory class created by the previous one if generated into the same package.

Manually edit the header details if invoking WLS stateful (conversational) web services from HTTP Analyzer (7388843)

When calling conversational web services from HTTP Analyzer, the request message headers for the 'continue' methods need to be manually updated with the conversation id that is specific to that particular conversation. This value is available from the response SOAP message of the method that starts the conversation.

From the response message of the conversation start method, copy the xml tags similar to the one below:

<conv:ContinueHeader xmlns:conv="http://www.openuri.org/2002/04/soap/conversation/">
<conv:conversationID>uuid:701f9f3d434bfc98:-3f39a0ef:11c4b649fd4:-7fff</conv:conversationID>
</conv:ContinueHeader>

From the HTTP Content tab in HTTP Analyzer, insert the above tags within the header element of the SOAP request message, as below:

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">

<env:Header>
<! - other header elements ->
<conv:ContinueHeader xmlns:conv="http://www.openuri.org/2002/04/soap/conversation/">

<conv:conversationID>uuid:701f9f3d434bfc98:-3f39a0ef:11c4b649fd4:-7fff</conv:conversationID>
</conv:ContinueHeader>
</env:Header>
<env:Body>
<! - message data details ->
</env:Body>
</env:Envelope>

Services migrated from a previous JDeveloper release are not guaranteed to deploy and run in WLS

Because of the OC4J proprietary nature of some of the properties set on web services that were created with previous JDeveloper releases (which supported OC4J), it is likely that there will be problems when attempting to deploy and run such services on WLS (including the integrated WLS that is bound with JDeveloper). Known problems include JAX_RPC services that have annotations, stateful services, DIME encoding, OWSM Policy (both 10.1.3 and 11 styles including WS-Security and WS-Reliability).

Cannot deploy and run JAX-RPC with bare array types as method parameters (7493019)

When using JAX-RPC web services deployed to weblogic using the generators in JDeveloper you may have trouble with method signatures that contain "bare" array types. For example: public class Hello

These will either not deploy or when deployed will not work properly with errors complaining about mapping issues. There are a few workarounds for this problem:

  1. Only do wrapped parameters, when starting from a java class Create a bean object that contains all the properties. When creating the web service make sure you select Document/Literal rather than Document/Wrapped to prevent double wrapping.
  2. Make sure you don't allow properties to be unwrapped when doing "top down" On the mapping options page when generating a Java web service from a WSDL make sure you uncheck the "Unwrap Wrapped parameters" box on the "Specify Default Mapping Options" page of the wizard.
  3. Use the weblogic jwsc ant task The ant task will generate a working service from the bare list types but the schema for the WSDL will generate synthetic Java schema types which may not be what the user wants.

JAX RPC stateful service: JAX WS client is throwing exception (7533170)

It is not possible to successfully invoke a JAX-RPC style conversational (stateful) web service deployed in weblogic server from a JAX-WS style proxy client. The design time JAX-WS proxy creation does not currently warn the user if the supplied WSDL document contains conversational behavior advertisement. Even though the tool leads to a successful generation of JAX-WS client artifacts, invoking the service from this client results in a SOAPFaultException. Only the conversation 'start' methods will get executed successfully. Invoking any other conversational methods after a conversation 'start' method will result in error.

The workaround is to use a JAX-RPC style proxy client to call a stateful service deployed in the weblogic server.

JAX-WS async client for a 10.1.3 BPEL process will not run by default (7422130)

The BPEL server included in 10.1.3 SOA only knows how to use the '2003 draft version of the WS-Addressing specification. The JAX-WS async client will be default generate a client that by modifying the WS_ADDR_VER constants to support either the final '2005 or the member submission '2004 version of the specification. To support the '2003 version the user will need to make some minor modification to the code in order to invoke the process properly.

In the callback handler you need fix the code that requests the relatesToHeader as shown here:

// HeaderList ...
//Header relatesToheader = headerList.get(WS_ADDR_VER.relatesToTag, true);
//String relatesToMessageId = ralatesToheader.getStringContent();
String relatesToMessageId = RelatesTo.getValue();

This uses the header which get automatically bound to a method parameter. Now the BPEL service explicitly defines both the ReplyTo and MessageID headers in the WSDL so the default proxy generator will map these to method parameters. Assuming that you accept this default you need to pass both the replyTo address and the message ID in as parameters to the method rather than as header as you will see in the generated code. The only exception for this is the WS-Addressing action header which if it is required should be set using the '2003 namespace. Here is an example that invokes a loan process that has the required edits.

americanLoan = new AmericanLoan();
LoanService loanService = americanLoan.getLoanServicePort();

// prepare Message Id

AttributedURI messageId = new AttributedURI();
messageId.setValue( "uuid:" + UUID.randomUUID() );

// prepare ReplyTo

AttributedURI address = new AttributedURI();
address.setValue("http://x.x.x.x:7101/Application23-Project1-context-root/LoanServiceCallbackPort");
EndpointReferenceType replyTo = new EndpointReferenceType();
replyTo.setAddress( address );

// prepare action header

WSBindingProvider wsbp = (WSBindingProvider)loanService;
wsbp.setOutboundHeaders(
new StringHeader(
new QName( "http://schemas.xmlsoap.org/ws/2003/03/addressing", "Action" ),
"http://services.otn.com/LoanService/initiateRequest" ));

// Prepare payload

LoanApplicationType payload = ...

// Invoke service with replyTo and messageID parameter
loanService.initiate(lt, replyTo, messageId);

Hyperlinks offset in the HTTP Analyzer view (9032244)

When displaying implied hyper links in the content view of the HTTP Analyzer you will see that on the Windows platform for every line you are down the document the links are offset by one character. This is no current workaround for this issue.

ADF Desktop Integration

Excel Validation and ADF Table Component's Placeholder Row (7509432)

Excel validation does not get applied to the placeholder row in an ADF Table component that contains data. (bug 7509432)

Known Limitations on changing ADFdi components at runtime (6196783, 6032482, 6161839)

  • Moving a Column in a Runtime ADF Read-only Table Component (bug 6196783)
    If the user of the worksheet containing a Read-only Table component uses Excel's cut-and-insert operations to move
    a column to be the left-most column of the table, an exception occurs on the next download.
    To resolve the situation, the user should close the workbook without saving the changes.
  • Change Tracking After Moving a Column to the End of an ADF Table Component (bug 6032482)
    Change tracking is disabled if an end user moves a column to the end of an ADF Table component at runtime.
  • Deleting an Integrated Excel Worksheet at Runtime (bug 6161839)
    Oracle ADF Desktop Integration does not support the deletion of integrated worksheets at runtime.
    If the user deletes an integrated worksheet, un-handled exceptions will occur.
    Workaround: close the workbook without saving any changes.

Unexpected exception when using Excel filters in test mode (7134292)

Summary:  Unhandled Excel exception when returning from Test mode to design-time mode if Excel filtering is applied to a table. (bug 7134292) Steps:

  1. Create a workbook with a table
  2. Click the run button to enter test mode
  3. Select the header row of the table
  4. Enable Excel filtering ("Sort & Filter" in the Home tab)
  5. Use Excel filter to display a subset of the rows in the table
  6. Click the Stop button to return to design-time mode

At this point, an unhandled exception occurs.

Workaround:

To resolve the situation, dismiss the error dialog and remove the filter from the table. Then, click the Stop button again to return to design-time mode.

Microsoft Excel Always Prompts Users to Save Integrated Excel Workbooks (6148067)

Microsoft Excel prompts an end user to save an Excel workbook that has been configured with Oracle ADF functionality (an integrated Excel workbook) even if the user has not modified the Excel workbook after opening it. (bug 6148067)
This behavior is expected because Oracle ADF Desktop Integration modifies an integrated Excel workbook each time a user opens it.

ADFdi Excel Context Menus Do Not Hide or Show Properly (7511508)

Microsoft Excel does not invoke the "before right click" event when a user invokes a context menu from a keyboard. Users should use either the keyboard or the mouse's right-click button to invoke a cell's context menu. Do not use both in the same user session. This behavior occurs at design time and runtime in integrated Excel workbooks. (bug 7511508)

ADF Button Components and Excel Zoom Level (8305907)

Summary: Excel disables ADFdi Button components in integrated worksheets when "zoom" is set to any value other than 100%.

Workaround: Set Excel's Zoom level to 100% so that ADF Button components can function correctly in integrated Excel workbooks. (bug 8305907)

Note: Workbook developers can avoid this issue by using worksheet menu items instead of buttons.

Conditional Formatting in Integrated Excel Workbooks (6869548)

Oracle ADF Desktop Integration does not support the conditional formatting features provided in Excel by clicking Home > Conditional Formatting.
(bug 6869548)

Workaround: Use Excel named styles in combination with ADFdi expressions in the component's style properties

Failure Details for Foreign Key Violations Not Displayed Properly (8262587)

Users may encounter unexpected reports of errors under certain circumstances during the Upload operation for an ADF Table component. The Upload operation processes rows in batches. After posting changes from a batch, ADFdi executes the action specified by the CommitBatchActionID. Errors that occur during the commit action may continue to be reported on subsequent batch commit actions, even though those batches of records do not contain the error. (bug 8262587)

Cause: any pending model changes that exist when the CommitBatchActionID gets called are not automatically reverted when commit fails.

Workaround: Create a custom action for the CommitBatchActionID that first attempts to commit the pending model changes. However, if an exception occurs during commit, the custom method should first rollback the pending model changes, so that any subsequent batch commit attempts can succeed. Note: it is important that the commit exception gets re-thrown after rollback so that the commit error(s) will get reported as expected on the client.

Using variableUsage element causes null pointer exception in ADFdi remote servlet (6377073)

Summary: ADFdi does not support variables in the page definition declared with the syntax of variableUsage. (bug 6377073)
Details:
If the developer creates variableUsage in the ADFdi-related page definition, it will produce NullPointerExceptions in the server at runtime.
Workaround:
Instead create variables using the <variable> element in the page definition.

Known issues related to displaying web pages using the Dialog action (6756846, 7205486)

  • ADF Faces Dialog Framework (bug 6756846)

    The web browser control that renders web pages invoked from integrated Excel workbooks does support pages built with the ADF Faces that pop up new windows. However, they must be configured in a certain way to work properly: On the command component, set the windowEmbedStyle to "inlineDocument".

  • HTML 'select' components in web pages do not respect z-order as expected when the page is displayed from Dialog actions (bug 7205486)

    Given a web page with layered and overlapping components that is displayed in the .NET Web Browser control used in the Dialog action, it has been shown that HTML 'select' components may appear unexpectedly "on top" of other components. The controls are not respecting the "z-order" configuration as expected. Reference: https://docs.microsoft.com/en-us/collaborate/connect-redirect?FeedbackID=377657

    Workaround: To avoid this problem, use web page control types that are not affected by the problem.

Known issues with the design-time property inspector and expression builder features

The property inspector and expression builder features in the ADFdi Designer are driven off of the saved component metadata. As a result, there are some
known issues when dealing with new objects or values. In each case, the work-around is to save the object and then re-open.

Sample issues:

  • New components in the expression builder (bug 6314302) - An expression builder invoked from a newly-inserted ADF table-type component's property that supports EL expressions does not display the newly-inserted ADF table-type component in the Components node of the expression builder.
  • Cannot select UniqueAttribute for a new Table (bug 7269921) - An error message appears requesting that you first specify a value for the ADF Table component's TreeID property when you attempt to set a value for a newly-inserted ADF Table component's UniqueAttribute property. This error message appears even though a value is set for the TreeID property.

Known issues with ADFdi List of Values components (8270742, 8267114, 8575731, 8651633, 8651645)

  • Limitations on Dependent List of Values Configuration (bug 8270742, bug 8267114)
    Oracle ADF Desktop Integration requires that items in a dependent List of Values component remain constant across all rows of an ADF Table component because Oracle ADF Desktop Integration caches items that appear in a dependent list of values.
  • Changing list binding metadata can cause unexpected exceptions in workbooks run prior to the change (bug 8575731)
    Scenario: the application is developed, workbooks published, app deployed, and the published workbooks have already been run by business users. Then, the application configuration is changed.
    Problem: the runtime ADFdi workbooks cache the binding container metadata from the application. If the application metadata is then changed, unexpected errors can occur.
    Workarounds: Fetch a new copy of the published workbook from the web app, or execute the ClearAllData command
  • Empty forms (bug 8651633, bug 8651645)
    An Excel form cannot be configured to use model-driven list bindings if the form's bound iterator is expected to contain zero rows. Workaround: configure the Excel form to use a "dynamic" list binding instead.

Known Issues with SSL (7117108)

  • Integrated Excel Workbooks and HTTPS (bug 7117108)
    Attempts to connect to a web application from an integrated Excel workbook over HTTPS result in an error if the certificate is not present on the client machine.
    Error text:

    The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.

    The remote certificate is invalid according to the validation procedure.

    Solution: View the certificate and install it.Known issues involving workbook download

Known issues involving workbook download (7503854, 8758240, 8572040)

There are several related scenarios that produce the following unexpected error message:

Microsoft.VisualStudio.Tools.Applications.Runtime.CannotCreateCustomizationDomainException: Customization does not have the permissions required to create an application domain. ---> System.Security.SecurityException: Customized functionality in this program will not work because the location of <url> is not in the Office Trusted Locations list, or all trusted locations are disabled. Contact your administrator for further assistance.

  • Downloading an Integrated Excel Workbook with parameters (bug 7503854)
    Summary: opening a workbook immediately when the download URL includes query string parameters results in the CannotCreateCustomizationDomainException
    Workaround: save the workbook prior to opening it.
  • Getting customization exception when workbook URL > 256 chars (bug 8758240)
    Summary: open a workbook with a URL longer than 256 characters results in the CannotCreateCustomizationDomainException
    This problem only occurs when accessing the URL from Internet Explorer
    Workaround: use a shorter URL, save the workbook to local storage before opening, or use Firefox to access the URL
  • Open the same workbook twice with different parameters (bug 8572040)
    Summary: Download/open a given workbook with parameters, leave it open, download it again with different parameters
    Workaround: close the first workbook before opening the second one.

Known issues involving master-detail worksheets (8770675)

  • Editing value defined in ViewLink between master and detail fails with exception (bug 8770675)
    Symptoms:
    The business user may see an error like "ADFDI-00117: An unexpected error occurred reading the DIRemoteServlet response." connected to a server error like "oracle.jbo.AttrValException: JBO-27014: Attribute XXX in AppModule.YYY is required."
    Editing the ViewLink attribute is not supported since it alters the selections in the child view object.

    Workarounds: Define the ViewLink attributes to be read-only. Or, use a Model configuration that does not include a ViewLink between master and detail.

Known issues involving polymorphic view objects (8970724)

If your table allows inserts and involves a polymorphic view objects, it is not sufficient to use the CreateInsert operation of the view object. (bug 8970724). Instead, you must create a custom method that sets the discriminator values using the view object's createAndInitRow method.

Known issues involving the Tamper Check feature (9430685)

  • Deleting a worksheet just prior to publishing can result in a TamperCheck failure (bug 9430685)
    If you delete an integrated worksheet and publish right away (without first closing and reopening the workbook),
    the TamperCheck hashcode for the workbook is incorrect. The published workbook will fail the Tamper Check at runtime.
    Workaround: after deleting a worksheet, save/close/re-open the workbook before publishing.
  • Migration considerations for Tamper Check
    In 11.1.1.2.0, there is a change to the way Tamper Check works. As a result, workbooks published with 11.1.1.1.0 should be re-published using 11.1.1.2.0 (or later). If you do not republish workbooks containing multiple integrated worksheets, you may experience tamper check failures at runtime even when no tampering has occurred. Editorial note: I considered removing this item from these PS2 notes. However, after discussing with B. Fry, we decided to keep it since an external customer might migrate from 11.1.1.1.0.

Known issues involving the Read-only Table Component (7626970, 8272219)

The following known issues may be encountered when working with the ADF Read-only Table Component. To avoid these issues, consider using a the ADF Table component in a read-only configuration.

  • Inserting Excel Rows into an ADF Read-only Table Component (bug 7626970)
    Inserting an Excel row into an ADF Read-only Table results in a new Excel row that behaves as if it were part of the downloaded data set. In fact, the new row exists only in Excel.
  • Server-side row set can be Positioned on Wrong Row When DoubleClickActionSet Invoked on ADF Read-only Table Component (bug 8272219)
    An ADF Read-only Table component only caches the original row set index in an integrated Excel workbook. Invoking a DoubleClickActionSet on an ADF Read-only Table component results in an attempt to position the server-side row using the cached row index.
    If the server-side row set changed in between the time the ADF Read-only Table component caches the original row set index and the DoubleClickActionSet is invoked, the server-side can be positioned on the wrong row.

ADF Faces and Data Visualization

NLS issues with JDK 1.6-only locales (6859992)

Date and number formatting (convertDateTime, inputDate, etc.) do not work with the 17 new locales added in JDK1.6. Locales supported in JDK 1.5 do not have this issue.

Profiler file logger

The profiler file logger can be used only in a non-portal environment on FF and IE browsers with at least 1.5._06 JRE on the client box and privilege to write to the user home directory. The resulting file format is subject to change without any notice and not intended to be used with any xml parser tool. In order to use the feature, the user has to accept the certificate.

Hot keys

Application developers must be cautious when assigning access keys to menus. Hot keys may be intercepted by various browsers or even the operating system. One such hotkey, ALT-D, will send focus to the address bar in both IE and FireFox 2. For this hotkey, we have removed the references in our demos. But many more hotkeys may be restricted so it is a good idea to try them out on all of your supported browsers.

Active data service (6926281)

  • If Active Data Service is enabled in an application, there are certain ADS pages (/adwwls/wls.ads and adw.jspx) that should not be cached. If Oracle Web Cache runs for the application, need to add cache rule to exclude pages with name of /adwwls/wls.ads or adw.jspx.
  • In current release of Oracle JDeveloper 11gR1, the adf-config.properties file and the .adf\META-INF\services directory don't exist by default. Developers who wish to use active data service (ADS) in the user interface project need to create the file and the directory manually. The ads-config.properties file is needed for ADFShare MBean to parse ADS related configuration setup in the adf-config.xml file. To create the ads-config.properties file, select the user interface project and choose File | New from the Oracle JDeveloper menu. In the General category, select File and click OK. In the Create File dialog, enter adf-config.properties as the file name. In the Directory field, browse to the .adf\META-INF\ directory and append services to the path to create the folder that will contain the adf-config.properties file. For example, the directory path in the dialog might look like this C:\JDeveloper\mywork\MyApplication\.adf\META-INF\services. Click OK to close the dialog. In the Application Navigator, expand the ADF META-INF node and the new services node, and then double-click the adf-config.properties file. In the editor, add the following line to the contents of the file and save it. Add the value as a single string with no line breaks.
    http\://xmlns.oracle.com/adf/activedata/config=oracle.adfinternal.view.faces.activedata.ActiveDataConfiguration$ActiveDataConfigCallback

Primary keys from model (6894412)

ADF Faces components expect applications to use primary keys on the model which are pre-populated for new records and do not change with any record updates.

Application view cache (6495920)

The Application View Cache won't work for any page where the rendering of the component tree causes the structure of the component tree to change temporarily. Since this is often the case and the application developer has no way of telling when this will occur, USE_APPLICATION_VIEW_CACHE should never be used. It also only helps initial render performance and does not help the session size.

Trinidad application and new Window detection (8677612)

New Window Detection logic only works in Rich Client applications, but not in Trinidad applications For Trinidad applications, the following parameter should be added in web.xml to disable New Window Detection logic.

<context-param>
                                


 <param-name>oracle.adf.view.rich.newWindowDetect.OPTIONS</param-name>
                                


 <param-value>off</param-value>
                                


 </context-param>

Emailable page (8827678)

The table component has some known issues in emailable page mode.

  • The Total/Subtotal rows of the table are not bold in Outlook. The application developer would need to define the bold style directly on their outputText. (8554509)
  • The detailStamp, if disclosed, does not render as disclosed in emailable page mode in both Thunderbird and Outlook. (8868756)
  • columnStretching="last" does not work in emailable mode since this happens in javascript and javascript is not supported by email agents. You need to set the width attribute on the af:column components. (8827678)

ADF Faces stamped components with MDS

ADF Faces components do not support persisting customization changes to MDS if the component is contained inside of (anywhere in the subtree of) AF:forEach or AF:iterator tags. This limitation is because, while such structure results in multiple component copies in the view tree, they have a single representation in the jsp documents.

RUEI and UserActivity data

Because of a limitation in the IE userData persistence behavior, the userActivity data for previous requests may be partially or sometimes completely unavailable when accessed from pages with a different URL than when it was originally saved.

Auto-ppr for ADFm bound boolean attributes in an ADF Faces form

If af:SelectBooleanCheckbox is used, the component needs to have partialTriggers on all buttons of the component's form.

Accessibility: Column headers for total/subtotal cells (6931494)

ADF Faces users can typically produce accessible table content by specifying column headers for every column in their AF:table. However, in certain complex cases, such as when the AF:table contains total or subtotal rows, the cell containing the labels for these rows may be inappropriately associated with the containing column's column header. For example, assuming a column contains employee names and has the header text "Employee Name", a cell containing the text "Total" will be inappropriately identified to screen reader users as being an "Employee Name". In order to avoid confusion, such cells should not be associated with any column header. ADF Faces does not provide any mechanism for suppressing column headers for such cells.

Accessibility: Keyboard selection request frequency (6238722)

When interacting with an AF:table, AF:tree, or AF:treeTable, using the up/down arrow keys to change the selection can result in a round trip to the server. ADF Faces already optimizes to reduce the number of round-trips by only sending a single request at a time, and also by dropping requests for intermediate selection states that occur while a request is outstanding. However, in some cases keyboard users may find the current behavior inefficient, since a request is sent to the server as soon as the request queue frees up. Ideally, no request would be sent until after the user has reached the item that they intend to select - ie. until after the user has paused keyboard activity for some short period of time.

Accessibility: Read-Only input components (5889673)

Currently read-only input components, such as AF:inputText, are rendered by ADF Faces as plain text. As such, there is a loss of information that may be meaningful to screen reader users - ie. screen reader users have no way to determine that the text in question corresponds to a input control. In addition, since plain text content is not included in the tab navigation order, screen reader users may fail to recognize that this read-only content is present on the page.

Accessibility: Expanding and collapsing nodes of AF:treeTable (8295444)

When disabling row selection in the AF:treeTable by setting the rowSelection attribute to "none", the resulting AF:treeTable content is not keyboard navigable. In particular, it is not possible to use the keyboard to navigate to and expand/collapse nodes in the AF:treeTable. This issue can be avoided by not disabling row selection for this component.

Automatic partial page rendering

There is a known limitation for Automatic Partial Page Rendering support on components which are associated with actions, examples are buttons, hyperlinks. This limitation occurs when the binding associated with the component is recreated, which should happen very rarely, e.g. dynamic form, dynamice region, DT@RT. There are two types of workaround that can be applied:

  1. Use manual PPR, set paritalSubmit="true" and configure partialTriggers on related components.
  2. Do not use PPR, set partialSubmit="false" on the related components.

Skin setDirty flag (9560142)

If you are using the Skin#setDirty API that was added to this release to force your skin to be reparsed and reloaded, then you need to call skin.setDirty(true) the first time you render that skin to work around Bug 9560142. Otherwise skin.setDirty(true) will not force a reload even in subsequent renders.

StringIndexOutOfBoundsException in org.apache.myfaces.trinidadinternal.style.util.CSSGenerationUtils (9400134)

This error happens due to bug 6875866 (HotSpot compiler bug in String.indexOf() using SSE4.2 instruction-set on new Intel chips).
Workaround:
Add this line to the JVM options: -XX:-UseSSE42Intrinsics
then remove the cached CSS file, e.g.,
$APP_TMP_FOLDER/public/adf/styles/cache/blafplus-desktop-ezog8j-en-ltr-gecko
-1.9.1.8-cmp.css
restart WLS, clear your browser cache and everything should be working. <

Please note that the bug should be fixed with jdk6.18b02 but we see it on 6.18b07

ADS Requires Manual Creation of adf-config.properties File (bug 8992609)

In current releases of Oracle JDeveloper 11g R1, the adf-config.properties file and the .adf\META-INF\services directory don't exist by default. Developers who wish to use active data service (ADS) in the user interface project need to create the file and the directory manually. The ads-config.properties file is needed for ADFShare MBean to parse ADS related configuration setup in the adf-config.xml file.

To create the ads-config.properties file, select the user interface project and choose File | New from the Oracle JDeveloper menu. In the General category, select File and click OK. In the Create File dialog, enter adf-config.properties as the file name. In the Directory field, browse to the .adf\META-INF\ directory and append services to the path to create the folder that will contain the adf-config.properties file. For example, the directory path in the dialog might look like this C:\JDeveloper\mywork\MyApplication\.adf\META-INF\services. Click OK to close the dialog. In the Application Navigator, expand the ADF META-INF node and the new services node, and then double-click the adf-config.properties file. In the editor, add the following line to the contents of the file and save it.

/Add the value as a single string with no line breaks.

http\://xmlns.oracle.com/adf/activedata/config=oracle.adfinternal.view.faces.activedata.ActiveDataConfiguration$ActiveDataConfigCallback

ADF DVT Graph and Gauge

  • Firefox does not print Flash content, which is the default imageFormat for DVT Graph and Gauge. Flash content, including ADF DVT Graphs and Gauges, prints fine when the browser is IE. Applications should use printable page mode to print Flash content or set imageFormat to PNG. (6904435, 6016950)
  • Live scrolling is not supported when animationOnDataChange="ON". In order to support scrolling on a graph with animationOnDataChange="ON", switch to delayed scrolling using a backing bean(8360631): ((CommonGraph)UIGraph.getImageView()).setZoomAndScroll(GraphConstants.ZS_DELAYED_SCROLL);
  • Gauge does not load if the gaugeLegendArea and thresholdSet/threshold child tags are used together. The workaround is to specify a numberType in the tickLabel child tag. (7477288)
  • There are known issues using Flash graphs in BiDi locales. The workaround is to use PNG graph image format. (8275790)
  • Graph can not load alert images in a portlet environment (8977003)

ADF DVT Gantt Chart

  • Interactively resizing percent complete bar does not fire dataChangedEvent (9033058)
  • Label alignment does not shift when impossible to show label as defined. I.e. task with left-aligned label placed all the way to the left (8914616)
  • Scrolling ProjectGantt with left (table) panel hidden results in misaligned rows (8913038)
  • Issue when zoom using scroll wheel using Safari browser, CTRL-Scroll wheel is reserved for Browser font resizing (8684652)
  • Rollover text can appear beneath the chart right-mouse menu (9027856)
  • Incorrect tag documentation for the project gantt and initialdatefocus (9026200)
  • Some debug messages in console when creating project gantt (8862734)
  • Resource Utilization Gantt: in IE, cannot navigate time buckets with keyboard (8871751)
  • Scheduling Gantt: issue when selecting task containing an icon. The workaround is to not use an icon in the taskbar, but to the left or the right of the taskbar. (9560104)

ADF DVT Pivot Table

  • In order to store edits, the PivotTable needs to be bound to a DataControl/Model that supports writeback operations. A Rowset based DataControl, like the BC4J based DataControl, is transformed into a cube and, due to the transformation, cannot support writebacks (8895660)
  • When using Internet Explorer in BIDI mode the PivotTable scrollbars can sometimes reset to their original position (8316539)
  • After editing a cell then sorting, column sorts on original value, not new value (8742733)
  • Sorting in PivotTable blows away existing sorts (8998375)
  • Pivot with keyboard can interfere with some graphics cards (9020333)
  • User resizes are sometimes forgotten (9047467)
  • Ability to make selections lost after pivot to PivotFilterBar (9012546)
  • af:convertNumber and af:convertDateTime do not work when used in a Pivot Table header cell. Currently there is no workaround, as the value is already formatted into a string and therefore not a number which can be converted. (9475191)

ADF DVT PivotFilterBar

  • JAWS tabbing through the PivotFilterBar incorrectly reads the url (8777349)
  • Arrowing during keyboard pivoting should be reversed for bidi cases (9002516)
  • Accessibility: You cannot pivot items via the keyboard between the PivotTable and the PivotFilterBar (8777330)
  • ADF Table (and other views) may be refreshed when pivottable w/pivotfilterbar is updated (8940695)
  • PivotFilterBar attributes: visible, persist, dontPersist and shortDesc cause compile errors in the Jspx. Use backing bean instead to set the properties (8914128)
  • Keyboard pivoting from pivottable to pivotFilterbar component not working, vice versa works. Please use drag and drop operation (8917681)

ADF DVT Databinding and Design Time

  • When editing DVT Graph tags in the Source Editor and then using a custom button in the Property Inspector to configure a new child tag, the developer may encounter an exception. If that occurs, switch to the Visual Editor when using the Property Inspector to configure a child tag. (8965391)
  • In Step 2 of the DVT Pivot Table Binding Wizard, developers can specify an alternate attribute for attribute value labels to be rendered in the resulting Pivot Table header at runtime. However, in Step 3, if the Binding is configured for Insert Drilling, then it is possible that the specification of that alternate attribute will be discarded. If you encounter this scenario, you can use the following workaround:
    1. Edit the corresponding PageDef source;
    2. Find the corresponding element in thesection of the Pivot Table binding;
    3. Update the 'label' attribute of that element to the correct alternate attribute name. (8607695)
  • Changes made to an existing <dvt:search> child of a <dvt:hierarchyViewer> tag through the dialog are sometimes ignored. As a workaround, the developer can delete the <dvt:search> element through the Structure Pane, and then recreate it. (8926518)
  • DVT component tags do not support 'Convert' or 'Surround' options at design time. (8981666)
  • The Component Gallery for DVT Hierarchy Viewer does not include the 'Circle' layout type. You can choose this option in the Property Inspector after the tag is created on the page. (8862266)
  • Live data preview in the DVT Graph, Gauge, and Pivot Table binding dialogs is not available during design time if the application is configured with ADF Security. (8872334)
  • When a Pivot Table is bound to a View Object where a) an Attribute that is mapped to the row or column edge has a VO Format Control Hint specified and b) the rowset contains one or more null values for that mapped Attribute, then a NullPointerException may occur at runtime. The workaround is to either ensure that the mapped Attribute always returns a non-null value or else remove the corresponding Format Control Hint from the VO. (9262108)

ADF Faces doesn't support surrogate characters in FireFox (bug9063502)

When you have some surrogate characters to display in ADF Faces page in Firefox2.0 or later, one surrogate character will display as two separate characters. On microsoft IE, there are no this issue.

Large offset between mouse cursor and dragged content for some ADF Faces and DVT components(bug7448897,7234017)

When you drag something in bidi, there is an offset between the dragged item and the mouse pointer, which doesn't exist in non-bidi. This offset is typically fairly significant, and in some cases is huge.

ADF Share

ADF Enterprise Manager Integration

The ADF Business Component pages used for post deployment changes to bc4j.xcfg files are read only. Changes to .xcfg files requires re-deployment.

ADF Business Components

Running ADF Business Components Service May Throw RuntimeModelerException (9303533)

When you want to access an ADF Business Components web service in a consuming application (the client application) or when you want to test the service using a Java test client in the same application as the service, you must ensure that the correct libraries appear on the project's classpath. In the Application Navigator, double-click the project and in the Project Properties dialog, select Libraries and Classpath and confirm the following libraries appear in this order:

  • Java EE 1.5
  • Oracle XML Parser v2
  • BC4J Service Client
  • The service's common JAR file
  • JAX-WS Client

Note that JAX-WS Client library must appear last in the list to ensure Oracle's implementation of javax.xml.ws.spi.Provider is found. If Oracle's implementation is not used (defaults to Sun's implementation), a runtime service exception error will result.

Application Module getUserPrincipalName and history column Returns Anonymous After Authentication (9546149)

Web applications using getUserPrincipalName() from ApplicationModuleImpl or SessionImpl may get 'anonymous' after user already logged in.

Workaround:

1) Use ADFContext.getCurrent().getSecurityContext().getUserName() instead.

2) If issue is on history column only, then entities with history column kinds Created By and Modified By should override getHistoryContextForAttribute() in the entity impl class as follow:

If entity has ‘Created By” or ‘Modified By” history columns, then override getHistoryContextForAttribute(AttributeDefImpl attr) in the entity impl class that has history column(s) as follows:

protected Object getHistoryContextForAttribute(AttributeDefImpl attr) {
byte historyKind = attr.getHistoryKind();

if ((historyKind == AttributeDefImpl.HISTORY_CREATE_USER) ||
(historyKind == AttributeDefImpl.HISTORY_MODIFY_USER))
 {  
          return ADFContext.getCurrent().getSecurityContext().getUserName();
  }
       return super.getHistoryContextForAttribute(attr);
  }

ADF Customization (Seeded and User Customizations)

Customization of an ADF library JAR in multiple projects

At design time, the Data Controls panel shows a single representation of a particular data control per working set (for example, a business components application module). Therefore, only one model project can customize a given data control (for example, application module or DCX control). If you want to add the same ADF library JAR to multiple projects (including non-model projects) and then customize the ADF library JAR, it is recommended that you change the ADFLibraryCustomizations directory for each project to a location that is shared by all projects.

To change the ADFLibraryCustomizations directory:

  1. In the Application Navigator, right-click the project and choose Properties.
  2. In the Project Properties dialog, expand Project Source Paths.
  3. Click ADF Library Customizations.
  4. Change the ADF Library Customizations directory to a common application-level location.
  5. Click OK.
  6. Repeat these steps for each project in the application workspace.

Note that any ADF library customizations that were implemented prior to changing the ADFLibraryCustomizations directory will remain in their previous project-specific locations. They are not automatically migrated to the new location when you change the directory specification. You must manually copy any pre-existing ADF library customization metadata files to the new location.

Additionally, if you change the ADFLibraryCustomizations directory after you created a MAR profile, you must also change the corresponding entry in the contributors list on the Metadata file group page of the Edit MAR Deployment Profile Properties dialog before packaging. Alternatively, you can re-create the MAR profile to pick up this change.

Auto MAR support when packaging an ADF application in JDeveloper

When packaging an ADF application using JDeveloper, MDS creates an auto-MAR and includes default metadata (such as customizations), when either of the following conditions are met.

  • The Enable User Customizations > Across Sessions using MDS checkbox is selected in the ADF View settings for the ViewController project.
    OR
  • The MDS configuration section of the adf-config.xml file contains a <metadata-store-usage> element that is marked as deploy-target="true", as shown in this example:
< . . . >
                                


      <persistence-config>
                                


  <metadata-namespaces>
                                


 <namespace path="/oracle/apps" metadata-store-usage="repos1"/>
                                


        </metadata-namespaces>
                                


        <metadata-store-usages>
                                


       <metadata-store-usage id="repos1" deploy-target="true">
                                


       . . .
                                


       </metadata-store-usage>
                                


       </metadata-store-usages>
                                


      </persistence-config>
                                


< . . . >

ADF Mobile

Using ADF Task Flow or co-locating ADF Faces pages in a ADF Mobile Browser project will result in extra CSS and JavaScript download

While you can use ADF Task Flow to drive the page flow of a ADF Mobile Browser application, please note that inclusion of ADF Task Flow technology scope will also include the ADF Faces technology scope. This will cause extra CSS and JavaScripts from the ADF Faces components to be downloaded to the mobile device, even if the mobile browser pages do not contain any ADF Faces components. The approximate size of the extra download is about 1 MB, and may impact page load of every page, if the mobile browser does not support content caching.

Ensure that you always use Trinidad components when creating mobile browser page

When you create a mobile browser JSF page (by checking "Render for Mobile" check box when creating JSF page), the default component set selected in the Component Palette is typically not "Trinidad". It may be JSF or even ADF Faces. Do not use JSF or ADF Faces, but always select "Trinidad" or "Data Visualization Core" component set.

ADF Mobile Client Developer Preview

A Developer Preview version of Oracle ADF Mobile client is available as a separate download from the JDeveloper Update Center (Help > Check for Updates).