Oracle JDeveloper and Application Development Framework (ADF) 11g Release 2 (11.1.2.4.0)

Known Issues for JDeveloper and ADF 11g Release 2 (11.1.2.4.0)
last updated: May 20, 2014

Introduction

Oracle JDeveloper and Application Development Framework 11g Release 2 (11.1.2.4.0) is a minor update to 11.1.2.4.0. For a list of new features in 11g Release 2, and specific customer bugs fixed in the update release see the What's New document on OTN.

This document describes known issues with the release. If and when new issues are discovered they will be added to this document. Please also use the JDeveloper community discussion forum on OTN for questions and answers and to let us know what you think!

One very important note about this version is the fact that it is released off-cycle from Oracle Fusion Middleware. While this allows the team to bring the product to market faster, there are a number of critical implications.

  1. There is no design-time or runtime support for SOA and WebCenter components in 11g Release 2

    ADF 11g Release 2 is intended primarily for customers who are building stand-alone ADF applications. If your business requirements entail the use of ADF in conjunction with Oracle SOA Suite or Oracle WebCenter, it is recommended to use the latest, fully integrated 11g Release 1 of Oracle Fusion Middleware (currently 11.1.1.6.0 at time of publication), including Oracle JDeveloper 11g Release 1 (11.1.1.6.0).

  2. There is no stand-alone installation of the Application Development Runtime component in 11g Release 2

    ADF 11g Release 2 needs to be installed as a patch on top of of an existing 11.1.1.6.0 Application Development Runtime installation. The steps for upgrading 11.1.1.6.0 server to run 11.1.2.0.0 ADF applications is described later in these release notes, and documented in the Administrator's Guide for Oracle Application Development Framework.

Note: JDeveloper should always be installed in a new MIDDLEWARE_HOME.

Installation

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

No Support for Oracle JDK 1.7 Update 25 (16710919)

There is a known, serious issue with this version of JDeveloper running with Oracle JDK 1.7 Update 25. It is specific to Update 25, and does not occur with earlier and later versions of the JDK. The problem typically manifests when using one of the diagramming tools in JDeveloper. It typically causes the Crash Reporter to appear.

The workaround is to use a different JDK update version. Oracle is working on a patch for customers who must use Update 25.

Installation on Mac OS

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://docs.oracle.com/cd/E26098_01/install.1112/e17074/toc.htm) for additional details on installing JDeveloper for Mac OS X.

1. Make Java 6 the default VM.

  • Run Java Preferences (in /Applications/Utilities/Java)
  • Move the Java SE 6 (64 Bit) to the top of the Java application versions list (General tab)

2. Create a symbolic link for classes.jar (requires root access)

  • To enable root user:
    • For Mac OS versions older than Snow Leopard, simply open the Directory Utility app from Applications - Utility
    • For Mac OS versions Snow Leopard and more recent:
      • Go to System Preferences - Users and Groups. Click Login Options, and then the Join button (enable configuration changes if necessary). Then, proceed by clicking Open Directory Utility.
    • Ensure the settings are unlocked (click the lock if necessary)
    • Choose Edit > Enable Root User and provide the root user password.
    • Note, you can return to this same screen to disable root user after creating the symbolic link
  • Create the symbolic link from a terminal session:

cd /SystemLibrary/Frameworks/JavaVM.framework/Versions/1.6.0/Home/
su root
mkdir jre
CD jre
mkdir lib
CD lib
ln \-s ../../../Classes/classes.jar rt.jar

Note: You may need to repeat the steps to create the symbolic link after installing a new JDK.

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):

  1. Open the jdev.conf file. The file is located in the MW_HOME/jdeveloper/jdev/bin/ directory.
  2. Add the following line to the jdev.conf file: AddVMOption -Djava.io.tmpdir=/var/tmp

JDK not supported error on startup (16762647)

The Windows platform-specific installer for JDeveloper Studio (jdevstudio11124install.exe) is bundled with JDK 1.6 update 24. When you start JDeveloper, there is an error indicating that the version of the JDK is not supported and that JDK 1.6 update 35 is required. We are working on a fix, but in the mean time, this can be avoided by installing a more recent version of the JDK (update 35 or later), and using that to run JDeveloper. See the Installation Guide for details on how to change the JDK used by JDeveloper.

UPDATE: Note, this issue has been fixed in a subsequent update. If you are still encountering this issue, you can either download JDeveloper again, or you can install a more recent version of the JDK 1.6 (update 35 or later). The JDeveloper build number (Help > About, Version)  that exhibits this behavior is 11.1.2.4.39.64.36. The version where it has been fixed is 11.1.2.4.39.64.36.1.

Applying Patches to Integrated WLS

When you install JDeveloper, a complete WebLogic Server environment is also installed for development, testing, and debugging purposes, also referred to as the JDeveloper Integrated WLS. In the event that it is necessary to apply patches to Integrated WLS, you can use either the SmartUpdate feature of WLS or Oracle Opatch depending on how the patch is provided from Oracle.

Migration

ADF Mobile Migration

The following migration steps are required to migrate ADF Mobile Apps built using 1.0 (JDeveloper 11.1.2.3.0) to 1.1 (JDeveloper 11.1.2.4.0)

1. Update Skin Version

  • Applies To: All 1.0 Apps
  • Description: When 1.0 app is opened in 1.1 ADF Mobile extension a validation exception is reported in .adf/META-INF/adfmf-config.xml about the skin version configuration. Deployment fails with invalid skin version error.
  • Migration Steps:  Remove the skin version tag in adfmf-config.xml and save the file. This will allow the framework to pick up the latest skin shipped with 1.1.

2. Update default iOS resources used by the application:

  • Applies To: All 1.0 Apps
  • Description: When 1.0 app is deployed to iOS device or Simulator in 1.1, a deployment error is displayed due to missing default resources.
  • Migration Steps: 
    • Create a new application using 1.1.
    • Copy the contents of <new application root>/resources/ios to <existing application root>/resources/ios

3. PhoneGap to Cordova Migration

  • Applies To:  Apps using PhoneGap JS API or ADF MF JS API in localHTML or remoteURL features.
  • Description:  PhoneGap to Cordova Migration
  • Migration Steps:  
    • The current JS references to include ADF Mobile JS need to be replaced by these 2 script tags:
      
      <script type="text/javascript">if (\!window.adf) window.adf = {};adf.wwwPath = "../../../www/";</script>
      <script type="text/javascript" src="../../../www/js/base.js" ></script>

      Note that the number of "../" entries must match between both script tags and the number will vary depending on where the custom HTML page is located within the application relative to the deployed www directory.

      In other words if your HTML file is moved deeper into another level of folders, you will require another "../" for those 2 script tags.

    • Local HTML Features directly accessing PhoneGap JS API from HTML files. You may need to change your imports and migrate to Cordova API as needed.
    • Remote HTML Features using PhoneGap JS API to access device services. You may need to package Cordova JS libs instead of PhoneGap API on the server and migrate to Cordova API as needed.

4.  Update the cacerts file.

  • Applies To:  All 1.0 Apps using SSL
  • Description: Update the cacerts file.
  • Migration Steps:  
    • Create a new application using 1.1.
    • Copy cacerts file from <new application root>/resources/security to <existing application root>/resources/security>

5.  Update XCode for iOS development and Android SDK for Android development.

  • Applies To: All 1.0 Apps
  • Description:  Update XCode for iOS development and Android SDK for Android development.
  • Migration Steps:  
    • For iOS, XCode 4.5.2 is required along with iOS SDK6.0. Please download XCode from Apple developer portal.
    • For Android,  minimum Android SDK is API 15 for development.

JSF 2.0 Migration

When opening a workspace that uses JSF technology, we migrate the application to JSF 2 by doing the following:

  • Change project properties that refer to JSF tag library and runtime libraries to JSF 2.0 tag library and runtime libraries
  • Migrate web.xml:
    • a. Upgrade web.xml to version 2.5
    • b. Add the following parameters:
      • set  javax.faces.PARTIAL_STATE_SAVING to "false"
      • set oracle.adf.view.rich.security.FRAME_BUSTING to "differentDomain"
  • Upgrade faces-config.xml to version 2.0
  • If the application uses Facelets:
    • a. Remove any references to the Facelets 1.x library
    • b. Make the following changes in web.xml:
      • > if there is "org.apache.myfaces.trinidad.FACELETS_VIEW_MAPPINGS" parameter in web.xml, set "javax.faces.FACELETS_VIEW_MAPPINGS" to the same value
      • > remove "facelets.DEVELOPMENT" parameter
      • > remove "org.apache.myfaces.trinidad.ALTERNATE_VIEW_HANDLER" parameter
      • > change the following param names:
        • facelets.SKIP_XML_INSTRUCTIONS => javax.faces.FACELETS_SKIP_XML_INSTRUCTIONS
        • facelets.SKIP_COMMENTS => javax.faces.FACELETS_SKIP_COMMENTS
        • facelets.DECORATORS => javax.faces.FACELETS_DECORATORS
        • facelets.RESOURCE_RESOLVER => javax.faces.FACELETS_RESOURCE_RESOLVE

JSF Upgraded to 2.0

The JSF version packaged starting in 11.1.2.0.0 has been upgraded to 2.0 which may cause applications using the exact-match flag set to true to fail to deploy. The solution is to set exact-match to false. JSF 2.0 is backwards compatible with previous versions and should not cause any problems.

Migrating .generate Files from Earlier Releases of JDeveloper (10385245)

The persistence format of .generate files changed between JDeveloper 10.1.3 and JDeveloper 11.1.1.4.0. If you are migrating from earlier releases to JDeveloper 11.1.1.4.0 as part of the migration to JDeveloper 11.1.2.0.0 and you have .generate files, then you need to force any .generate files to be saved by JDeveloper 11.1.1.4.0 in the new format. . The way to do this is to open the .generate file and make a change to it, then click OK to save the file.

Unable to Deploy a Migrated Application (14508972)

If you migrate an ADF Fusion Web application that uses a generic JDBC connection to connect to a non-Oracle database you may get an error message when you run it. This is because weblogic.jar in the JDBC library from the earlier version has Deployed by Default specified so it will always be on the deployed classpath.

The workaround is:

  1. After migrating the application, create a new user defined library using Manage Libraries on the Tools menu.
  2. In the Create Library dialog, leave Deployed by Default unselected. Give the library a different name to that used in the earlier version of JDeveloper, but use the same entries.
  3. Any project that is using the built-in library in question must be changed to use the new user defined library (right click and choose Properties, then navigate to the Libraries and Classpath page).

