Fusion Middleware Documentation
Advanced Search


Developing Mobile Applications with Oracle Mobile Application Framework
Close Window

Table of Contents

Show All | Collapse

A Troubleshooting

This appendix describes problems with various aspects of mobile applications, as well as how to diagnose and resolve them.

This appendix includes the following sections:

A.1 Problems with Input Components on iOS Simulators

Issue:

On mobile applications deployed to iOS simulators, text entered into one <amx:inputText> component field becomes attached to the beginning of the text entered in subsequent field when navigating from one field to another using a mouse. For example, on a page with First Name, Middle Name, and Last Name input text fields, if you enter John in the First Name field, then click the Middle Name field, and enter P, the text displays as JohnP. Likewise, when you click the Last Name field, and enter Smith, the text in that field displays as JohnPSmith, as shown in Figure A-1.

Figure A-1 Text Values Concatenate in Subsequent <amx:inputText> fields

This image is described in the surrounding text

Note:

This behavior only occurs on iOS simulators and in web pages, not on actual devices.

Solution:

Use the keyboard on the simulator to traverse the input text fields rather than the mouse.

A.2 The Geographic Map Component Limits Number of Address Points

Issue:

The Geographic Map component is unable to resolve all address points when Google maps are used as the map provider. This problem is caused by the license that allows users without the business license only limited access to the geocoding service that enables address resolution.

Solution:

MAF provides a handler for error messages produced by the geocoding service. These messages are displayed at runtime if the maximum allowed number of address points is exceeded. The number of requests is limited to 10 requests per second and redundant requests are not sent to the geocoding API.

You should monitor error messages listed in Table A-1.

Table A-1

Error ID Message Description

OVER_QUERY_LIMIT

GeoCoder quota has been exceeded.

Indicates that you are over your quota.

REQUEST_DENIED

Request denied! Check your API key and client ID.

Indicates that the request was denied, possibly because the request includes a result_type or location_type parameter but does not include an API key or client ID.


A.3 Code Signing Issues Prevent Deployment

Issue:

In some iOS development environments, mobile application deployment fails because of code signing errors.

Solution:

To ensure that the mobile application is signed, add code signing data to the Mach-O (Mach object) file by configuring the environment with CODESIGN_ALLOCATE. For example, enter the following from the Terminal:

export CODESIGN_ALLOCATE="/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate"

For more information, see codesign_allocate(1) OS X Manual Page and OS X ABI Mach-O File Format Reference, both available from the iOS Developer Library (http://developer.apple.com/library/ios/navigation/).

A.4 The credentials Attribute Causes Deployment to Fail

Issue:

The presence of the credentials attribute defined for the adfmf:feature element in the maf-feature.xml file causes JDeveloper to cancel deployment and write an error similar to the following to the deployment log:

XML validation failed for file
/Users/jsmith/jdeveloper/mywork/MobileApplication/ViewController/src/META-INF/maf-feature.xml.
[12:26:44 PM] The file contains the following errors:
Error (Line 3, Column 44): Attribute credentials not defined on element adfmf:feature
Error (Line 10, Column 49): Attribute credentials not defined on element adfmf:feature
Error (Line 19, Column 51): Attribute credentials not defined on element adfmf:feature
Error (Line 35, Column 69): Attribute credentials not defined on element adfmf:feature
Error (Line 50, Column 65): Attribute credentials not defined on element adfmf:feature
[12:26:50 PM] Deployment cancelled.
[12:26:50 PM] ----  Deployment incomplete  ----.
[12:26:50 PM] XML validation failed.

Solution:

When you migrate an application created by ADF Mobile, you must verify that the authentication mode once defined in maf-feature.xml (such as <adfmf:feature id="feature1" name="feature1" credentials="remote">) is now defined using the authenticationMode attribute in the connections.xml file. JDeveloper's audit rules can detect the presence of the credentials attribute and assist you in removing it from the maf-feature.xml file.

Because only the local and remote values are valid for the autneticationMode attribute, do not migrate the value of none (<adfmf:feature id="feature1" name="feature1" credentials="none">) to the authenticateionMode attribute, as doing so will cause the deployment will fail. For more information, see Section 21.3, "Overview of the Authentication Process for Mobile Applications."