Known Issues for JDeveloper and ADF 11g 11.1.1.5.0
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!
Please read the installation guide for details on system requirements and specific installation instructions for various platforms.
Installing JDeveloper on Mac OS (8283602)
Some additional steps are required to install JDeveloper on Mac OS beyond what is documented in the installation guide. Please refer to the installation guide (http://download.oracle.com/docs/cd/E17904_01/install.1111/e13666/toc.htm) for additional details on installing JDeveloper for Mac OS X.
1. Make Java 6 the default VM.
2. Create a symbolic link for classes.jar
An additional step is required to successfully run applications on Mac systems that have Java for Mac OS X 10.5 Update 4 installed (8681385):
java.lang.illegalstateexception at JDeveloper startup (11887639)
When starting JDeveloper for the first time after installation, the XSLT file design time features like running and debugging do not work and exhibits this message: java.lang.IllegalStateException
Exception firing mainWindowOpened to oracle.jdevimpl.runner.xslt.XSLTRunnerAddin@46b9979b
java.lang.IllegalStateException: getInstance was called while _instance was null
Workaround is to restart JDeveloper.
xslt debugger locks up (11670054)
Sometimes JDeveloper locks up while debugging an XSLT.
"AWT-EventQueue-1" prio=6 waiting
java.lang.Object.wait(Native Method)
java.lang.Object.wait(Object.java:485)
com.sun.tools.jdi.TargetVM.waitForReply(TargetVM.java:281)
com.sun.tools.jdi.VirtualMachineImpl.waitForTargetReply(VirtualMachineImpl.java:1015)
com.sun.tools.jdi.PacketStream.waitForReply(PacketStream.java:51)
com.sun.tools.jdi.JDWP$StackFrame$GetValues.waitForReply(JDWP.java:6967)
com.sun.tools.jdi.StackFrameImpl.getValues(StackFrameImpl.java:218)
com.sun.tools.jdi.StackFrameImpl.getValue(StackFrameImpl.java:185)
oracle.jdevimpl.debugger.jdi.DebugJDIVariableInfo.getLocalVariableValue(DebugJDIVariableInfo.java:137)
oracle.jdevimpl.debugger.jdi.DebugJDIVariableInfo.getDataInfo(DebugJDIVariableInfo.java:223)
oracle.jdevimpl.runner.debug.DataItem.setInfo(DataItem.java:179)
oracle.jdevimpl.runner.debug.DataItem.(DataItem.java:137)
oracle.jdevimpl.runner.debug.DataItem.(DataItem.java:128)
oracle.jdevimpl.runner.debug.LocalsController.addDataItems(LocalsController.java:504)
Workaround is to restart JDeveloper and remove the break point at which the deadlock happened.
Connecting to Oracle Database Using OCI8 (11718506)
The recommended way of connecting to Oracle Database is using the thin driver, however you can connect using OCI8 by following these steps:
Warning Messages When Migrating from JDeveloper 10.1.3 (11668213)
When you migrate an application that contains offline database objects from JDeveloper 10.1.3 you will see one or more warnings in the messages log:
oracle.jdevimpl.offlinedb.browser.DBObjectFileWrapper getProvider
WARNING: Offline Database file does not exist for file filename [offlineObjectType]
These appear because of the different way that offline databases are handled in this version, and can be safely ignored.
Problems running WLS on Windows 7 64-bit or Mac (9466912, 8969281)
JDeveloper does not look at the value of CLASSPATH or JAVA_HOME to determine its classpath or jdk; it stores this information in proprietory locations. The WebLogic domain installation scripts, however, extend the supplied value of the CLASSPATH and JAVAHOME variables, and WebLogic domain creation will fail if JAVAHOME contains ')' or CLASSPATH contains a space. The former happens when, for example, the 32bit JDK is installed in its default path, for example: C:\Program Files (x86)\Java\jdk1.6.0_18. The latter if an application such as Apple QuickTime adds itself to the to the CLASSPATH environment variable, for example:
CLASSPATH=.;C:\Program Files (x86)\QuickTime\QTSystem\QTJava.zip
In either of these cases, creation of the Integrated WebLogic Server domain fails with a message similar to:
[waiting for the server to complete its initialization...]
\Java\jre6\lib\ext\QTJava.zip was unexpected at this time.
Process exited.
The workaround is to install the JDK in a path withpout ')', and remove the Apple QuickTime entry from the classpath, and restart JDeveloper.
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.
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
Unknown macro: { public String[] list(); public String[] echo(String[] value); public void process(int[] values); }
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:
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);
JDeveloper hangs when using Spring tooling without an active network connection (10050723)
When editing a spring bean definition you might experience hangs as the code incorrectly tries to download files from the internet. (In particular datatype.dtd) You need an active network connection to make use of the Spring tools. There is a patch with a fix for the original issue in 10074487 and is fixed by bugs #12712872 and #1235505.
Compatible version of connectors not retrieved
Team Productivity Center installer does not retrieve the compatible version of connectors hosted on Oracle Technology Network.
Workaround:
Open tpcinstaller.jar with winzip or 7-zip
Expand folder META-INF and locate file installer.xml
Edit this file by changing this line
<entry key="VersionPrefix">11.1.1.4.37</entry>
to
<entry key="VersionPrefix">11.1.1.5.37</entry>
Save the installer.xml file and the tpcinstaller.jar file
Team Productivity Center server cannot be started with Tomcat
Team Productivity Center server cannot be started if it is installed using Tomcat.
Workaround:
Make sure you have applied the above mentioned wrkaround
Make sure you have installed JDeveloper Studio version
Run the installer against your Tomcat server
After installation completes, start the Tomcat server and then stop it
Go to your newly installed JDeveloper folder and locate folder "modules". For example, C:\JDeveloper11.1.1.5\modules
Copy the file named "org.eclipse.persistence_1.1.0.0_2-1.jar"
Go to your Tomcat server webapps directory and identify the lib folder used by otpc. For example, C:\Program Files\apache-tomcat-7.0.12\webapps\otpc\WEB-INF\lib
Paste the file "org.eclipse.persistence_1.1.0.0_2-1.jar"
Restart Tomcat
Excel Validation and ADF Table Components (7509432)
Excel validation does not get applied to the placeholder row in an ADF Table component that contains data.
Given an ADFdi Table component with Excel "Data Validation" rules applied to one or more columns:
if the user downloads data and then inserts new rows just under the header row, the new rows do not have the Excel Data Validation. Additionally, if the workbook developer performs the same set of steps in test mode and then returns to the designer, the data validation rules are lost altogether.
Workaround is to not insert rows just under the column headers. Instead, insert new rows anywhere in the middle or at the end of the table.
Known Limitations on changing ADFdi components at runtime (6196783, 6032482, 6161839)
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 is disabled if an end user moves a column to the end of an ADF Table component at runtime. Subsequent edits to cells in the moved column do not mark the row as changed.
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 is to close the workbook without saving any changes.
Unexpected exception when using Excel filters in test mode (7134292)
Unexpected Excel exception when returning from test mode to design-time mode if Excel filtering is applied to a table.
Steps:
At this point, an unexpected exception occurs.
Workaround is 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.
Excel Context Menus Do Not Hide/show ADFdi controls as expected (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.
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.
Workaround is to 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 is to 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 a variableUsage Element Causes Null Pointer Exception in ADFdi Remote Servlet (6377073)
ADFdi does not support variables in the page definition declared with the syntax of variableUsage.
If the developer creates variableUsage in the ADFdi-related page definition, it will produce NullPointerExceptions in the server at runtime.
Workaround is to instead create variables using the <variable> element in the page definition.
Known issues related to displaying web pages using the Dialog action (7205486, 9718945, 11072858)
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: http://docs.microsoft.com/en-us/collaborate/connect-redirect?FeedbackID=377657
Workaround is to avoid this problem, use web page control types that are not affected by the problem.
Workaround is to enhance the web page's bean code to detect a change in the current row and cancel the dialog.
Known issues with the design-time property inspector and expression builder features (6314302, 7269921)
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 workaround is to save the object and then re-open.
Sample issues:
Known issues with design-time collection editors (8254551)
For example, the Workbook properties include "Branding Items". The items can be edited in a pop-up collection editor. When making changes to existing items via this collection editor and then pressing the Cancel button, the changes to the collection are not canceled as expected.
Workaround is to cancel the parent property editor to cancel the undesirable changes from the collection editor.
Known issues with ADFdi List of Values components (8575731, 8651633, 8651645)
Scenario: When 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.
Workaround is to fetch a new copy of the published workbook from the web app, or execute the ClearAllData command
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 is to configure the Excel form to use a "dynamic" list binding instead.
Known Issues with SSL (7117108, 9536914)
Error text:
ADFDI-00134: An attempt to connect to the web application has failed.
Solution: Navigate to a web page from the same application using Internet Explorer. This action will install the certificate locally. Subsequent attempts to use the integrated workbook will succeed.
If your web application is configured to use SSL/HTTPS, but does not use authentication, the login dialog will appear briefly when the workbook establishes a connection and then close again in order to recognize the certificate.
Known issues involving master-detail worksheets (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.
Workaround is to 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 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 the ADF Table component in a read-only configuration.
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.
Known issue with Excel's 'Page Layout' mode (7482216)
Summary: if the workbook developer switches the View mode of Excel to "Page Layout", ADF Button components may be rendered in an unexpected position (bug 7482216).
Workaround: Switch Excel back to Normal View mode. Then, Run and Stop the workbook so that the buttons will redraw correctly.
Known Issues at design-time (9737702)
Migrating from previous releases of Oracle ADF 11g (10358830)
Solution: Prior to upgrading to 11.1.1.5.0, be sure to upload or discard any pending changes in saved workbooks. After migration, be sure to re-download any data in saved workbooks.
If you wish to use integrated workbooks created using 11.1.1.3.0 or earlier with ADFdi 11.1.1.5.0, you will have to perform one or more migration steps. The migration can be performed at design-time and also on published runtime workbooks. It is preferable to convert design-time workbooks and re-publish so that end users do not have to experience the migration.
In general, you cannot have two versions of ADFdi installed on the same computer. There is an exception in this case: you can leave 11.1.1.3.0 installed while migrating workbooks to 11.1.1.5.0. If you do so, you will avoid seeing several errors. However, if you have already uninstalled the old version, you will see 1 or 2 errors during the migration of each workbook as it tries to access the old version. These errors can be dismissed and ignored.
Assuming that you are migrating 11.1.1.3.0 workbooks at design-time, the steps are:
Note: a migrated workbook can no longer be used with the old client.
ADFdi ribbon tab not displayed (add-in inactivated or disabled by Excel) (9778270)
Under certain circumstances, the ADFdi add-in for Excel may become inactivated or disabled (bug 9778270).
One symptom of this problem is that the ADFdi-related Excel ribbon tabs may not appear when expected.
Workarounds:
If the ADFdi add-in appears in the Disabled Add-ins section, attempt to re-enable it by by selecting 'Disabled Items' from the Manage menu and clicking the Go button. Select the ADFdi add-in in the Disabled Items dialog and click the Enable button. Close Excel and then re-launch it to allow the ADFdi add-in to re-initialize and display the expected ribbon tabs.
Reference: http://msdn.microsoft.com/en-us/library/ms268871%28v=VS.90%29.aspx
Known issue with date-time values and time zone changes (10623397)
Consider the following sequence of events (bug 10623397):
Result: Any date-time values from modified rows will be considered to have changed by the difference in the time zones.
Analysis: Date-time values in Excel do not have any notion of time zone. ADFdi always uses the local computer's time zone to adjust date-time values before communicating with the server.
Workaround is to complete the upload of any pending changes before altering the local computer's time zone settings.
After altering the local computer's time zone settings, be sure to re-download worksheet data before making any modifications.
See browser specific bugs listed in the Supported Platforms section (http://adfui.us.oracle.com/releases/adf.faces/11.1.1.5.0/release.html#SupportedPlatforms)
Calendar, RichTextEditor, and PanelCollection's toolbar icon selectors (11939264)
When skinning icons and images, a '/' at the beginning of the url means context-relative, and a '//' means server-relative. http://myfaces.apache.org/trinidad/devguide/skinning.html#urls However, for the calendar toolbar icons (e.g., af|calendar::toolbar-day-icon), a '/' does not work, and a '//' means context-relative. For richTextEditor and panelCollection's toolbar icons (e.g., af|richTextEditor::bold-icon, af|panelCollection::freeze-icon), both '/' and '//' mean context-relative. T
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.
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.
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.
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. If an application cannot pre-populate primary keys in the data objects for any reasons and the data objects are bound to tables, trees or treeTables, it needs to have the following configuration to workaround potential failures due to primary key value changes:
<af:table value="#{bindings.EmpView1.collectionModel}" var="row"
... partialTriggers="it1">
<af:column sortProperty="Empno" sortable="true"
headerText="#{bindings.EmpView1.hints.Empno.label}"
id="c1">
<af:inputText value="#{row.bindings.Empno.inputValue}"
... autoSubmit="true" id="it1">
<f:validator binding="#{row.bindings.Empno.validator}"/>
<af:convertNumber groupingUsed="false"
pattern="#{bindings.EmpView1.hints.Empno.format}"/>
</af:inputText>
</af:column>
...
<af:column sortProperty="Deptno" sortable="true"
headerText="#{bindings.EmpView1.hints.Deptno.label}"
id="c8">
<af:selectOneChoice value="#{row.bindings.Deptno.inputValue}"
label="#{row.bindings.Deptno.label}"
shortDesc="#{bindings.EmpView1.hints.Deptno.tooltip}"
id="soc1">
<f:selectItems value="#{row.bindings.Deptno.items}" id="si1"/>
</af:selectOneChoice>
</af:column>
</af:table>
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 (8554509, 8868756, 8827678)
The table component has some known issues in emailable page mode.
The application developer would need to define the bold style directly on their outputText.
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.
ADF Faces Repeated Components by af:forEach and af:iterator
ADF Faces components do not support persisting customization changes if the component is contained inside of (anywhere in the subtree of) af:forEach or af:iterator. However, if the repeating component and the repeated component are located across document, for example, in different jsff or jspx files, then we can't detect this case and will allow the customization persistence.
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.
ADF Faces Table Column Reordering
In af:table, when you have a detail stamp and you keep the detail stamp expanded, then table column reordering won't work.
To work around this, you can collapse the detail stamp first and then do the column reordering.
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.
StringIndexOutOfBoundsException in org.apache.myfaces.trinidadinternal.style.util.CSSGenerationUtils (6875866)
This error happens due to bug 6875866 (HotSpot compiler bug in String.indexOf() using SSE4.2 instruction-set on new Intel chips).
Workaround is to 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
UI Components State Sync When Sharing The Same Iterator Binding
When there are multiple components share the same iterator binding in one page, the application needs to use partialTriggers to sync up UI states.
One example is a form and a table based on the same iterator binding, the table's partialTriggers needs to point to the form's navigation buttons, for table selection to sync with form.
Multibyte Character Set Page Name: not supported for WebSphere Application Server
Due to WAS's specific implementation of HttpServletResponse class, server side redirect for UTF-8 encoded URL with MBCS characters does not work correctly. Because of this, when you access a page with multibyte character set name, you may get Http Error 404, or "Failed to find resource" error.
Resource URL Session ID Rewriting
In some scenarios a session id may be inserted into URLs for ADF Faces resources such as JavaScript libraries, style sheets and images. This can happen when cookies are disabled in the user's browser or the first time that a user visits an ADF Faces application, at which point the application server does not yet know whether cookies are enabled. While this does not impact functionality, it can result in a small performance hit, since the presence of the session id prevents previously cached copies of resources from being used. In cases where the application requires the use of cookies, it is possible to avoid session id URL rewriting by configuring the application server to always use cookies for session id management. For example, Oracle WebLogic Server allows session id url rewriting to be controlled by the <url-rewriting-enabled> element in the weblogic.xml file.
Popup components with the childCreation attribute set to "deferred" often render blank with the first invocation
This issue arises if you use the popup component with a region and use the setPropertyListener tag to establish the activation of the region. The setPropertyListener tag with a popupFetch type will not be invoked for the initial fetch establishing the initial content delivery. This is because the markup that defines the setPropertyListener tag is defined within the popup's body. With the option to defer creating the children, the body is not processed until the first fetch for content. The popup fetch event listener (setPropertyListener) is processed in the Apply Request Values phase prior to when it is created in the Render Response phase. The workaround is to use the "popupFetchListener" method expression (PopupFetchEvent server-side event) to establish state that would have been established using the setPropertyListener.
UIXCollection stamp state carry-over
Due to a bug, it is possible for some of the component state to appear in the wrong rows for the collection family of components (iterator, table, treeTable and tree). The problem manifests itself in different use cases.
Besides an immediate event, an example of when validation and update model may not occur is if <af:subform/> is around the input components.
<af:iterator id="outer" var="outer" value="#{...}">
<af:iterator id="inner" var="inner" value="#{...}">
<af:inputText id="text" label="Input text" value="#{...}"/>
</af:iterator>
</af:iterator>
In this case, the text component may end up sharing the stamp state of other iterations. So, if there are two items in the outer iterator and 2 items in the inner iterator, outer row 1 with inner row 1 may end up sharing its stamp state (submitted value) with the outer row 2 and inner row 1 instance.
To work-around this issue:
JSF 1.2 Migration
With ADF Faces now requiring JSF 1.2, it is recommended to migrate your project and its containing files to JSF 1.2 when prompted in JDeveloper. If you choose not to migrate, ADF Faces DT will still provide support for the following changes:
Note that choosing to migrate when prompted will automatically take care of this for you.
ADF DVT Graph and Gauge (6904435, 6016950, 8275790, 8977003)
ADF DVT Gantt Chart (8914616, 8684652, 9027856, 9026200, 8862734, 9685840, 9083323, 9432601, 9868647, 10374397)
ADF DVT Pivot Table (8895660, 8316539, 8742733, 8998375, 9020333, 9047467, 9012546, 9475191)
ADF DVT PivotFilterBar (8777349, 9002516, 8777330, 8940695, 8914128, 8917681, 9672617, 9926815)
ADF DVT Databinding and Design Time (8965391, 8607695, 8926518, 8862266, 8872334, 9708226, 11810002, 11716107)
<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)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 is not this issue.
Resource Bundle Key Not Found for Localized Exception (11779435)
If a JboException is used to throw an exception which is localized, ADF does not search in the correct resource file for the property.
Workaround: Adapt the code in the Class PropertyListResourceBundle as shown, where you test if the value returned by getLocale() is null, and call ResourceBundle.getBundle(getBundleName()) when this is the case.
...
protected Object[][] getContents() {
Locale locale = getLocale();
if (localeContents.containsKey(locale)) {
return (Object[][]) localeContents.get(locale);
}
ResourceBundle rb = null;
if (locale == null)
rb = ResourceBundle.getBundle(getBundleName());
else
rb = ResourceBundle.getBundle(getBundleName(), locale);
...
'Configurations...' and 'Go to Domain Class' don't work in AppModule right click menu (12319507)
In Japanese locale, AppModule right click menu items 'Configurations...' and 'Go to Domain Class' don't work.
As a workaround for 'Configurations...' menu item, double click AppModule and select Configurations tab in AppModule Overview editor. A simple workaround for "Go to Domain Class" menu item: Expand the Domain node to show the java class, then double click to open the java class directly.
JSP and HTML visual editor toolbar not keyboard accessible (8351632)
When opening the visual editor you may not be able to see all the toolbar functions available and there is no visual indication [... or =>] that more toolbar functions are available. You can, however, expand the window wider to see them all.
Viewing a page preview from the visual editor (8351673)
When viewing a page preview from the visual editor using the default browser users should:
This option will now be keyboard accessible.
Message dropdown not accessible (8728885)
When working in a facelet and attempting to drop a JSF html message component onto the page, a dialog appears to allow the user to specify the ID to which to attach the message. The workaround is to use the Property Inspector to change the 'for' property of h:message.