Migrated 10.1.3.5 Application Fails With Validation Problems (8822394)

If you migrate an application that contains web.xml with <form-login-config> from JDeveloper 10.1.3.5, it may fail with validation problems when it is run on Integrated WebLogic Server.

To fix this, open web.xml in the source editor and add "/" in front of "login.html" and "error.html" in the login-config tag. For example,


<login-config>
 <auth-method>FORM</auth-method>
 <form-login-config>
 <form-login-page>/login.html</form-login-page>
 <form-error-page>/error.html</form-error-page>
 </form-login-config>
</login-config>

IDE and Java SE Development

Pasting from Windows directly into JDeveloper running on hosted Linux via VNC (11842393)

When using JDeveloper through VNC Viewer, pasted data originating from the VNC client will not be available to the hosted JDeveloper process. To synchronize JDeveloper with the system clipboard, switch focus from JDeveloper to another application, and then back to JDeveloper again.

Password field disabled for keyboard entry on 64-bit Red Hat Linux

A JDK bug will sometimes prevent keyboard input into Swing password fields. You may be able to click in the field but you cannot enter a string or use navigation keys such as the Tab key. This occurs on 64-bit Red Hat Linux systems. You may encounter this issue when you are using:

  • Domain Configuration Wizard when logging into the Integrated WebLogic Server for the first time
  • Standalone Domain Configuration Wizard (launched from Quickstart to configure a standalone WebLogic Server)
  • ADF Model Tester (which prompts for a password when testing an application with ADF security enabled)
  •  Create Database Connection dialog

The workaround is to issue the following setenv command before you launch the IDE or Quickstart: class="code-java">setenv LC_ALL en_US

Change in Default for "Check for Externally Modified Files on Startup" setting

In previous releases, JDeveloper was configured by default to check the timestamp of files on disk for opened projects at startup. If modifications are found, JDeveloper synchronizaes the project contents with the version that is on disk. For performance reasons, the default setting for this option has been changed in this release.

With this setting off, it's possible for the contents in the JDeveloper project to be out of date with respect to files on disk if those files have been modfied by another program. To refresh the project contents (you can select multiple projects at once in the navigator), use the View > Refresh command.  Alternatively, you can modify the setting in Tools > Preferences, Environment tab by checking the option to Check for Externally Modified Files on Startup.

If you migrate your IDE settings from a previous release, you will continue to have the same behavior as you are accustomed.

ADF Mobile Preview does not work on Windows 8.1 (16304456)

The ADF Mobile editor "Preview" mode does not work under Windows 8.1 with JDK 1.6.0_24 and earlier. Users may see the following exception:


oracle.adfmf.amx.dt.editor.AMXPreviewBrowser _tryCreatingJFXPanel     SEVERE: Failed to create JavaFx components. Encountered exception: "java.lang.RuntimeException: java.lang.UnsatisfiedLinkError: Invalid URL for class: bundleresource://498.fwk4512144:1/com/sun/glass/utils/NativeLibLoader.class" 

The workaround is to update the JDK used to run JDeveloper to 1.6.0_38+ (or JDK 1.7).

JDeveloper does not support NTLM Proxy Servers (13898947)

JDeveloper does not currently support using a proxy server with NTLM Auhtorization.

Web Applications - HTML, JSF, Facelets, JSP

Warnings appear when using JSFC attribute with HTML tags (Bug 10252336)

We do not currently support the use of the JSFC attribute with HTML tags.

Database Development

Changing an Object Based Foreign Key Can Cause an Error (13799490)

If you have an object-based foreign key linking two tables on a database diagram and subsequently close the diagram, and in the Edit Table dialog change the foreign key to a name-based foreign key, you will get an error if you re-open the diagram and double-click on the modeled foreign key.

The workaround is to edit the foreign key by double-clicking on the foreign key in the modeled table on the diagram, or by editing the offline table and navigating to the foreign key there.

Goto Declaration and Find Usages for Packaged Procedures and Functions (Bug 12422139)

Usages of packaged procedures and functions from outside the package are only listed when you use Find Usages on the definition in the package spec. Usages of packaged procedures and functions from within the package body are only listed when you use Find Usages on the definition in the package body. The usages are not listed together.

Goto Declaration and Find Usages for Type methods (bug 12422169)

Methods in Type bodies may not be correctly identified when you use Goto Declaration or Find Usages.

Deployment

Configuring an Application Server to Run 11.1.2.4.0 Applications

The ADF Runtime will be installed into a standalone application server by applying an Opatch bundle on top of a 11.1.1.6 version of the Application Developer Runtime environment. In the event that additional patches are needed or desired in addition to the 11.1.2.4.0 patch (for example, if an additional patch is needed for another component in the Application Development Runtime installation), those patches will need to be installed separately.

Important note: The patch is intended to be applied to an Application Developer Runtime installation. Applying the patch to a different installation type (for example, Oracle SOA Suite or Oracle WebCenter) is not supported.

Key Installation steps for new Oracle WebLogic Server Users

  1. Download and install WLS 10.3.6.
  2. Download and install Application Developer 11.1.1.6. For more information see the Oracle Fusion Middleware Installation Planning Guide.
  3. Run the Fusion Middleware Configuration wizard and create a new domain, or extend an existing domain, using the JRF + EM + OWSM domain template.
  4. Download the 11.1.2.4.0 Opatch bundles and use the opatch tool to apply the patches (see Install the Patch below).
  5. Shutdown the target domain servers.
  6. Run the WLST "upgradeADF" command in offline mode (see Run the Commands below).
  7. Restart the servers.

Key Installation steps for existing Oracle WebLogic Server Users

  1. Ensure server is an 11g Release 1  (11.1.1.6) Application Developer shiphome. Customers using a version of Application Developer Runtime from prior to 11.1.1.6 will need to upgrade their environment to 11.1.1.6 before installing Sherman 11.1.2.4.0. For more information see the Oracle Fusion Middleware Patching Guide.
  2. Download the 11.1.2.4.0 Opatch bundles and use the opatch tool to apply the patches (see Install the Patch below).
  3. Shutdown the target domain servers.
  4. Run the WLST "upgradeADF" command in offline mode (see Run the Commands below).
  5. Restart the servers.

Key Installation steps for IBM WebSphere Application Server Users

  1. Download and install WebSphere if needed. For more information, see the Oracle Fusion Middleware Third-Party Application Server Guide and IBM WebSphere Application Server documentation.
  2. Download, install, and configure Application Development Runtime 11.1.1.6. For more information, see Oracle Fusion Middleware Installation Planning Guide.
  3. Download the 11.1.2.4.0 Opatch bundles and use the opatch tool to apply the patches (see Install the Patch below).
  4. Shutdown the servers.
  5. Run the wsadmin "upgradeADF" command in online mode while connected to the server (see Run the Commands below).
  6. Restart the servers.

Key Installation steps for GlassFish Server Users (ADF Essentials only)

  1. Download and install GlassFish 3.1.2 Full Platform.
  2. Download and install ADF Essentials. For more information, see the ADF Administrator's Guide.

No patching is needed as ADF Essentials is a stand-alone installation and does not require an existing Application Development Runtime installation.

Install the Patch

1. Download and install the patches from My Oracle Support:

  • For 11.1.2.4.0, the patch numbers are 16546129 (ADF) and 16546157 (WebCenter). Both patches need to be applied. Download the patches from My Oracle Support and follow the instructions to apply the patches.
  • For WebLogic, copy the adfwLSTCommand.py script into the 11.1.1.5/6 ORACLE_HOME/oracle_common/common/wlst directory. For WebSphere, copy the ADFAdmin.py script into the 11.1.1.5/6 ORACLE_HOME/oracle_common/common/wsadmin directory.
  • Run either the WLST or wsadmin shell and invoke the commands as described in the next section.
  • Use the application server's administrative console to verify that the shared library is installed correctly on the server.
  • Deploy JSF 1.2.9 and JSF 2.0 applications to validate that they work. Note that if an existing application explicitly specify that it requires an exact match against a JSF 1.2.x version, then you must match this version before running the application against the 11.1.2.4.0 shared library. This should not be a typical case.
  • Validate the shared library using Enterprise Manager

Run the Commands

1. For WebLogic, invoke the following command in WLST offlne mode.  For example:


wls:/offline> upgradeADF('/scratch/jdoe/oracle/MyDomain')
Target Library "jsf#2.0@1.0.0.0_2-0-2" to JRF "DefaultServer"
            

  1. Parameter 1 (Required) - DomainLocation - Domain to be upgraded
  2. Parameter 2 (Optional) - JSF Library Name. Defaults to jsf.
  3. Parameter 3 (Optional) - JSF Library Spec Version. Defaults to 2.0.
  4. Parameter 4 (Optional) - JSF Library Impl Version. Defaults to 1.0.0.0_2-0-2.

2. For WebSphere, invoke these commands in wsadmin online mode (i.e. when connected to the server). Note: you can obtain the SOAP port number from the deployment manager's portdef.props file.


> wsadmin.sh -conntype SOAP -port portnumber -user username -password password
> ADFAdmin.upgradeADF('DefaultCell', 'OracleCellFederatedNode', 'OracleAdminServer')

  1. Parameter 1 (Required) - Cell
  2. Parameter 2 (Required) - Node
  3. Parameter 3 (Required) - Server
  4. Parameter 4 (Optional) - JSF Library Name. Defaults to jsf.
  5. Parameter 5 (Optional) - JSF Library Spec Version. Defaults to 2.0.
  6. Parameter 6 (Optional) - JSF Library Impl Version. Defaults to 1.0.0.0_2-0-2.

Using JDeveloper with Oracle WebLogic Server 10.3.6 (13016584)

JDeveloper is distributed with WebLogic Server 10.3.5. If you want to configure a WebLogic Server 10.3.6 domain to test an ADF application , you will need to install WebLogic Server 10.3.6 and use the 10.3.6 JRF template to add the ADF runtime libraries.

To do this:

  1. Create a new domain using the configuraiton wizard for the WebLogic Server 10.3.6 instance at wls1036_home/wlserver_10/3/common/bin.
  2. Invoke the Fusion Middleware Configuration Wizard from middleware_home/oracle/wlserver/10.3/common/bin.
  3. Extend the domain you created in step 1.
  4. Select Oracle JRF - 11.1.1.0[oracle_common], and complete the wizard.

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.

