Skip Headers
Oracle® Fusion Middleware Mobile Client Developer's Guide for Oracle Application Development Framework
11
g
Release 1 (11.1.1.5.0)
Part Number E14826-02
Home
Book List
Index
Master Index
Contact Us
Next
View PDF
Contents
Title and Copyright Information
Preface
Documentation Accessibility
Audience
Related Documents
Conventions
1
Introduction to ADF Mobile Client
1.1
Introduction to ADF Mobile Client
1.1.1
Understanding Differences Between ADF Mobile Client Applications and ADF Faces Web Applications
1.2
Infrastructure Requirements for Developing ADF Mobile Client Applications
1.3
Run-Time Architecture of ADF Mobile Client
1.4
Data and Transaction Synchronization
1.4.1
Data Synchronization
1.4.2
Transaction Synchronization
1.5
Introduction to ADF Mobile Client Application Development
1.5.1
Application Architecture
1.5.2
Typical Development Stages
1.5.3
The Lifecycle of a View
1.5.4
Supported Devices and the Supported Database
1.5.4.1
What You May Need to Know About SQLite
1.5.5
Supported ADF Components and Attributes
1.5.6
Support for ADF View Objects
1.5.7
Support for Expression Language
2
Setting Up the ADF Mobile Client Environment
2.1
Introduction to the ADF Mobile Client Environment
2.2
Prerequisites for Developing ADF Mobile Client Applications
2.2.1
What You Need to Get Started With the ADF Mobile Client Sample Application
2.2.2
What You Need to Create an ADF Mobile Client Application
2.2.3
What You Need to Deploy an ADF Mobile Client Application to a Development Environment
2.2.4
What You May Need to Know About Pre-Installed Components
2.3
Setting Up JDeveloper
2.4
Setting Up Oracle Database
2.5
Setting Up Oracle Database Lite
2.6
Setting Up Development Tools for Windows Mobile Platform
2.6.1
How to Set Up the Windows Mobile Device
2.6.2
How to Install and Set Up the Windows Mobile Emulator
2.6.3
How to Connect the Mobile Device or Emulator
2.6.4
How to Install the Oracle Database Lite Client on the Mobile Device or Emulator
2.6.5
How to Install Java Runtime Environment on the Mobile Device or Emulator
2.6.6
What You May Need to Know About Limitations of Windows Mobile Platform Usage
2.7
Setting Up Development Tools for BlackBerry Platform
2.7.1
How to Install BlackBerry JDE
2.7.1.1
What You May Need to Know About BlackBerry Mobile Data Service Simulator
2.7.2
How to Install BlackBerry Desktop Software
2.7.3
How to Set Up a BlackBerry Smartphone
2.7.4
How to Set Up a BlackBerry Smartphone Simulator
2.7.5
How to Configure JDeveloper for BlackBerry Development
2.7.6
How to Configure Proxy Settings
2.7.7
What You May Need to Know About BlackBerry File Browser System
2.7.8
What You May Need to Know About Limitations of BlackBerry Platform Usage
2.8
Installing SQLite Mobile Sync Client on BlackBerry Smartphone or Simulator
2.9
Setting Up the Fusion Order Demo Mobile Client Application
3
Introduction to the ADF Mobile Client Sample Application
3.1
About the Fusion Order Demo Mobile Client Application
3.2
Installing the Fusion Order Demo Schema
3.2.1
Mounting the Sample Client Database
3.2.1.1
How to Mount the Sample Client Database on Windows Mobile Devices
3.2.1.2
How to Mount the Sample Client Database on a BlackBerry Smartphone Simulator
3.3
Overview of the Fusion Order Demo Mobile Client Application Schema
3.4
Running the Fusion Order Demo Mobile Client Application
3.4.1
How to Run the Demo Application on a Windows Mobile Device Emulator
3.4.2
Running the Sample Application on a BlackBerry Smartphone Simulator
3.4.2.1
How to Start the Demo Application on a BlackBerry Smartphone Simulator
3.5
Taking a Look at the Fusion Order Demo Mobile Client Application
3.5.1
Design Time Components
3.5.1.1
MobileClient Project
3.5.1.2
Model Project
3.5.2
Runtime Components
3.5.3
Browsing Orders
3.5.4
Viewing Order Details
3.5.5
Editing or Adding an Order
3.5.6
Viewing Ordered Items
4
Getting Started with ADF Mobile Client
4.1
About Declarative Development with JDeveloper
4.2
About Developing an ADF Mobile Client Application
4.3
Deploying the Model Project of the Base Application as an ADF Library
4.3.1
How to Deploy the Model Project
4.4
Creating an Application Workspace
4.4.1
How to Create an Application Workspace
4.4.2
What Happens When You Create a Mobile Client Application Workspace
4.5
Extending the Base Application for the Mobile Client Application
5
Developing the ADF Mobile Client Data Model
5.1
Building Business Services for ADF Mobile Client Applications
5.1.1
Support for the Core ADF Business Components
5.1.2
Support for Mobile Database Transactions
5.2
Extending an ADF Application to Mobile Client
5.2.1
How to Create Subsets of Entity Objects and View Objects
5.2.2
What Happens When You Create a Subset of Entity Objects and View Objects
5.3
Editing Mobile Entity Objects
5.3.1
About Using the Overview Editors for Mobile Objects
5.3.2
About Editing Entity Objects
5.3.3
How to Add Attributes to an Entity Object
5.3.4
How to Add Transient Attributes
5.3.5
Adding Validation Rules
5.3.5.1
How to Add a Validation Rule to an Entity or Attribute
5.3.6
Overriding Default Validation Error Handling
5.3.6.1
How to Show the Error Message as a Message Box
5.3.6.2
How to Show the Error Message as Output Text
5.3.7
About Synchronization for Entity Objects
5.3.7.1
How to Enable or Disable Synchronization for Entity Objects
5.3.8
View Accessor Support for Entity Objects and View Objects
5.3.9
Using List UI Hints for View Objects
5.3.10
Using Display Hints for Entity Objects
5.3.11
Adding Bind Variables to View Objects
5.3.12
Working with Resource Bundles
5.4
The Entity Object and View Object Extension
5.4.1
Supported Constructs
5.4.2
Unsupported Methods
5.5
Testing Application Modules
5.6
Interacting Directly with SQLite
5.6.1
Differences Between SQLite and Other Relational Databases
5.6.1.1
Concurrency
5.6.1.2
SQL Support
5.6.1.3
Data Types
5.6.1.4
Foreign Keys
5.6.1.5
Database Transactions
5.7
Configuring JDeveloper to Connect to and Test Against a SQLite Database
5.7.1
How to Test Against a SQLite Database
5.8
Enabling ADF Mobile Transaction Replay Service for an ADF Application
5.8.1
How to Add the ADF Mobile Transaction Replay Service Technology to an ADF Application
5.8.2
What Happens When You Add the ADF Mobile Transaction Replay Service Technology to an Application
5.8.3
What Happens When JDeveloper Creates an ADF Mobile Transaction Replay Service-Enabled Application
5.8.4
How to Create a Transaction Replay Type
5.8.5
What Happens When JDeveloper Creates a Transaction Replay Type
5.9
Authentication
5.9.1
What You May Need to Know About the AuthenticationManager Class
5.9.1.1
Public Accessors
5.9.1.2
Public Methods
5.9.1.3
The AuthenticationCallback Class
5.9.2
What You May Need to Know About SecurityContext EL Expressions
5.9.2.1
Using EL Expressions for Authentication
6
Creating the ADF Mobile Client User Interface
6.1
Introduction to Creating the ADF Mobile Client User Interface
6.2
Creating Task Flows
6.2.1
How to Create a Task Flow
6.2.2
How to Create an Additional Task Flow
6.2.3
How to Use the Mobile Client Task Flow Creation Wizard
6.2.4
What Happens When You Create a Mobile Client Task Flow
6.2.5
What You May Need to Know About Supported Activities and Control Flows
6.2.6
What You May Need to Know About the MobileClient-task-flow.xml File
6.2.7
What You May Need to Know About the Mobile Client Task Flow Diagrammer
6.2.8
How to Add Mobile Client Activities
6.2.9
How to Add View Activities
6.2.10
How to Add a Wildcard Control Flow Rule
6.2.11
How to Enable Page Navigation Using Control Flow Case
6.3
Creating Mobile Views
6.3.1
How to Work With MCX Pages
6.3.1.1
Interpreting the MCX Page Structure
6.3.1.2
Creating MCX Pages
6.3.1.3
What Happens When You Create an MCX Page
6.3.2
How to Add Mobile Client Components and Data Controls to an MCX Page
6.3.2.1
Adding UI Components
6.3.2.2
Using the Visual Editor
6.3.2.3
Adding Data Controls to the View
6.3.2.4
Configuring UI Components
6.4
Designing the Layout of the Page
6.4.1
How to Use a Form Component
6.4.1.1
How to Add a Form to a Page
6.4.2
How to Use a Panel Group Layout Component
6.4.2.1
What You May Need to Know About Geometry Management and the Panel Group Layout Component
6.4.3
How to Use a Panel Form Layout Component
6.4.3.1
What You May Need to Know About Geometry Management and the Panel Form Layout Component
6.4.4
How to Use a Panel Label And Message Component
6.4.4.1
What You May Need to Know About Arranging Labels
6.5
Creating and Using Input Components
6.5.1
How to Use the Input Text Component
6.5.1.1
What You May Need to Know About Geometry Management and the Input Text Component
6.5.2
How to Use the Input Date Component
6.5.2.1
What You May Need to Know About Geometry Management and the Input Date Component
6.5.3
How to Use the Input Number Spinbox Component
6.5.3.1
What You May Need to Know About Geometry Management and the Input Number Spinbox Component
6.5.4
How to Use the Select Boolean Checkbox Component
6.5.4.1
What You May Need to Know About Geometry Management and the Select Boolean Checkbox Component
6.5.5
How to Use the Select One Choice Component
6.5.5.1
What You May Need to Know About Geometry Management and the Select One Choice Component
6.5.5.2
What You May Need to Know About Differences Between Select Items and Select Item Components
6.5.6
What You May Need to Know About Event Listeners and Input Components
6.6
Creating and Using Output Components
6.6.1
How to Use the Output Text Component
6.6.1.1
What You May Need to Know About Geometry Management and the Output Text Component
6.6.1.2
Converting Numerical Values
6.6.1.3
Converting Date and Time Values
6.7
Displaying Images
6.7.1
How to Display an Image
6.7.2
What You May Need to Know About Supported Image File Formats
6.7.3
What You May Need to Know About Geometry Management and the Image Component
6.8
Creating and Using Tables
6.8.1
How to Use the Table Component
6.8.2
What Happens When You Create a Table
6.8.3
What You May Need to Know About Event Listeners and Table Components
6.8.4
What You May Need to Know About the Table User Interaction Model
6.8.5
What You May Need to Know About Using a Databound Select One Choice Component Within a Table
6.9
Using Buttons and Links
6.9.1
How to Use the Button Component
6.9.1.1
What You May Need to Know About Event Listeners and Button Components
6.9.1.2
What You May Need to Know About Geometry Management of Button Components
6.9.2
How to Use the Link Component
6.9.2.1
What You May Need to Know About Event Listeners and Link Components
6.9.2.2
What You May Need to Know About Geometry Management of Link Components
6.9.3
How to Enable the Back Button Navigation
6.10
Creating and Using Scanners
6.10.1
How to Use the Scanner Component
6.10.2
What You May Need to Know About Event Listeners and Scanner Components
6.10.3
How to Integrate a Barcode Scanner Into a Mobile Client Application
6.10.3.1
Creating a Barcode Scanner Data Control
6.10.3.2
What Happens When You Create a Scanner Data Control
6.10.3.3
Enabling Scanning in Mobile Client Applications
6.11
Creating and Using Menus
6.11.1
Menu Types
6.11.1.1
Main
6.11.1.2
Alt
6.11.2
Menu Components
6.11.2.1
Menu
6.11.2.2
Menu Item
6.11.2.3
Menu Group
6.11.2.4
Menu Control
6.11.2.5
Sub Menu
6.11.3
How to Associate Menus with UI Components
6.11.4
How to Create Menus for BlackBerry Smartphones
6.11.4.1
Defining a BlackBerry Full Menu
6.11.5
How to Create Menus for Windows Mobile Devices
6.11.6
What You May Need to Know About Design-Time Menu Usage
6.11.7
What You May Need to Know About Event Listeners and Menus
6.12
Using Event Listeners
6.13
Localizing UI Components
6.14
Understanding EL Support
6.14.1
Supported EL Nodes
6.14.2
What You May Need to Know About ADF Mobile Client EL Implementation
6.14.2.1
Immediate and Deferred Evaluation
6.14.2.2
Enumerated Types
6.14.3
How to Reference Binding Containers
6.14.4
EL Events
6.15
Understanding Binding Layer Components
6.15.1
What You May Need to Know About Sequencing
7
Extending ADF Mobile Client Applications with Java
7.1
About Invoking Custom Methods Through EL Expressions
7.1.1
Adding Invocation Code for Custom Methods in Application Modules and View Objects
7.2
Java Support for Business Components
7.2.1
Support for Reflection
7.2.2
JDK 1.3 Compliance
7.2.3
Alternate Package Names
7.2.4
Supported Java Extension Points for Business Components
7.2.4.1
Unsupported Methods
7.3
Using a Managed Bean in an ADF Mobile Client Application
7.3.1
About MethodDispatch and PropertyDispatch
7.3.2
About PropertyValueChangeSource and Notifications
7.4
Resource Bundle Support
7.4.1
Managing Locales Using the List ResourceBundle and PropertyResourceBundle Classes
7.4.2
Supporting Localization through XLFF Resource Bundles
7.5
Supported EL Nodes
7.5.1
Working with EL in Code
7.6
Additional JavaSE Classes Provided by the ADF Mobile Client Framework
8
Deploying ADF Mobile Client Components
8.1
Introduction to Deployment
8.1.1
Application Deployment Prerequisites
8.2
Deploying the ADF Mobile Client Runtime
8.2.1
How to Deploy the Runtime Components
8.3
Creating Data Sync Publications on the Server
8.3.1
How to Create Data Sync Publications
8.3.2
What Happens When You Create a Database Connection
8.4
Working with Application Deployment Profiles
8.4.1
How to Create a Deployment Profile for BlackBerry Applications
8.4.1.1
Setting and Modifying Application Details
8.4.1.2
Setting the BlackBerry Digital Signature Tool Options
8.4.1.3
Adding a Customized Icon to a BlackBerry Application
8.4.1.4
Deploying BlackBerry Applications
8.4.2
How to Create a Deployment Profile for Windows Mobile
8.4.2.1
Setting the JAR File Options
8.4.2.2
Adding Custom Icons to a Windows Mobile Application
8.4.2.3
How to Add Custom Icons to a Windows Mobile Application
8.4.2.4
Deploying a Windows Mobile Application
8.5
Specifying the Client Database Location for an Application
8.5.1
How to Specify the Client Database Location
8.5.2
What Happens When You Specify a Client Database
8.5.3
What Happens When Oracle Database Lite Mobile Server Manages an Application's Database
8.5.4
How the ADF Mobile Client Framework Retrieves Mobile Server Credentials at Application Startup
8.6
Deploying a Multi-Language ADF Mobile Client Application
8.6.1
How to Select the Language Resource Bundles for an ADF Mobile Client Application
8.6.2
What Happens When You Add Language Resource Bundles to a Deployment Profile
8.6.3
Adding Language Resource Bundles for Multiple Base Application JAR Files
8.6.3.1
How to Add Language Resource Bundles from Another Base Application
8.6.3.2
Manually Adding Resource Bundles
8.6.3.3
Adding Local Resource Bundles
9
Synchronizing ADF Mobile Client Data and Transactions
9.1
About Synchronizing Data with Oracle Mobile Server
9.1.1
About ADF Mobile Transaction Replay Service
9.1.2
About the Connection Between Client and Server
9.1.3
About Publishing Data
9.1.4
What Happens When You Make Changes to the Mobile Database
9.1.5
What Happens When You Import Entity Objects into the Mobile Client Application
9.2
Configuring Oracle Mobile Server
9.3
Initiating Data Synchronization
9.4
Enabling Data Synchronization at Application Startup
9.4.1
How to Invoke Data Synchronization Programmatically
9.4.1.1
Providing Parameters for Data Synchronization
9.4.2
SQLite Database Locking and Mobile Server
9.5
Customizing the Synchronization Setup
9.5.1
Creating a Custom Page for Mobile Synchronization
9.5.1.1
How to Create a Custom Synchronization Page
9.5.1.2
Updating the Application Task Flow
9.6
Setting Up ADF Mobile Transaction Replay Service
10
Testing and Debugging ADF Mobile Client Applications
10.1
Introduction to Testing and Debugging ADF Mobile Client Applications
10.2
Testing ADF Mobile Client Applications
10.3
Debugging ADF Mobile Client Applications for Windows Mobile Platform
10.3.1
How to Configure a Window Mobile Device or Emulator for Debugging
10.3.1.1
Increasing the Internal Storage Capacity of the Device or Emulator
10.3.1.2
Configuring the Device or Emulator for Network Access
10.3.2
How to Deploy the Application to the Window Mobile Device or Emulator for Debugging
10.3.3
What Happens When You Choose to Generate the Debug Launcher
10.3.4
How to Debug the Application on the Windows Mobile Platform
10.3.5
How to Enable Error Logging on a Window Mobile Device or Emulator
10.4
Debugging ADF Mobile Client Applications for BlackBerry Platform
10.4.1
How to Configure a BlackBerry Smartphone Simulator for Debugging
10.4.2
How to Deploy the Application to the BlackBerry Simulator for Debugging
10.4.3
How to Debug the Application on BlackBerry Platform
10.4.4
What You May Need to Know About Modifying the Deployment and Run Configurations
10.4.5
How to Enable Error Logging on a BlackBerry Simulator
10.5
Testing Synchronization
10.6
Using the ADF Mobile Client Settings Facility
10.6.1
How to Use the ADF Mobile Client Logging Facility
10.6.2
How to Configure Logging Using the Settings Facility
10.6.3
How to Enable Logging in Java Code
11
Working Directly with the Database
11.1
About Using a Client Database
11.2
Enabling Applications to Use SQL Initialization Scripts
11.2.1
Supported Column Data Type Declarations
11.2.2
Literal Format for Date Types
11.2.3
SQL Syntax
11.2.4
Inserting Multiple Rows into a Table
11.2.5
Commit Handling
11.3
Adding the SQL Script as a Resource to the ADF Mobile Client Application
12
Using Web Services in ADF Mobile Client Applications
12.1
Introduction to Web Services in ADF Mobile Client Applications
12.2
Creating and Using Web Service Data Controls
12.2.1
How to Create a Web Service Data Control
12.2.2
How to Adjust the Endpoint for a Web Service Data Control
12.2.3
How to Create a New Web Service Connection
12.3
Securing Web Service Data Controls
A
Language Abbreviations
B
Advanced Topics
B.1
Adding Devices in the Page Designer
C
Troubleshooting
C.1
Recovering from an mSync Failure
C.2
Errors When Testing Value Binding Queries
C.3
Receiving ActiveSync Connection Error Message on Deployment Log
C.4
Windows Mobile 6.0 Limitations
C.5
Sync Agent Issues
C.6
Windows 7 Workarounds
C.7
SQLite Limitations
C.8
Font Usage Limitations
D
Sample Code
D.1
Using the OperationProvider and OperationDelegate Interfaces
Index
Scripting on this page enhances content navigation, but does not change the content in any way.