Delay when redeploying app using wls datasource (12796317)

A redeployment of an ADF BC web application is delayed for 60 seconds because of a wait time for the datasource to be removed. This is a performance regression compared to previous JDeveloper versions because of a change in the ADF BC layer to use WLS datasources - which is a best practice.

Web Services Development

Deployment fails when deploying a JAX-WS RI web service to a Glassfish server (14629256)

When you attempt to deploy a JAX-WS RI web services EAR or WAR file created using JDeveloper to Glassfish server, the deployment will fail.

To work around this issue, perform one of the following steps:

  • If your web service requires the web.xml file to support advanced capabilities, such as securing with basic authentication, then:
    • Edit the web.xml file to delete the entry for the oracle.adf.share.glassfish.listener.ADFGlassFishAppLifeCycleListener lifecycle listener, which is not required.
    • Delete the sun-jaxws.xml file.
  • Delete the web.xml file (if it is not required to support advanced capabilities).

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> 

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
{
 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:

  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.

Running TopLink DBWS secured with OWSM policies that require a keystore fails (10229986)

It is not possible to run a Toplink database web service provider secured with an OWSM policy that requires a keystore. There is likely to be a XML read error thrown from the OWSM layer on the server side. Though there is no workaround for this specific issue, securing the provider service with a simple username token policy that does not rely on a keystore for credentials would make it work.

Policy not enforced on a provider service with no WSDL

For a web service provider with no WSDL associated with it, any policy attachments on it are not enforced by the server.

In order to warn the user from deploying such a service, JDeveloper puts up a warning on the code editor when such a scenario is detected. The workaround for this problem is to keep a WSDL for the provider service and attach it to the service using the 'wsdlLocation' annotation parameter.

Failure to PUT or POST to a Jersey REST Service co-located in a project with ADF components (12542672)

You might notice a "{{org.xml.sax.SAXNotRecognizedException: http://javax.xml.XMLConstants/feature/secure-processing}}" exception when using the PUT or POST operation on a Jersey resource that is co-located in an application that contains any ADF components or any project that overrides the default XML parser to use the one that is part of the XDK. This is caused by WLS bug 12543845 where an invalid configuration property is store and causes all further XML parser instances to fail.

The workaround is to disable the part of Jersey that sets this proper with a servlet init param:


<servlet>
 <servlet-name>jersey</servlet-name>
 <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
 <init-param>
 <param-name>com.sun.jersey.config.feature.DisableXmlSecurity</param-name>
 <param-value>true</param-value>
 </init-param>
 <load-on-startup>1</load-on-startup>
 </servlet>

This should only be applied if the user knows for sure they are using the XDK otherwise this will open up a possible security whole.

JAX-RPC web service design-time support now deprecated

With the deprecation of JAX-RPC in the Java EE 6 platform, this will be the last major JDeveloper release (ie the 11g release set) where the generation of a JAX-RPC style web service will be supported in the JDeveloper web service design time. Therefor, in the next major release set (currently scheduled to be 12c), the JAX-WS and JAX-RS standards will be the web service standards supported by the JDeveloper web services design-time and there will be no support for the generation of web services that conform to the JAX-RPC standard.

Cannot create data control metadata over web service method parameters and returns (12433980)

When creating a web service on an EJB session bean, you must manually update the parameter name and return name annotations with the type before generating the associated WSDL file to add to the project.

By default, the @WebParam name is set to "arg#", and the return type is not generated in the annotation. Before you generate the WSDL file, you must do the following for each method:

  • Change the name value of the @WebParam to the appropriate parameter type name.
  • Prepend the name value of the @WebResult to the method's generated return type.

For example, say you created a web service method with the following annotation:


@WebMethod
public Employee getManager(@WebParam(name = "arg0") Departments dept) {...}

You would need to manually edited the method to look like this:


@WebMethod
public @WebResult(name="Employee") Employee getManager(@WebParam(name="Departments") Departments dept) {...}

Note that this workaround does not work with methods that have multiple parameters of the same type, or if the underlying artifacts (EJB, XSD) are not local to the project.

java.lang.illegalstateexception: sslcontextimpl is not initialized after migration from PSx (12660729)

If you are upgrading from PS5 or another release of JDeveloper you may find exceptions of the following form when using code that accesses https connection or configures code that might access network connections.


java.lang.IllegalStateException: SSLContextImpl is not initialized
&nbsp;&nbsp;&nbsp;&nbsp; at
com.sun.net.ssl.internal.ssl.SSLContextImpl.engineGetSocketFactory
(SSLContextImpl.java:145)
&nbsp;&nbsp;&nbsp;&nbsp; at javax.net.ssl.SSLContext.getSocketFactory(SSLContext.java:260)
&nbsp;&nbsp;&nbsp;&nbsp; at
oracle.jdevimpl.credential.LazySSLContextSpi.engineGetSocketFactory
(LazySSLContextSpi.java:67)
&nbsp;&nbsp;&nbsp;&nbsp; at javax.net.ssl.SSLContext.getSocketFactory(SSLContext.java:260)
&nbsp;&nbsp;&nbsp;&nbsp; at

This is generally caused because the user has altered the default HTTPS settings, probably the trust store, to point to a certificate file that no longer exists. (In the cases we have seen this is because they point to the cacerts file from a previous install that has been removed)

You can resolve this problem by resetting the HTTPS settings in Tools->Preferences->Credentials->HTTPS Credentials->Default. A tool restart might be required.

Cannot run EJB @Stateless Web Service Provider (Bug 12896076)

You will find that a @WebServiceProvider that is also a EJB @Stateless object will fail to start up properly and it will fail with the following error.


<Aug 19, 2011 3:20:45 PM IST> <Error> <HTTP> <BEA-101020>
<[ServletContext@32421865[app:Application2
module:/Application2-Project1-webapp path:/Application2-Project1-webapp
spec-version:null]] Servlet failed with Exception
java.lang.NullPointerException
at weblogic.wsee.jaxws.WLSServletAdapter.publishWSDL(WLSServletAdapter.java:239)
at weblogic.wsee.jaxws.WLSServletAdapter.handle(WLSServletAdapter.java:166)
at weblogic.wsee.jaxws.HttpServletAdapter.get(HttpServletAdapter.java:193)
at weblogic.wsee.jaxws.JAXWSServlet.doRequest(JAXWSServlet.java:93)
at weblogic.servlet.http.AbstractAsyncServlet.service(AbstractAsyncServlet.java:99)
Truncated. see log file for complete stacktrace

Web Service generation only supported with JDK6 (Bug 13252751)

As with the WLS Integrated Server that is bundled with this release of JDeveloper (which can only run with JDK6) the web service generation support in this release of JDeveloper is also tied to JDK6 and cannot support generation under JDK7. This is because the stack we use to generate web service artifacts, via the wsimport and wsgen functionality, is tied to the version of the annotation processor tool (APT) in the WLS stack provided in this JDeveloper release which is tightly bound to the JDK6 versions of these generation interfaces.

ADF Essentials and GlassFish Deployment

ADF Essentials Limitations

ADF Essentials is a functional subset of the Oracle Application Development Framework. It is limited in two ways: 1) Certain components of ADF are not permitted under the ADF Essentials license, and 2) There are technical limitations and features that are not supported on GlassFish. For the first category of restrictions, please review the ADF Essentials license, and the list of components.

The additional following feature restrictions apply for ADF Essentials on GlassFish:

  • Data Controls for BI, EssBase, BAM and any other Fusion Middleware integration components. The following Data Controls are supported: ADF Business Components, Bean/EJB, URL (REST)
  • Web Service Data Control. Workaround is to generate a proxy class for the Web service and use the Bean Data Control on the proxy.
  • SOA, OER, BAM, WebCenter Integration.
  • ADF Business Components Service interfaces (exposing ADF BC as Web services) and Business Components events.
  • High Availability and Clustering
  • Active Data Services function only in "poll" mode, not push.

Runtime messages in log file for ADF Essentials applications on GlassFish

The following messages are known to be generated to the GlassFish log file. They can be safely ignored.

  • Service entry 'org.glassfish.faces.integration.GlassFishInjectionProvider' does not extend DiscoverableInjectionProvider.  Entry will be ignored.  (14632049)
  • Ignoring feature-dependency on feature "AdfDvtCommon".  No such feature exists. (14632046)
  • Unsupported deployment descriptors element %% ( 14632045)
  • Error in annotation processing: java.lang.NoClassDefFoundError: weblogic/servlet/http/AbstractAsyncServlet (14632042)

oracle.jrf.unknownplatformexception: jrf is unable to determine the current application (14631409)

Oracle plans to provide a fix for these exceptions in the log file. This document will be updated with the patch information when available.

Running out of memory when deploying to GlassFish from JDeveloper ( 14197906)

If you run out of memory during deployment to GlassFish from JDeveloper, please check the following:

  1. Increase memory for JDeveloper and GlassFish to 784MB and 512MB respectively.
  2. Shutdown, restart JDeveloper and retry deployment
  3. Use JDeveloper to generate the EAR, then use GlassFish's ASADMIN tool or console to deploy.
  4. Use JDeveloper to generate the EAR, then use GlassFish's ASADMIN tool or console to deploy. Furthermore, it is recommended to have no more than one WebApplication (WAR) per EAR deployment. Currently, JDeveloper packages all the necessary ADF Essentials war-level libraries for each WAR in the EAR deployment, leading to substantial duplication when there is more than one WAR.

Installing ADF Essentials into GlassFish Server

If you are installing ADF Essentials for GlassFish Server, after you have downloaded the adf-essential.zip file from OTN, you should unzip it into a temporary directory with a flat directory structure. For instance you can use the -j option for unzip:


unzip -j <file> -d <destination>

Deploying Applications to GlassFish Server

If you are deploying ADF applications to GlassFish Server, you no longer need to include the ADF Faces Runtime 11, JSTL 1.2, ADFm, ADFc, or ADFv libraries to the WAR deployment profile. That is, during the creation of the WAR deployment profile in JDeveloper, you do not need to select these libraries when they are presented in the WEB-INF/lib/Contributors panel of the Edit WAR Deployment Profile Properties dialog. These libraries will be automatically added to the generated EAR and WAR files when the application deployment target is GlassFish. This is improperly documented in the ADF Web Developer's Guide.

ADF Desktop Integration

Known Limitations on changing ADFdi components at runtime

  • 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. Subsequent edits to cells in the moved column do not mark the row as changed.

Using a variableUsage Element Causes Null Pointer Exception in ADFdi Remote Servlet

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

  • If the end user displays a web page from a Dialog action and then allows the web app session to timeout, there may be a loss of necessary context if the server renews the session automatically. In such cases, Table.RowDownSync may not produce the expected result. (bug 9718945) Workaround: 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

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

  • Empty forms (bug 8651633, bug 8651645)

    An Excel form cannot be configured to use ADF List of Values components which use model-driven list bindings if the form's bound iterator is expected to contain zero rows. Workaround: configure the ADF List of Values component to use a "dynamic" list binding instead.

Known Issues with SSL

  • Integrated Excel Workbooks and HTTPS (bug 7117108)

    Attempts to connect to a web application from an integrated Excel workbook over HTTPS may result in an error if the certificate is not present on the client machine.

    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.

  • Login dialog flashes briefly for web app w/no authentication but using https (bug 9536914)
  • 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 the Read-only Table Component

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

  • 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.

Known issues at design-time

  • Deleting cells. If the developer deletes a cell adjacent to the cell containing an ADF component and shifts that cell into the position of the deleted cell, ADFdi offers to delete the component. (bug 9737702)

Migrating from previous releases of Oracle ADF 11g

  • ADFdi Shared Libraries. Starting in 11.1.1.4.0, ADFdi server components are delivered as part of the "JRF" and no longer need to be included explicitly in your web application. If you are creating new WLS domains using 11.1.2.0.0, the ADFdi shared libraries are included automatically. However, if you have already created your WLS domain using 11.1.1.3.0, you will need to perform a special step to upgrade that domain. For example, running the WLST command "updateJRF()". See 'Updating Fusion Middleware Shared Libraries' in the 'Oracle Fusion Middleware Patching Guide': link: http://fmwdocs.us.oracle.com/doclibs/fmw/E10285_01/doc.1111/e16793/patch_set_installer.htm#CHDFICBF
  • Cannot upload saved changes from 11.1.1.3.0 workbook after migration to 11.1.2.0.0 (bug 10358830)

    Solution: Prior to upgrading from 11.1.1.3.0 to 11.1.2.0.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. Note: if your workbooks were already migrated from 11.1.1.3.0 to a later 11.1.1* release, this note no longer applies.

  • Workbook Migration

    If you wish to use integrated workbooks created using 11.1.1.3.0 or earlier with ADFdi 11.1.2.0.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. Note: if your workbooks were already migrated from 11.1.1.3.0 to a later 11.1.1* release, this note no longer applies.

    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.2.0.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:

    1. Install the new ADFdi client
    2. Create a backup copy of the design-time version of your workbook
    3. Open the design-time version of your workbook
    4. Dismiss any error dialogs if the old client has been uninstalled
    5. When prompted to migrate, click "Yes"
    6. Test your workbook: review/adjust the column widths of your table's Changed and Flagged columns; review the runtime ribbon tab contents; adjust any labels as desired.
    7. Publish your workbook
    8. Repeat this process for each integrated workbook in your application

      Note: a migrated workbook can no longer be used with the 11.1.1.3.0 client.

  • Automatic client upgrade from 11.1.1.4.0 (bug 12381232)

    In general, it is possible to upgrade the ADFdi client software by placing the new installer on top of the old installer (typically located on a shared file server). The next day, when the end users open Excel, the add-in self-upgrades. Due to an installer name change, this self-upgrade does not work properly when upgrading from 11.1.1.4.0 to 11.1.2.0.0. Workaround: uninstall the client from Windows' Add/Remove Programs control panel and then run the installer for the new version.

ADF Faces and Data Visualization Runtime

ADF Faces Runtime

  • Browser specific bugs

    See the browser specific bugs listed in the Supported Platforms section.

  • 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 dir. 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.

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

    This error happens due to bug http://bugs.sun.com/view_bug.do?bug_id=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

  • 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) 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.

  • Primary Keys from Model (6894412)

    In previous releases, ADF Faces components expect applications to use primary keys on the model data objects that are pre-populated for new records and do not change with any record updates. This limitation has been removed from the current release except for the case where the affected row is not in UI range while its key is changed programatically in a backing bean.

  • 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 app and New Window Detection (8677612)

    New Window Detection logic only works in Rich Client applications, but not in Trinidad appliations. 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

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

    • The Total/Subtotal rows of the table are not bold in Outlook (8554509). The application developer would need to define the bold style directly on their outputText.
    • 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 (8827678). You need to set the width attribute on the af:column components.
  • 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 (8809021)

    Because of a limitation in the IE userData persistence behavior (see Supported Platforms section for details), 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.

  • 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.

  • Calendar Binding data type support

    Due to the lack of support in model to convert data of type java.util.Date to java.sql.Date, a runtime error will occur if java.sql.Date is specified as NDType in the calendar page definition file. Please use the supported types instead:

    • oracle.jbo.domain.Timestamp
    • oracle.jbo.domain.Date
    • java.sql.Timestamp
    • java.util.Date

  • User Specified Window Names

    In this release we start to support user specified window names. A user can launch a window and give it a name, and we will continue to use that name if it's valid. Currently the supported character set for window name is : [a-z][A-Z][0-9]_

  • Skinned Icons Resize (10058868)

    Until recently there were limitations with skinning icons that -tr-rule-ref and -tr-inhibit were not supported. Further, the skin properties were not inherited from base skin for icon selectors. We fixed these limitations to make the icon selector behavior consistent with general skinning style selectors. Now that we inherit the skin properties for icons, if there were 'content' and other properties like 'width' and 'height' set, and you override just the 'content' property in your custom skin, you would inherit the 'width' and 'height' from the base skin. While this is a change in behavior, it is a change in right direction. If this behavior is not desirable, skinners can use -tr-inhibit to inhibit some properties or 'tr-inhibit: all' to inhibit all properties before overriding the 'content' property.

  • 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.

  • RichText Editor Error Messages (11686814)

    It is recommended that the application developer add a validation rule for situations where the Error Message returned by the RichText Editor would include the text contained in the RichText Editor and that text may be large enough to not be properly displayed by the browser.

  • Facelets Applications Will Lose State After Failover (12382285)

    Due to the issue in Jthe SF reference implementation (2048), Facelets applications running in clustered environments will lose state after failover. End users experiencing error messages after faiover should be advised to refresh the page.

  • convertDateTime may not work with pattern "MMM" on Websphere Application Server (WAS)

    On IBM JDK deployments (WAS), date patterns which contain 3 or more letters for the month, e.g. 'MMM' may fail, e.g. on locale 'zh_HK' it fails with a Javascript parse error even though the user has not modified the value. This is tracked as bug 14088506.

  • Client NumberConverter does not work with tr_TR locale and type=percent

    In Turkish (tr_TR) locale, numberConverters with type=percent do not allow users to enter a number, but will throw a Javascript error even if the input is valid. This is tracked as bug 13006484.

  • Client DateTimeConverter does not work with dateStyle=full and locales th_TH or ja_JP_JP

    When the dateTimeConverter is used with dateStyle=full or locale=th_TH or ja_JP_JP, there will be a Javascript error thrown even though the date is valid. This is tracked as bug 12861287

ADF Data Visualizations Runtime

ADF DVT Graph and Gauge

  • Graph and Gauge now support HTML5 output format. A new web.xml context parameter oracle.adf.view.rich.dvt.DEFAULT_IMAGE_FORMAT was introduced to allow application developers to use the HTML5 output format. Valid values for this parameter are HTML5 and FLASH. Applications that have this context parameter and haven't specified image format, would automatically default to HTML5. For the applications that do not have this context parameter, the default rendering for Graph and Gauge would be Flash.
  • imageFormat attribute is now deprecated. Applications are recommended to enable HTML5 using the web.xml context parameter and to remove usages of the image format attribute.
  • Application developers are advised to use the flash-player-usage parameter in adf-config.xml to disable Flash usage if needed.
  • Text in bidirectional locales sometimes does not render correctly in Flash when using Google Chrome browser. The workaround is to use HTML5 rendering for Graph and Gauge. (14512792)

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)
  • Size column of editable pivot table misfunctioning in Chrome 10 (11901316)
  • Leading zeros are not carried from the pivot table to exported Excel (9927815)
  • Pivot Table support for RTL (right to left) languages, such as Arabic or Hebrew, is only available with Internet Explorer 7, 8, and 9. (15948117)

ADF DVT Pivot Filter Bar

  • JAWS tabbing through the PivotFilterBar incorrectly reads the URL (8777349)

ADF DVT Gantt Chart

  • 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)
  • Issue when zoom using scroll wheel using Safari browser, CTRL-Scroll wheel is reserved for Browser font resizing (8684652)
  • Time value in tooltip of DataChangeListener incorrectly calculated (9868647)
  • Scheduling Gantt resource region sometimes displays "Warning: no row header found" (11735740)
  • Scheduling Gantt: snap to operation leaves a couple of pixels between tasks (11901244)
  • When using the feature demo "Gantt as a Drop Target", if a user drops a row from a table on a Gantt border or in an empty area there is an error. The workaround is for developer to check if the drop target row key is null. (14556776)
  • Gantt Chart support for RTL (right to left) languages, such as Arabic or Hebrew, is only available with Internet Explorer 7, 8, and 9. (18322136)

ADF DVT Hierarchy Viewer

  • Hierarchy Viewer fails to display when rangesize is set to -1 for iterator. (12410836)

ADF DVT Geographic Map

  • <dvt:numberFormat> tag is now deprecated. Developers should use the standard Trinidad converted tags, e.g. <af:convertNumber>.

ADF DVT Thematic Map

  • Thematic Map now supports rendering in HTML5 on mobile devices.  In desktop ADF applications, Thematic Map will continue to render in Flash by default. (14546608)

ADF Faces and Data Visualization Design-Time

ADF DVT Databinding and Design Time

  • 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)
  • Live data preview in the DVT Graph, Gauge, and Pivot Table binding dialogs is not available during design time if component is bound to a POJO Data Control. (12399848)
  • Binding a DVT Gauge and DVT Gauge Set to the exact same rowset iterator can lead to unpredictable results at runtime. To work around this issue, the Gauge and Gauge Set should be data bound to separate collections. (10318124)
  • Automatic partial page rendering for single data-bound Gauges does not work consistently. To work around this issue, configure partialTriggers on the Gauge instance. (12591644)

ADF Mobile

ADF Mobile Version #11.1.2.4.39.64.69 (Jun 2014)

This is a minor patch release which contains some fixes for certain issues reported by customers. These are previously unpublished bugs. Other than the bugs fixed below, the known issues from version #11.1.2.4.39.64.62 (Jan 2014) still apply to this version.

Bugs fixed in this release:

Bug Number Description
18812172 ADF Mobile application hangs with an error "FAILED TO LOAD JS FILE : JS/AMX.JS"
18673237 SSL Invocation of E-Business Suite REST services from RestServiceAdapter fails
18673253 'Accept-Language' header is not set in the login request in Android
17934748 ADF Mobile Framework is inserting stale login cookie

ADF Mobile Version #11.1.2.4.39.64.68 (May 2014)

This is a minor patch release which adds XCode 5.1.1 support and fixes some customer reported and previously unpublished bugs. Other than the bugs fixed below, the known issues from version #11.1.2.4.39.64.62 (Jan 2014) still apply to this version.

Bugs fixed in this release:

Bug Number Description
18323509 Broken images in Android are not obvious and are tiny. This makes it difficult for developers to find issues related to images on the amx pages
18631879 After upgrading to ADF mobile 1.1 patch 6, the pages are larger than the phone screen, the footer is partially outside and the buttons are hidden.
18728369 InputDate component behaves differently on iOS7.1 and iOS6
17647885 Error occurs while returning to default login page from Android home

ADF Mobile Version #11.1.2.4.39.64.62 (Jan 2014)

Issue  #18205905  (Applies to Android & iOS)

Description: Within a amx:panelPage component, when a 'rendered' attribute is set to 'false' (rendered=false), the application hangs.

Workaround: Instead of using an EL Expression (shown in Example 1 below) to check if the 'rendered' attribute is set to false or not, use Example 2. Example 1 :


<amx:commandButton id="cb1" action="__back" text="Back" rendered="#{foo.isRendered}"/>
Example 2 :

<amx:commandButton id="cb1" action="__back" text="Back" inlineStyle="#{button.isRendered ? ' ' : 'display:none;'}"/> 

Issue  #18072452  (Applies to Android)

Description: ADF Mobile applications do not run on Android 4.4

Workaround: None

Issue  #16564088  (Applies to Android)

Description: Springboard is available at RT even after Springboard "none" option is selected in adfmf-application.xml

Workaround: None

Issue  #16519992  (Applies to Android & iOS)

Description: resetFeature() CALL FROM UNSECURED TO SECURED FEATURE CAUSES THE APP TO BECOME UN-RESPONSEIVE

Workaround: None

Issue  #16581777  (Applies to Android & iOS)

Description: Configuration Service Login dialog does not display the URL configured in the application settings. When the Configuration Service URL is changed in Settings, the Configuration Service login dialog does not reflect the changed URL. The last successful URL will be retained in the login screen.

Workaround: Use Configuration Service login screen to change the URL.

Issue  #16579089  (Applies to Android)

Description: InputText used in a ListView looses focus and doesn't allow user to enter any values.

Workaround: None

Issue  #16447100  (Applies to Android & iOS)

Description: Using DeviceManager.startUpdatingPosition in Feature/Application Lifecycle listener makes the App un-responsive.

Workaround: Move the code out of the Lifefcycle Listener to a Java Bean.

Issue  #16599449  (Applies to Android & iOS)

Description: When 'load more' is used to add more rows to ListView, refreshing the ListView does not reset the content size to it's range size.

Workaround: None

Issue  #16571208  (Applies to Android)

Description: When SelectManyChoice component in READONLY state the TEXT inside PFL is not visible.

Workaround: None

Issue  #16509180  (Applies to Android)

Description: SOAP Web service access on Android in debug mode is very slow

Workaround: Use release mode.

Issue  #16509180  (Applies to Android)

Description: When Android min API level is set to 15, Springboard toggle button is not displayed

Workaround: Set min API level to 9.

Issue  #16318361  (Applies to Android & iOS)

Description: Enabling security on custom Springboard causes errors.


 Workaround: Enable Application level login using the following property: 
 <adf:adf-properties-child xmlns="http://xmlns.oracle.com/adf/config/properties">
     <adf-property name="show-application-login-at-startup" value="true"/>
 </adf:adf-properties-child>

Issue  #16277207  (Applies to Android & iOS)

Description: The 'labelDisplay' attribute on DVT Gauge components is deprecated.

Workaround: Developers should use 'rendered' attribute of the child <dvtm:metricLabel> tag instead.

Issue  #16271427  (Applies to Android & iOS)

Description: watchId parameter on DeviceManager.startUpdatingPosition API is ignored.

Workaround: Use the unique watchId returned by the API.

Issue  #16237543  (Applies to Android & iOS)

Description: Help does not work on Create Data Layer dialog for Thematic Map component in design time.

Workaround: Use the ThematicMap component Tag documentation.

Issue  #16229129  (Applies to iOS)

Description: Application crashes when deployed to iOS device with java.debug.enabled=true preventing remote debugging of App when deployed to a device.

Workaround: 1. In JDeveloper, edit cvm.properties for debugging, i.e, let java.debug.enabled=true 2. Create a deployment profile for iOS 3. Deploy to "iTunes" or "distribution package"  4. Open the temporary XCode project  created in Xcode  5. Attach your device and run the project from xcode. 6. Attach jdev debugger when the app appears hung.

Issue  #16187709  (Applies to Android)

Description: RTL language support is not available on Android.

Workaround: None

Issue  #16049000  (Applies to Android & iOS)

Description: When statusMeterGauge is used inside a panelSplitter's panelItem, the component is not rendered when you access another panelItem and return to the panelItem with the statusMeterGauge.  

Workaround: Set explicit width and height on statusMeterGauge component using inlineStyle attribute. Examples:


  inlineStyle="height:30px; width:160px;" 

   or


  inlineStyle="height:30px; width:#{deviceScope.hardware.screen.availableWidth / 3}px;"

Issue  #16032518  (Applies to Android & iOS)

Description: External libraries at the application and project level are not handled properly when mobile application archive (maa) file is created.

Workaround: Developer should manually update the location of these libraries in the jws and jpr files created from the maa file.

Issue  #14808528  (Applies to Android & iOS)

Description: Setting image URI in css file to the location in the project file does not work.

Workaround: Image URI should be set to the actual location in the deploy directory. Example: ../FARs/ViewController/public_html/images/myimage.png  This path can be obtained by looking at the location of the image in the deploy folder.

Issue  #14746310  (Applies to Android 2.3.X )

Description: In certain scenarios, on Android devices the virtual keyboard covers the input filed to be updated and doesn't allow the page to be scrolled to view the field.

Workaround: none

Issue  #14233757  (Applies to Android & iOS)

Description: Scope variables with the names "data" and "bindings" are not be supported.

Workaround: Use a different unique name for the scope variables

Issue  #14198731  (Applies to Android & iOS)

Description: .svn folders are packaged with mobile app and maa file  when default deployment profile is used.

Workaround: Use deploy profile options to filter out .svn folders from getting packaged during deployment.

Issue  #16673378  (Applies to Android & iOS)

Description: Navigation to a page takes longer when animation is turned on for charts, gauges and other DVT components and animation is enabled during navigation.

Workaround: Change the animationOnDisplay="none" from "auto" on the Chart and Gauge components.

Issue  #16538214  (Applies to Android & iOS)

Description: Improve AMX page navigation response times.

Workaround: You can increase page navigation performance in the application by changing the app to do page transitions before it renders the new page by setting the following property in adf.config.xml.


<adf-property name="amxTransitionMode" value="placeholder"/>

Issue  #16667510  (Applies to Android & iOS)

Description: NullPointerException thrown when loadMore rows is clicked in Listview when logging level is set to FINEST in logging.properties

Workaround: Change the logging level to SEVERE

Issue  #16752428  (Applies to Android & iOS)

Description: Device properties can not be accessed from with in the Application LifeCycleListener. Using #{deviceScope.device.xx} or DeviceManager.getXX() API in Application LifeCycleListener will result in an error.

Workaround: Device properties can be accessed in Feature LifeCycleListener or in ManagedBeans or through EL in amx pages. For Push Notification scenario which requires access to "device.os" property in Application LifeCycleListener, one can use System.getProperty("os.name") to distinguish between iOS and Android.

Issue: 16829651

Applies To: iOS

Description: On iOS, the feature becomes black and does not show any content from the remote URL.

Work Around: On adding the same remote URL (from connections.xml) to whitelist, the application works fine on iOS.

Issue: 16815546

Description: Restricting deployment profile to certain orientations is not respected at run time.

Issue: 16605066

Applies To: iOS

Description: Application crashes while trying to load more data using pagination.

Issue: 16600489

Applies To: iOS

Description: While using the DeviceManager API to capture a picture multiple times, the application shuts down.

Work Around: Limit the size of pictures taken by providing meaningful quality and size values when working on a low memory device with a high resolution camera (mostly the iPad mini).

Issue: 16837655

Applies To: Android

Description: Deployment issue due to the change in the Android SDK and the location of aapt executable.

Work Around: Quick workaround is to copy all the following files / directories Copy from <sdk>/build-tools/android-4.2.2 to <sdk>/platform-tools:

  1. * aapt.exe(on windows) OR aapt(on Mac)
  2. * dx.bat(on windows) OR dx(on Mac)
  3. * /lib folder

Issue: 16776126

Applies To: iOS and Android

Description: firePropertyChange method does not update the panel in the panel splitter.

Issue: 16757933

Applies To: iOS

Description: HR sample application throws an error while editing an employee profile.

Issue: 16668798

Applies To: iOS

Description: Events to refresh the provider on certain occasions are not in sync with the view of the data provider.

Issue: 16374398

Applies To: iOS

Description: On swiping left within the panelItem, the page scrolls up.

Work Around:

  1. Step1:Set styleClass="adfm-limited-scrolling" on the root component of the page which has the issue
  2. Step2:Set styleClass="adfm-scrollable" on all the components which need scrolling ON.

Issue: 17482434

Applies To: iOS 7

Description: amx inputDate component with type="datetime" is not supported on iOS 7. The date field is rendered as a text field instead of a date picker when type="datetime" on iOS 7.

Work Around: Developers would have to add two inputDate fields, one with type="date" and another with "time" and combine these values to get the date & time value.

Issue: 16075764

Applies To: Android

Description: Proper error message is not displayed when invalid Login URL is configured in a ADF Mobile application.

Work Around: Configure proper Login URL and re-deploy the application

ADF Mobile Version #11.1.2.4.39.64.51 (Oct 2013)

Issue  #16564088  (Applies to Android)

Description: Springboard is available at RT even after Springboard "none" option is selected in adfmf-application.xml

Workaround: None

Issue  #16519992  (Applies to Android & iOS)

Description: resetFeature() CALL FROM UNSECURED TO SECURED FEATURE CAUSES THE APP TO BECOME UN-RESPONSEIVE

Workaround: None

Issue  #16600130  (Applies to iOS)

Description: When an attachment is opened in landscape orientation the attachment does not take up all the available space, there is a gap on the left side.

Workaround: Change the orientation to portrait and return back to landscape mode.

Issue  #16581777  (Applies to Android & iOS)

Description: Configuration Service Login dialog does not display the URL configured in the application settings. When the Configuration Service URL is changed in Settings, the Configuration Service login dialog does not reflect the changed URL. The last successful URL will be retained in the login screen.

Workaround: Use Configuration Service login screen to change the URL.

Issue  #16579089  (Applies to Android)

Description: InputText used in a ListView looses focus and doesn't allow user to enter any values.

Workaround: None

Issue  #16576295  (Applies to Android)

Description: SECURITYCONTEXT.USENAME does not return proper value when used in Feature LifeCycle Listener deActivate method.

Workaround: None

Issue  #16482568  (Applies to Android & iOS)

Description: When "include login server cookie in REST calls" option is used, the cookie obtained from the login server is not propagated with REST service calls from the JVM.

Workaround: Use remote authentication for the feature using the REST services that require cookie propagation.

Issue  #16442155  (Applies to Android)

Description: Disabling screen rotation is not honored on Android

Workaround: None

Issue  #16447100  (Applies to Android & iOS)

Description: Using DeviceManager.startUpdatingPosition in Feature/Application Lifecycle listener makes the App un-responsive.

Workaround: Move the code out of the Lifefcycle Listener to a Java Bean.

Issue  #16599449  (Applies to Android & iOS)

Description: When 'load more' is used to add more rows to ListView, refreshing the ListView does not reset the content size to it's range size.

Workaround: None

Issue  #16571208  (Applies to Android)

Description: When SelectManyChoice component in READONLY state the TEXT inside PFL is not visible.

Workaround: None

Issue  #16509180  (Applies to Android)

Description: SOAP Web service access on Android in debug mode is very slow

Workaround: Use release mode.

Issue  #16509180  (Applies to Android)

Description: When Android min API level is set to 15, Springboard toggle button is not displayed

Workaround: Set min API level to 9.

Issue  #16318361  (Applies to Android & iOS)

Description: Enabling security on custom Springboard causes errors.


 Workaround: Enable Application level login using the following property: 
 <adf:adf-properties-child xmlns="http://xmlns.oracle.com/adf/config/properties">
     <adf-property name="show-application-login-at-startup" value="true"/>
 </adf:adf-properties-child>

Issue  #16277207  (Applies to Android & iOS)

Description: The 'labelDisplay' attribute on DVT Gauge components is deprecated.

Workaround: Developers should use 'rendered' attribute of the child <dvtm:metricLabel> tag instead.

Issue  #16271427  (Applies to Android & iOS)

Description: watchId parameter on DeviceManager.startUpdatingPosition API is ignored.

Workaround: Use the unique watchId returned by the API.

Issue  #16237543  (Applies to Android & iOS)

Description: Help does not work on Create Data Layer dialog for Thematic Map component in design time.

Workaround: Use the ThematicMap component Tag documentation.

Issue  #16229129  (Applies to iOS)

Description: Application crashes when deployed to iOS device with java.debug.enabled=true preventing remote debugging of App when deployed to a device.

Workaround: 1. In JDeveloper, edit cvm.properties for debugging, i.e, let java.debug.enabled=true 2. Create a deployment profile for iOS 3. Deploy to "iTunes" or "distribution package"  4. Open the temporary XCode project  created in Xcode  5. Attach your device and run the project from xcode. 6. Attach jdev debugger when the app appears hung.

Issue  #16187709  (Applies to Android)

Description: RTL language support is not available on Android.

Workaround: None

Issue  #16049000  (Applies to Android & iOS)

Description: When statusMeterGauge is used inside a panelSplitter's panelItem, the component is not rendered when you access another panelItem and return to the panelItem with the statusMeterGauge.  

Workaround: Set explicit width and height on statusMeterGauge component using inlineStyle attribute. Examples:


  inlineStyle="height:30px; width:160px;" 

   or


  inlineStyle="height:30px; width:#{deviceScope.hardware.screen.availableWidth / 3}px;"

Issue  #16032518  (Applies to Android & iOS)

Description: External libraries at the application and project level are not handled properly when mobile application archive (maa) file is created.

Workaround: Developer should manually update the location of these libraries in the jws and jpr files created from the maa file.

Issue  #14808528  (Applies to Android & iOS)

Description: Setting image URI in css file to the location in the project file does not work.

Workaround: Image URI should be set to the actual location in the deploy directory. Example: ../FARs/ViewController/public_html/images/myimage.png  This path can be obtained by looking at the location of the image in the deploy folder.

Issue  #14746310  (Applies to Android 2.3.X )

Description: In certain scenarios, on Android devices the virtual keyboard covers the input filed to be updated and doesn't allow the page to be scrolled to view the field.

Workaround: none

Issue  #14233757  (Applies to Android & iOS)

Description: Scope variables with the names "data" and "bindings" are not be supported.

Workaround: Use a different unique name for the scope variables

Issue  #14198731  (Applies to Android & iOS)

Description: .svn folders are packaged with mobile app and maa file  when default deployment profile is used.

Workaround: Use deploy profile options to filter out .svn folders from getting packaged during deployment.

Issue  #16673378  (Applies to Android & iOS)

Description: Navigation to a page takes longer when animation is turned on for charts, gauges and other DVT components and animation is enabled during navigation.

Workaround: Change the animationOnDisplay="none" from "auto" on the Chart and Gauge components.

Issue  #16674593  (Applies to Mac OSX 10.8.x (Mountain Lion))

Description: APPLICATION LOGS ARE NOT DISPLAYED IN CONSOLE ON OS X MOUNTAIN LION

Workaround: Application logs are available in application.log file available in iOS Simulator applications folder at /Users/<userid>/Library/Application Support/iPhone Simulator/6.0/Applications/<AppID>/Documents/logs/application.log

Issue  #16538214  (Applies to Android & iOS)

Description: Improve AMX page navigation response times.

Workaround: You can increase page navigation performance in the application by changing the app to do page transitions before it renders the new page by setting the following property in adf.config.xml.


<adf-property name="amxTransitionMode" value="placeholder"/>

Issue  #16667510  (Applies to Android & iOS)

Description: NullPointerException thrown when loadMore rows is clicked in Listview when logging level is set to FINEST in logging.properties

Workaround: Change the logging level to SEVERE

Issue  #16711612  (Applies to Android)

Description: When HTTP based external URL is launched using amx:goLink component, the URL is launched in external browser window even after the URL's domain is added to the white list configuration.

Workaround: None

Issue  #16717902  (Applies to Android)

Description: When a new connections.xml is downloaded using Configuration service, the end points in the new connections.xml are not added to the application white list. As a result, login URL, remote URL and other end points may not be accessible or launched in an external browser.

Workaround: Update connections.xml end points in the App and re-deploy the application.

Issue  #16667510  (Applies to Android & iOS)

Description: NullPointerException thrown when loadMore rows is clicked in Listview when logging level is set to FINEST in logging.properties

Workaround: Change the logging level to SEVERE

Issue  #16752428  (Applies to Android & iOS)

Description: Device properties can not be accessed from with in the Application LifeCycleListener. Using #{deviceScope.device.xx} or DeviceManager.getXX() API in Application LifeCycleListener will result in an error.

Workaround: Device properties can be accessed in Feature LifeCycleListener or in ManagedBeans or through EL in amx pages. For Push Notification scenario which requires access to "device.os" property in Application LifeCycleListener, one can use System.getProperty("os.name") to distinguish between iOS and Android.

Issue: 16829651

Applies To: iOS

Description: On iOS, the feature becomes black and does not show any content from the remote URL.

Work Around: On adding the same remote URL (from connections.xml) to whitelist, the application works fine on iOS.

Issue: 16823703

Applies To: iOS

Description: Application's release mode prevents page from scrolling. This particularly happens while using Gauge compoents.

Work Around: Add this after the last Gauge component <amx:spacer width=""1"" height=""1""/>

Issue: 16815546

Description: Restricting deployment profile to certain orientations is not respected at run time.

Issue: 16796230

Applies To: iOS

Description: When Cordova's Audio Capture API is used on iOS, the Done button within the navigation no longer functions . The user cannot dismiss the audio capture UI.

Issue: 16764133

Applies To: Android

Description: Springboard shows duplicate entries for all features

Issue: 16678969

Applies To: Android

Description: On certain occasions when the Android application is launched from the background, it shows an error ("onDeviceReady() ERROR: ReferenceError: adfmf is not @ defined") in a popup.

Issue: 16605066

Applies To: iOS

Description: Application crashes while trying to load more data using pagination.

Issue: 16600489

Applies To: iOS

Description: While using the DeviceManager API to capture a picture multiple times, the application shuts down.

Work Around: Limit the size of pictures taken by providing meaningful quality and size values when working on a low memory device with a high resolution camera (mostly the iPad mini).

Issue: 16837655

Applies To: Android

Description: Deployment issue due to the change in the Android SDK and the location of aapt executable.

Work Around: Quick workaround is to copy all the following files / directories Copy from <sdk>/build-tools/android-4.2.2 to <sdk>/platform-tools:

  1. * aapt.exe(on windows) OR aapt(on Mac)
  2. * dx.bat(on windows) OR dx(on Mac)
  3. * /lib folder

Issue: 16776126

Applies To: iOS and Android

Description: firePropertyChange method does not update the panel in the panel splitter.

Issue: 16757933

Applies To: iOS

Description: HR sample application throws an error while editing an employee profile.

Issue: 16668798

Applies To: iOS

Description: Events to refresh the provider on certain occasions are not in sync with the view of the data provider.

Issue: 16374398

Applies To: iOS

Description: On swiping left within the panelItem, the page scrolls up.

Work Around:

  1. Step1:Set styleClass="adfm-limited-scrolling" on the root component of the page which has the issue
  2. Step2:Set styleClass="adfm-scrollable" on all the components which need scrolling ON.

Issue: 17482434

Applies To: iOS 7

Description: amx inputDate component with type="datetime" is not supported on iOS 7. The date field is rendered as a text field instead of a date picker when type="datetime" on iOS 7.

Work Around: Developers would have to add two inputDate fields, one with type="date" and another with "time" and combine these values to get the date & time value.

Issue: 17546051

Applies To: iOS

Description: Using XCode 5 is not supported for packaging and deploying ADF Mobile Apps. 

Work Around: Use XCode 4.6.3 instead.

Issue: 16075764

Applies To: Android  Description: Proper error message is not displayed when invalid Login URL is configured in a ADF Mobile application.  Work Around: Configure proper Login URL and re-deploy the application

Issue: 16796230

Description: When EL expressions are used to copy data from data provider to another, for attributes of type Boolean and Integer null values are replaced by default values. Work Around: Copy data between the providers programatically using individual attributes.

ADF Mobile Version #11.1.2.4.39.64.44 (Jul 2013)

Issue #16570677 (Applies to Android & iOS)

Description: URI in the connections.xml downloaded by the Configuration Service are not added to the application white list

Workaround: Depending on the scenario one of the following workarounds could be used: 1. Use wildcards in the white-listconfiguration in adfmf-application.xml so that the white-list does not need to be updated based on the end points. 2. Re-deploy theapplication with updated while-list configuration.

Issue  #16564088  (Applies to Android)

Description: Springboard is available at RT even after Springboard "none" option is selected in adfmf-application.xml

Workaround: None

Issue  #16519992  (Applies to Android & iOS)

Description: resetFeature() CALL FROM UNSECURED TO SECURED FEATURE CAUSES THE APP TO BECOME UN-RESPONSEIVE

Workaround: None

Issue  #16600130  (Applies to iOS)

Description: When an attachment is opened in landscape orientation the attachment does not take up all the available space, there is a gap on the left side.

Workaround: Change the orientation to portrait and return back to landscape mode.

Issue  #16581777  (Applies to Android & iOS)

Description: Configuration Service Login dialog does not display the URL configured in the application settings. When the Configuration Service URL is changed in Settings, the Configuration Service login dialog does not reflect the changed URL. The last successful URL will be retained in the login screen.

Workaround: Use Configuration Service login screen to change the URL.

Issue  #16579089  (Applies to Android)

Description: InputText used in a ListView looses focus and doesn't allow user to enter any values.

Workaround: None

Issue  #16576295  (Applies to Android)

Description: SECURITYCONTEXT.USENAME does not return proper value when used in Feature LifeCycle Listener deActivate method.

Workaround: None

Issue  #16482568  (Applies to Android & iOS)

Description: When "include login server cookie in REST calls" option is used, the cookie obtained from the login server is not propagated with REST service calls from the JVM.

Workaround: Use remote authentication for the feature using the REST services that require cookie propagation.

Issue  #16442155  (Applies to Android)

Description: Disabling screen rotation is not honored on Android

Workaround: None

Issue  #16447100  (Applies to Android & iOS)

Description: Using DeviceManager.startUpdatingPosition in Feature/Application Lifecycle listener makes the App un-responsive.

Workaround: Move the code out of the Lifefcycle Listener to a Java Bean.

Issue  #16599449  (Applies to Android & iOS)

Description: When 'load more' is used to add more rows to ListView, refreshing the ListView does not reset the content size to it's range size.

Workaround: None

Issue  #16571208  (Applies to Android)

Description: When SelectManyChoice component in READONLY state the TEXT inside PFL is not visible.

Workaround: None

Issue  #16509180  (Applies to Android)

Description: SOAP Web service access on Android in debug mode is very slow

Workaround: Use release mode.

Issue  #16509180  (Applies to Android)

Description: When Android min API level is set to 15, Springboard toggle button is not displayed

Workaround: Set min API level to 9.

Issue  #16318361  (Applies to Android & iOS)

Description: Enabling security on custom Springboard causes errors.


 Workaround: Enable Application level login using the following property: 
 <adf:adf-properties-child xmlns="http://xmlns.oracle.com/adf/config/properties">
     <adf-property name="show-application-login-at-startup" value="true"/>
 </adf:adf-properties-child>

Issue  #16277207  (Applies to Android & iOS)

Description: The 'labelDisplay' attribute on DVT Gauge components is deprecated.

Workaround: Developers should use 'rendered' attribute of the child <dvtm:metricLabel> tag instead.

Issue  #16271427  (Applies to Android & iOS)

Description: watchId parameter on DeviceManager.startUpdatingPosition API is ignored.

Workaround: Use the unique watchId returned by the API.

Issue  #16237543  (Applies to Android & iOS)

Description: Help does not work on Create Data Layer dialog for Thematic Map component in design time.

Workaround: Use the ThematicMap component Tag documentation.

Issue  #16229129  (Applies to iOS)

Description: Application crashes when deployed to iOS device with java.debug.enabled=true preventing remote debugging of App when deployed to a device.

Workaround: 1. In JDeveloper, edit cvm.properties for debugging, i.e, let java.debug.enabled=true 2. Create a deployment profile for iOS 3. Deploy to "iTunes" or "distribution package"  4. Open the temporary XCode project  created in Xcode  5. Attach your device and run the project from xcode. 6. Attach jdev debugger when the app appears hung.

Issue  #16187709  (Applies to Android)

Description: RTL language support is not available on Android.

Workaround: None

Issue  #16049000  (Applies to Android & iOS)

Description: When statusMeterGauge is used inside a panelSplitter's panelItem, the component is not rendered when you access another panelItem and return to the panelItem with the statusMeterGauge.  

Workaround: Set explicit width and height on statusMeterGauge component using inlineStyle attribute. Examples:


  inlineStyle="height:30px; width:160px;" 

   or


  inlineStyle="height:30px; width:#{deviceScope.hardware.screen.availableWidth / 3}px;"

Issue  #16032518  (Applies to Android & iOS)

Description: External libraries at the application and project level are not handled properly when mobile application archive (maa) file is created.

Workaround: Developer should manually update the location of these libraries in the jws and jpr files created from the maa file.

Issue  #14808528  (Applies to Android & iOS)

Description: Setting image URI in css file to the location in the project file does not work.

Workaround: Image URI should be set to the actual location in the deploy directory. Example: ../FARs/ViewController/public_html/images/myimage.png  This path can be obtained by looking at the location of the image in the deploy folder.

Issue  #14746310  (Applies to Android 2.3.X )

Description: In certain scenarios, on Android devices the virtual keyboard covers the input filed to be updated and doesn't allow the page to be scrolled to view the field.

Workaround: none

Issue  #14233757  (Applies to Android & iOS)

Description: Scope variables with the names "data" and "bindings" are not be supported.

Workaround: Use a different unique name for the scope variables

Issue  #14198731  (Applies to Android & iOS)

Description: .svn folders are packaged with mobile app and maa file  when default deployment profile is used.

Workaround: Use deploy profile options to filter out .svn folders from getting packaged during deployment.

Issue  #16673378  (Applies to Android & iOS)

Description: Navigation to a page takes longer when animation is turned on for charts, gauges and other DVT components and animation is enabled during navigation.

Workaround: Change the animationOnDisplay="none" from "auto" on the Chart and Gauge components.

Issue  #16674593  (Applies to Mac OSX 10.8.x (Mountain Lion))

Description: APPLICATION LOGS ARE NOT DISPLAYED IN CONSOLE ON OS X MOUNTAIN LION

Workaround: Application logs are available in application.log file available in iOS Simulator applications folder at /Users/<userid>/Library/Application Support/iPhone Simulator/6.0/Applications/<AppID>/Documents/logs/application.log

Issue  #16538214  (Applies to Android & iOS)

Description: Improve AMX page navigation response times.

Workaround: You can increase page navigation performance in the application by changing the app to do page transitions before it renders the new page by setting the following property in adf.config.xml.


<adf-property name="amxTransitionMode" value="placeholder"/>

Issue  #16667510  (Applies to Android & iOS)

Description: NullPointerException thrown when loadMore rows is clicked in Listview when logging level is set to FINEST in logging.properties

Workaround: Change the logging level to SEVERE

Issue  #16711612  (Applies to Android)

Description: When HTTP based external URL is launched using amx:goLink component, the URL is launched in external browser window even after the URL's domain is added to the white list configuration.

Workaround: None

Issue  #16717902  (Applies to Android)

Description: When a new connections.xml is downloaded using Configuration service, the end points in the new connections.xml are not added to the application white list. As a result, login URL, remote URL and other end points may not be accessible or launched in an external browser.

Workaround: Update connections.xml end points in the App and re-deploy the application.

Issue  #16667510  (Applies to Android & iOS)

Description: NullPointerException thrown when loadMore rows is clicked in Listview when logging level is set to FINEST in logging.properties

Workaround: Change the logging level to SEVERE

Issue  #16752428  (Applies to Android & iOS)

Description: Device properties can not be accessed from with in the Application LifeCycleListener. Using #{deviceScope.device.xx} or DeviceManager.getXX() API in Application LifeCycleListener will result in an error.

Workaround: Device properties can be accessed in Feature LifeCycleListener or in ManagedBeans or through EL in amx pages. For Push Notification scenario which requires access to "device.os" property in Application LifeCycleListener, one can use System.getProperty("os.name") to distinguish between iOS and Android.

Issue: 16829651

Applies To: iOS

Description: On iOS, the feature becomes black and does not show any content from the remote URL.

Work Around: On adding the same remote URL (from connections.xml) to whitelist, the application works fine on iOS.

Issue: 16823703

Applies To: iOS

Description: Application's release mode prevents page from scrolling. This particularly happens while using Gauge compoents.

Work Around: Add this after the last Gauge component <amx:spacer width=""1"" height=""1""/>

Issue: 16815546

Description: Restricting deployment profile to certain orientations is not respected at run time.

Issue: 16796230

Applies To: iOS

Description: When Cordova's Audio Capture API is used on iOS, the Done button within the navigation no longer functions . The user cannot dismiss the audio capture UI.

Issue: 16764133

Applies To: Android

Description: Springboard shows duplicate entries for all features

Issue: 16678969

Applies To: Android

Description: On certain occasions when the Android application is launched from the background, it shows an error ("onDeviceReady() ERROR: ReferenceError: adfmf is not @ defined") in a popup.

Issue: 16605066

Applies To: iOS

Description: Application crashes while trying to load more data using pagination.

Issue: 16600489

Applies To: iOS

Description: While using the DeviceManager API to capture a picture multiple times, the application shuts down.

Work Around: Limit the size of pictures taken by providing meaningful quality and size values when working on a low memory device with a high resolution camera (mostly the iPad mini).

Issue: 16837655

Applies To: Android

Description: Deployment issue due to the change in the Android SDK and the location of aapt executable.

Work Around: Quick workaround is to copy all the following files / directories Copy from <sdk>/build-tools/android-4.2.2 to <sdk>/platform-tools:

  1. * aapt.exe(on windows) OR aapt(on Mac)
  2. * dx.bat(on windows) OR dx(on Mac)
  3. * /lib folder

Issue: 16776126

Applies To: iOS and Android

Description: firePropertyChange method does not update the panel in the panel splitter.

Issue: 16757933

Applies To: iOS

Description: HR sample application throws an error while editing an employee profile.

Issue: 16668798

Applies To: iOS

Description: Events to refresh the provider on certain occasions are not in sync with the view of the data provider.

Issue: 16374398

Applies To: iOS

Description: On swiping left within the panelItem, the page scrolls up.

Work Around:

  1. Step1:Set styleClass="adfm-limited-scrolling" on the root component of the page which has the issue
  2. Step2:Set styleClass="adfm-scrollable" on all the components which need scrolling ON.

ADF Mobile Version #11.1.2.4.39.64.36.1 (May 2013)

Issue #16570677 (Applies to Android & iOS)

Description: URI in the connections.xml downloaded by the Configuration Service are not added to the application white list

Workaround: Depending on the scenario one of the following workarounds could be used: 1. Use wildcards in the white-listconfiguration in adfmf-application.xml so that the white-list does not need to be updated based on the end points. 2. Re-deploy theapplication with updated while-list configuration.

Issue  #16564088  (Applies to Android)

Description: Springboard is available at RT even after Springboard "none" option is selected in adfmf-application.xml

Workaround: None

Issue  #16519992  (Applies to Android & iOS)

Description: resetFeature() CALL FROM UNSECURED TO SECURED FEATURE CAUSES THE APP TO BECOME UN-RESPONSEIVE

Workaround: None

Issue  #16600130  (Applies to iOS)

Description: When an attachment is opened in landscape orientation the attachment does not take up all the available space, there is a gap on the left side.

Workaround: Change the orientation to portrait and return back to landscape mode.

Issue  #16581777  (Applies to Android & iOS)

Description: Configuration Service Login dialog does not display the URL configured in the application settings. When the Configuration Service URL is changed in Settings, the Configuration Service login dialog does not reflect the changed URL. The last successful URL will be retained in the login screen.

Workaround: Use Configuration Service login screen to change the URL.

Issue  #16579089  (Applies to Android)

Description: InputText used in a ListView looses focus and doesn't allow user to enter any values.

Workaround: None

Issue  #16576295  (Applies to Android)

Description: SECURITYCONTEXT.USENAME does not return proper value when used in Feature LifeCycle Listener deActivate method.

Workaround: None

Issue  #16482568  (Applies to Android & iOS)

Description: When "include login server cookie in REST calls" option is used, the cookie obtained from the login server is not propagated with REST service calls from the JVM.

Workaround: Use remote authentication for the feature using the REST services that require cookie propagation.

Issue  #16442155  (Applies to Android)

Description: Disabling screen rotation is not honored on Android

Workaround: None

Issue  #16447100  (Applies to Android & iOS)

Description: Using DeviceManager.startUpdatingPosition in Feature/Application Lifecycle listener makes the App un-responsive.

Workaround: Move the code out of the Lifefcycle Listener to a Java Bean.

Issue  #16599449  (Applies to Android & iOS)

Description: When 'load more' is used to add more rows to ListView, refreshing the ListView does not reset the content size to it's range size.

Workaround: None

Issue  #16571208  (Applies to Android)

Description: When SelectManyChoice component in READONLY state the TEXT inside PFL is not visible.

Workaround: None

Issue  #16509180  (Applies to Android)

Description: SOAP Web service access on Android in debug mode is very slow

Workaround: Use release mode.

Issue  #16509180  (Applies to Android)

Description: When Android min API level is set to 15, Springboard toggle button is not displayed

Workaround: Set min API level to 9.

Issue  #16318361  (Applies to Android & iOS)

Description: Enabling security on custom Springboard causes errors.


 Workaround: Enable Application level login using the following property: 
 <adf:adf-properties-child xmlns="http://xmlns.oracle.com/adf/config/properties">
     <adf-property name="show-application-login-at-startup" value="true"/>
 </adf:adf-properties-child>

Issue  #16277207  (Applies to Android & iOS)

Description: The 'labelDisplay' attribute on DVT Gauge components is deprecated.

Workaround: Developers should use 'rendered' attribute of the child <dvtm:metricLabel> tag instead.

Issue  #16271427  (Applies to Android & iOS)

Description: watchId parameter on DeviceManager.startUpdatingPosition API is ignored.

Workaround: Use the unique watchId returned by the API.

Issue  #16237543  (Applies to Android & iOS)

Description: Help does not work on Create Data Layer dialog for Thematic Map component in design time.

Workaround: Use the ThematicMap component Tag documentation.

Issue  #16229129  (Applies to iOS)

Description: Application crashes when deployed to iOS device with java.debug.enabled=true preventing remote debugging of App when deployed to a device.

Workaround: 1. In JDeveloper, edit cvm.properties for debugging, i.e, let java.debug.enabled=true 2. Create a deployment profile for iOS 3. Deploy to "iTunes" or "distribution package"  4. Open the temporary XCode project  created in Xcode  5. Attach your device and run the project from xcode. 6. Attach jdev debugger when the app appears hung.

Issue  #16187709  (Applies to Android)

Description: RTL language support is not available on Android.

Workaround: None

Issue  #16049000  (Applies to Android & iOS)

Description: When statusMeterGauge is used inside a panelSplitter's panelItem, the component is not rendered when you access another panelItem and return to the panelItem with the statusMeterGauge.  

Workaround: Set explicit width and height on statusMeterGauge component using inlineStyle attribute. Examples:


  inlineStyle="height:30px; width:160px;" 

   or


  inlineStyle="height:30px; width:#{deviceScope.hardware.screen.availableWidth / 3}px;"

Issue  #16032518  (Applies to Android & iOS)

Description: External libraries at the application and project level are not handled properly when mobile application archive (maa) file is created.

Workaround: Developer should manually update the location of these libraries in the jws and jpr files created from the maa file.

Issue  #14808528  (Applies to Android & iOS)

Description: Setting image URI in css file to the location in the project file does not work.

Workaround: Image URI should be set to the actual location in the deploy directory. Example: ../FARs/ViewController/public_html/images/myimage.png  This path can be obtained by looking at the location of the image in the deploy folder.

Issue  #14746310  (Applies to Android 2.3.X )

Description: In certain scenarios, on Android devices the virtual keyboard covers the input filed to be updated and doesn't allow the page to be scrolled to view the field.

Workaround: none

Issue  #14233757  (Applies to Android & iOS)

Description: Scope variables with the names "data" and "bindings" are not be supported.

Workaround: Use a different unique name for the scope variables

Issue  #14198731  (Applies to Android & iOS)

Description: .svn folders are packaged with mobile app and maa file  when default deployment profile is used.

Workaround: Use deploy profile options to filter out .svn folders from getting packaged during deployment.

Issue  #16673378  (Applies to Android & iOS)

Description: Navigation to a page takes longer when animation is turned on for charts, gauges and other DVT components and animation is enabled during navigation.

Workaround: Change the animationOnDisplay="none" from "auto" on the Chart and Gauge components.

Issue  #16674593  (Applies to Mac OSX 10.8.x (Mountain Lion))

Description: APPLICATION LOGS ARE NOT DISPLAYED IN CONSOLE ON OS X MOUNTAIN LION

Workaround: Application logs are available in application.log file available in iOS Simulator applications folder at /Users/<userid>/Library/Application Support/iPhone Simulator/6.0/Applications/<AppID>/Documents/logs/application.log

Issue  #16538214  (Applies to Android & iOS)

Description: Improve AMX page navigation response times.

Workaround: You can increase page navigation performance in the application by changing the app to do page transitions before it renders the new page by setting the following property in adf.config.xml.


<adf-property name="amxTransitionMode" value="placeholder"/>

Issue  #16667510  (Applies to Android & iOS)

Description: NullPointerException thrown when loadMore rows is clicked in Listview when logging level is set to FINEST in logging.properties

Workaround: Change the logging level to SEVERE

Issue  #16711612  (Applies to Android)

Description: When HTTP based external URL is launched using amx:goLink component, the URL is launched in external browser window even after the URL's domain is added to the white list configuration.

Workaround: None

Issue  #16717902  (Applies to Android)

Description: When a new connections.xml is downloaded using Configuration service, the end points in the new connections.xml are not added to the application white list. As a result, login URL, remote URL and other end points may not be accessible or launched in an external browser.

Workaround: Update connections.xml end points in the App and re-deploy the application.

Issue  #16667510  (Applies to Android & iOS)

Description: NullPointerException thrown when loadMore rows is clicked in Listview when logging level is set to FINEST in logging.properties

Workaround: Change the logging level to SEVERE

Issue  #16752428  (Applies to Android & iOS)

Description: Device properties can not be accessed from with in the Application LifeCycleListener. Using #{deviceScope.device.xx} or DeviceManager.getXX() API in Application LifeCycleListener will result in an error.

Workaround: Device properties can be accessed in Feature LifeCycleListener or in ManagedBeans or through EL in amx pages. For Push Notification scenario which requires access to "device.os" property in Application LifeCycleListener, one can use System.getProperty("os.name") to distinguish between iOS and Android.