Web UI Developer’s Guide For Oracle Application Development Framework
User Manual:
Open the PDF directly: View PDF
Page Count: 1140 [warning: Documents this large are best viewed by clicking the View PDF Link!]
- Contents
- Preface
- What's New in This Guide for Release 11.1.2.1.0
- Part I Getting Started with ADF Faces
- 1 Introduction to ADF Faces
- 2 ADF Faces Demo Application
- 3 Getting Started with ADF Faces and JDeveloper
- 3.1 About Developing Declaratively in JDeveloper
- 3.2 Creating an Application Workspace
- 3.3 Defining Page Flows
- 3.4 Creating a View Page
- 3.4.1 How to Create JSF Pages
- 3.4.2 What Happens When You Create a JSF Page
- 3.4.3 What You May Need to Know About Updating Your Application to Use the Facelets Engine
- 3.4.4 What You May Need to Know About Automatic Component Binding
- 3.4.5 How to Add ADF Faces Components to JSF Pages
- 3.4.6 What Happens When You Add Components to a Page
- 3.4.7 How to Set Component Attributes
- 3.4.8 What Happens When You Use the Property Inspector
- 3.5 Creating EL Expressions
- 3.6 Creating and Using Managed Beans
- 3.7 Viewing ADF Faces Javadoc
- Part II Understanding ADF Faces Architecture
- 4 Using ADF Faces Client-Side Architecture
- 4.1 About Using ADF Faces Architecture
- 4.2 Listening for Client Events
- 4.3 Adding JavaScript to a Page
- 4.4 Instantiating Client-Side Components
- 4.5 Locating a Client Component on a Page
- 4.6 Accessing Component Properties on the Client
- 4.7 Using Bonus Attributes for Client-Side Components
- 4.8 Understanding Rendering and Visibility
- 4.9 JavaScript Library Partitioning
- 5 Using the JSF Lifecycle with ADF Faces
- 6 Handling Events
- 6.1 About Events and Event Handling
- 6.2 Using ADF Faces Server Events
- 6.3 Using JavaScript for ADF Faces Client Events
- 6.3.1 How to Use Client-Side Events
- 6.3.2 How to Return the Original Source of the Event
- 6.3.3 How to Use Client-Side Attributes for an Event
- 6.3.4 How to Block UI Input During Event Execution
- 6.3.5 How to Prevent Events from Propagating to the Server
- 6.3.6 How to Indicate No Response is Expected
- 6.3.7 What Happens at Runtime: How Client-Side Events Work
- 6.3.8 What You May Need to Know About Using Naming Containers
- 6.4 Sending Custom Events from the Client to the Server
- 6.5 Executing a Script Within an Event Response
- 6.6 Using ADF Faces Client Behavior Tags
- 6.7 Using Polling Events to Update Pages
- 7 Validating and Converting Input
- 8 Rerendering Partial Page Content
- 4 Using ADF Faces Client-Side Architecture
- Part III Creating Your Layout
- 9 Organizing Content on Web Pages
- 9.1 About Organizing Content on Web Pages
- 9.2 Starting to Lay Out a Page
- 9.3 Arranging Contents to Stretch Across a Page
- 9.4 Using Splitters to Create Resizable Panes
- 9.5 Arranging Page Contents in Predefined Fixed Areas
- 9.6 Arranging Content in Forms
- 9.7 Arranging Contents in a Dashboard
- 9.8 Displaying and Hiding Contents Dynamically
- 9.9 Displaying or Hiding Contents in Accordion Panels and Tabbed Panels
- 9.9.1 How to Use the panelAccordion Component
- 9.9.2 How to Use the panelTabbed Component
- 9.9.3 How to Use the showDetailItem Component to Display Content in panelAccordion or panelTabbed Components
- 9.9.4 What You May Need to Know About Geometry Management and the showDetailItem Component
- 9.9.5 What You May Need to Know About showDetailItem Disclosure Events
- 9.10 Displaying Items in a Static Box
- 9.11 Displaying a Bulleted List in One or More Columns
- 9.12 Grouping Related Items
- 9.13 Separating Content Using Blank Space or Lines
- 10 Creating and Reusing Fragments, Page Templates, and Components
- 10.1 About Reusable Content
- 10.2 Common Functionality in Reusable Components
- 10.3 Using Page Fragments
- 10.4 Using Page Templates
- 10.4.1 How to Create a Page Template
- 10.4.2 What Happens When You Create a Page Template
- 10.4.3 How to Create JSF Pages Based on Page Templates
- 10.4.4 What Happens When You Use a Template to Create a Page
- 10.4.5 What Happens at Runtime: How Page Templates Are Resolved
- 10.4.6 What You May Need to Know About Page Templates and Naming Containers
- 10.5 Using Declarative Components
- 10.6 Adding Resources to Pages
- 9 Organizing Content on Web Pages
- Part IV Using Common ADF Faces Components
- 11 Using Input Components and Defining Forms
- 12 Using Tables and Trees
- 12.1 About Tables, Trees, and Tree Tables
- 12.2 Common Functionality in Tables and Trees
- 12.2.1 Displaying Data in Rows and Nodes
- 12.2.2 Content Delivery
- 12.2.3 Row Selection
- 12.2.4 Editing Data in Tables, Trees, and Tree Tables
- 12.2.5 Using Popup Dialogs in Tables, Trees, and Tree Tables
- 12.2.6 Accessing Client Table, Tree, and Tree Table Components
- 12.2.7 Geometry Management and Table, Tree, and Tree Table Components
- 12.3 Using the Table Component
- 12.3.1 Columns and Column Data
- 12.3.2 Formatting Tables
- 12.3.3 Formatting Columns
- 12.3.4 How to Display a Table on a Page
- 12.3.5 What Happens When You Add a Table to a Page
- 12.3.6 What Happens at Runtime: Data Delivery
- 12.3.7 What You May Need to Know About Programmatically Enabling Sorting for Table Columns
- 12.3.8 What You May Need to Know About Performing an Action on Selected Rows in Tables
- 12.3.9 What You May Need to Know About Dynamically Determining Values for Selection Components in Tables
- 12.4 Adding Hidden Capabilities to a Table
- 12.5 Enabling Filtering in Tables
- 12.6 Displaying Data in Trees
- 12.7 Displaying Data in Tree Tables
- 12.8 Passing a Row as a Value
- 12.9 Displaying Table Menus, Toolbars, and Status Bars
- 12.10 Exporting Data from Table, Tree, or Tree Table
- 12.11 Accessing Selected Values on the Client from Components That Use Stamping
- 13 Using List-of-Values Components
- 14 Using Query Components
- 15 Using Popup Dialogs, Menus, and Windows
- 16 Using Menus, Toolbars, and Toolboxes
- 17 Using a Calendar Component
- 18 Using Output Components
- 19 Displaying Tips, Messages, and Help
- 19.1 About Displaying Tips and Messages
- 19.2 Displaying Tips for Components
- 19.3 Displaying Hints and Error Messages for Validation and Conversion
- 19.4 Grouping Components with a Single Label and Message
- 19.5 Displaying Help for Components
- 19.5.1 How to Create Resource Bundle-Based Help
- 19.5.2 How to Create XLIFF-Based Help
- 19.5.3 How to Create Managed Bean Help
- 19.5.4 How to Use JavaScript to Launch an External Help Window
- 19.5.5 How to Create a Java Class Help Provider
- 19.5.6 How to Access Help Content from a UI Component
- 19.5.7 What You May Need to Know About Combining Different Message Types
- 20 Working with Navigation Components
- 20.1 About Navigation Components
- 20.2 Common Functionality in Navigation Components
- 20.3 Using Buttons and Links for Navigation
- 20.4 Configuring a Browser’s Context Menu for Command Links
- 20.5 Using Buttons or Links to Invoke Functionality
- 20.6 Using Navigation Items for a Page Hierarchy
- 20.7 Using a Menu Model to Create a Page Hierarchy
- 20.7.1 How to Create the Menu Model Metadata
- 20.7.2 What Happens When You Use the Create ADF Menu Model Wizard
- 20.7.3 How to Bind the navigationPane Component to the Menu Model
- 20.7.4 How to Use the breadCrumbs Component with a Menu Model
- 20.7.5 How to Use the menuBar Component with a Menu Model
- 20.7.6 What Happens at Runtime
- 20.7.7 What You May Need to Know About Using Custom Attributes
- 20.8 Creating a Simple Navigational Hierarchy
- 20.9 Using Train Components to Create Navigation Items for a Multistep Process
- Part V Using ADF Data Visualization Components
- 21 Introduction to ADF Data Visualization Components
- 21.1 About ADF Data Visualization Components
- 21.1.1 Graph Component Use Cases and Examples
- 21.1.2 Gauge Component Use Cases and Examples
- 21.1.3 Pivot Table Use Cases and Examples
- 21.1.4 Geographic Map Use Cases and Examples
- 21.1.5 Thematic Map Component Use Cases and Examples
- 21.1.6 Gantt Chart Component Use Cases and Examples
- 21.1.7 Hierarchy Viewer Component Use Cases and Examples
- 21.1.8 Additional Functionality for Data Visualization Components
- 21.2 Common Functionality in Data Visualization Components
- 21.3 Providing Data for ADF Data Visualization Components
- 21.1 About ADF Data Visualization Components
- 22 Using Graph Components
- 22.1 About the Graph Component
- 22.1.1 End User and Presentation Features
- 22.1.1.1 Graph Layout
- 22.1.1.2 Sizing
- 22.1.1.3 Data Marker Selection
- 22.1.1.4 Context Menus
- 22.1.1.5 Reference Areas/Line and Alerts
- 22.1.1.6 Hide and Show Series
- 22.1.1.7 Drilling
- 22.1.1.8 Annotations
- 22.1.1.9 Popup Support
- 22.1.1.10 Time Selector
- 22.1.1.11 Bi-directional Support
- 22.1.1.12 Drag and Drop
- 22.1.1.13 Screen Reader Support
- 22.1.2 Graph Component Use Cases and Examples
- 22.1.3 Additional Functionality for Graph Components
- 22.1.1 End User and Presentation Features
- 22.2 Using the Graph Component
- 22.2.1 Graph Type Data Requirements
- 22.2.2 Configuring Graphs
- 22.2.3 How to Add a Graph to a Page
- 22.2.4 What Happens When You Add a Graph to a Page
- 22.2.5 How to Create a Graph Using Tabular Data
- 22.2.6 What You May Need to Know About Flash and PNG Image Formats
- 22.2.7 Editing Graphs in the Visual Editor and Property Inspector
- 22.3 Customizing Graph Display Elements
- 22.4 Formatting Graph Text, Colors, and Data Values
- 22.5 Customizing the Appearance of Series and Groups of Data
- 22.5.1 Changing the Color, Style, and Display of Graph Data Values
- 22.5.2 Changing the Appearance of Pie Graphs
- 22.5.3 Changing the Appearance of Lines in Graphs
- 22.5.4 Customizing Pareto Graphs
- 22.5.5 Customizing Scatter Graph Series Marker Data Values
- 22.5.6 Customizing Graph Marker Shapes
- 22.5.7 Adding Reference Lines or Areas to Graphs
- 22.6 Animating Graphs
- 22.7 Adding Interactive Features to Graphs
- 22.1 About the Graph Component
- 23 Using Gauge Components
- 24 Using Pivot Table Components
- 24.1 About the Pivot Table Component
- 24.2 Using the Pivot Table Component
- 24.3 Using Stamping in Pivot Tables
- 24.4 Using a Pivot Filter Bar with a Pivot Table
- 24.5 Customizing Pivot Table Cell Content
- 24.6 Using Selection in Pivot Tables
- 24.7 Updating Pivot Tables with Partial Page Rendering
- 24.8 How to Export from a Pivot Table
- 25 Using Map Components
- 25.1 About Map Components
- 25.2 Using the Geographic Map Component
- 25.3 Customizing Geographic Map Display Attributes
- 25.4 Customizing Geographic Map Themes
- 25.4.1 How to Customize Zoom Levels for a Theme
- 25.4.2 How to Customize the Labels of a Map Theme
- 25.4.3 How to Customize Color Map Themes
- 25.4.4 How to Customize Point Images in a Point Theme
- 25.4.5 What Happens When You Customize the Point Images in a Map
- 25.4.6 How to Customize the Bars in a Bar Graph Theme
- 25.4.7 What Happens When You Customize the Bars in a Map Bar Graph Theme
- 25.4.8 How to Customize the Slices in a Pie Graph Theme
- 25.4.9 What Happens When You Customize the Slices in a Map Pie Graph Theme
- 25.5 Adding a Toolbar to a Geographic Map
- 25.6 Using Thematic Map Components
- 25.7 Customizing Thematic Map Display Attributes
- 25.8 Adding Interactivity to Thematic Maps
- 26 Using Gantt Chart Components
- 26.1 About Gantt Chart Components
- 26.1.1 End User and Presentation Features
- 26.1.1.1 Scrolling, Zooming, and Panning
- 26.1.1.2 Selection
- 26.1.1.3 How to Navigate to a Specific Date in a Gantt Chart- Navigation and Display
- 26.1.1.4 How to Control the Visibility of Columns in the Table Region
- 26.1.1.5 Navigating in a Gantt Chart
- 26.1.1.6 How to Display Data in a Hierarchical List or a Flat List
- 26.1.1.7 How to Change the Gantt Chart Time Scale
- 26.1.1.8 Server-Side Events
- 26.1.2 Gantt Chart Component Use Cases and Examples
- 26.1.3 Additional Functionality for Gantt Chart Components
- 26.1.1 End User and Presentation Features
- 26.2 Using Gantt Chart Components
- 26.3 Customizing Gantt Chart Legends, Toolbars, and Context Menus
- 26.4 Working with Gantt Chart Tasks and Resources
- 26.5 Specifying Nonworking Days, Read-Only Features, and Time Axes
- 26.6 Printing a Gantt Chart
- 26.7 Using Gantt Charts as a Drop Target or Drag Source
- 26.1 About Gantt Chart Components
- 27 Using Hierarchy Viewer Components
- 27.1 About Hierarchy Viewer Components
- 27.2 Using Hierarchy Viewer Components
- 27.3 Managing Nodes in a Hierarchy Viewer
- 27.4 Using Panel Cards
- 27.5 Configuring Navigation in a Hierarchy Viewer
- 27.6 Customizing the Appearance of a Hierarchy Viewer
- 27.7 Adding Interactivity to a Hierarchy Viewer Component
- 27.8 Adding Search to a Hierarchy Viewer
- 21 Introduction to ADF Data Visualization Components
- Part VI Completing Your View
- 28 Customizing the Appearance Using Styles and Skins
- 29 Internationalizing and Localizing Pages
- 29.1 About Internationalizing and Localizing ADF Faces Pages
- 29.2 Using Automatic Resource Bundle Integration in JDeveloper
- 29.3 Manually Defining Resource Bundles and Locales
- 29.3.1 How to Define the Base Resource Bundle
- 29.3.2 How to Edit a Resource Bundle File
- 29.3.3 How to Register Locales and Resource Bundles in Your Application
- 29.3.4 How to Use Resource Bundles in Your Application
- 29.3.5 What You May Need to Know About ADF Skins and Control Hints
- 29.3.6 What You May Need to Know About Overriding a Resource Bundle in a Customizable Application
- 29.4 Configuring Pages for an End User to Specify Locale at Runtime
- 29.5 Configuring Optional ADF Faces Localization Properties
- 30 Developing Accessible ADF Faces Pages
- 31 Creating Custom ADF Faces Components
- 31.1 About Custom ADF Faces Components
- 31.2 Setting Up the Workspace and Starter Files
- 31.2.1 How to Set Up the JDeveloper Custom Component Environment
- 31.2.2 How to Add a Faces Configuration File
- 31.2.3 How to Add a MyFaces Trinidad Skins Configuration File
- 31.2.4 How to Add a Cascading Style Sheet
- 31.2.5 How to Add a Resource Kit Loader
- 31.2.6 How to Add a JavaServer Pages Tag Library Descriptor File
- 31.2.7 How to Add a JavaScript Library Feature Configuration File
- 31.2.8 How to Add a Facelets Tag Library Configuration File
- 31.3 Developing for the Client-Side
- 31.4 Developing for the Server-Side
- 31.4.1 How to Create a Class for an Event Listener
- 31.4.2 How to Create a Class for an Event
- 31.4.3 Creating the Component
- 31.4.4 How to Create a Class for a Component
- 31.4.5 How to Add the Component to the faces-config.xml File
- 31.4.6 How to Create a Class for a Resource Bundle
- 31.4.7 How to Create a Class for a Renderer
- 31.4.8 How to Add the Renderer to the faces-config.xml File
- 31.4.9 How to Create JSP Tag Properties
- 31.4.10 How to Configure the Tag Library Descriptor
- 31.4.11 How to Create a Resource Loader
- 31.4.12 How to Create a MyFaces Trinidad Cascading Style Sheet
- 31.5 Deploying a Component Library
- 31.6 Adding the Custom Component to an Application
- 32 Allowing User Customization on JSF Pages
- 33 Adding Drag and Drop Functionality
- 33.1 About Drag and Drop Functionality
- 33.2 Adding Drag and Drop Functionality for Attributes
- 33.3 Adding Drag and Drop Functionality for Objects
- 33.4 Adding Drag and Drop Functionality for Collections
- 33.5 Adding Drag and Drop Functionality for Components
- 33.6 Adding Drag and Drop Functionality Into and Out of a panelDashboard Component
- 33.7 Adding Drag and Drop Functionality to a Calendar
- 33.8 Adding Drag and Drop Functionality for DVT Graphs
- 33.9 Adding Drag and Drop Functionality for DVT Gantt Charts
- 34 Using Different Output Modes
- 35 Using the Active Data Service with an Asynchronous Backend
- Part VII Appendixes
- A ADF Faces Configuration
- A.1 About Configuring ADF Faces
- A.2 Configuration in web.xml
- A.2.1 How to Configure for JSF and ADF Faces in web.xml
- A.2.2 What You May Need to Know About Required Elements in web.xml
- A.2.3 What You May Need to Know About ADF Faces Context Parameters in web.xml
- A.2.3.1 State Saving
- A.2.3.2 Debugging
- A.2.3.3 File Uploading
- A.2.3.4 Resource Debug Mode
- A.2.3.5 User Customization
- A.2.3.6 Enabling the Application for Real User Experience Insight
- A.2.3.7 Assertions
- A.2.3.8 Profiling
- A.2.3.9 Dialog Prefix
- A.2.3.10 Compression for CSS Class Names
- A.2.3.11 Control Caching When You Have Multiple ADF Skins in an Application
- A.2.3.12 Test Automation
- A.2.3.13 UIViewRoot Caching
- A.2.3.14 Themes and Tonal Styles
- A.2.3.15 Partial Page Rendering
- A.2.3.16 Partial Page Navigation
- A.2.3.17 JavaScript Partitioning
- A.2.3.18 Framebusting
- A.2.3.19 Suppressing Auto-Generated Component IDs
- A.2.3.20 ADF Faces Caching Filter
- A.2.3.21 Configuring Native Browser Context Menus for Command Links
- A.2.3.22 Session Timeout Warning
- A.2.3.23 JSP Tag Execution in HTTP Streaming
- A.2.4 What You May Need to Know About Other Context Parameters in web.xml
- A.3 Configuration in faces-config.xml
- A.4 Configuration in adf-config.xml
- A.5 Configuration in adf-settings.xml
- A.6 Configuration in trinidad-config.xml
- A.6.1 How to Configure ADF Faces Features in trinidad-config.xml
- A.6.2 What You May Need to Know About Elements in trinidad-config.xml
- A.6.2.1 Animation Enabled
- A.6.2.2 Skin Family
- A.6.2.3 Time Zone and Year
- A.6.2.4 Enhanced Debugging Output
- A.6.2.5 Page Accessibility Level
- A.6.2.6 Language Reading Direction
- A.6.2.7 Currency Code and Separators for Number Groups and Decimal Points
- A.6.2.8 Formatting Dates and Numbers Locale
- A.6.2.9 Output Mode
- A.6.2.10 Number of Active PageFlowScope Instances
- A.6.2.11 File Uploading
- A.6.2.12 Custom File Uploaded Processor
- A.6.2.13 Client-Side Validation and Conversion
- A.6.3 What You May Need to Know About Configuring a System Property
- A.7 Configuration in trinidad-skins.xml
- A.8 Using the RequestContext EL Implicit Object
- A.9 Performance Tuning
- B Message Keys for Converter and Validator Messages
- C Keyboard Shortcuts
- C.1 About Keyboard Shortcuts
- C.2 Tab Traversal
- C.3 Shortcut Keys
- C.3.1 Accelerator Keys
- C.3.2 Access Keys
- C.3.3 Shortcut Keys for Common Components
- C.3.4 Shortcut Keys for Screen Reader Mode
- C.3.5 Shortcut Keys for Rich Text Editor Component
- C.3.6 Shortcut Keys for Table, Tree, and Tree Table Components
- C.3.7 Shortcut Keys for Table, Tree, and Tree Table Components in Screen Reader Mode
- C.3.8 Shortcut Keys for Data Visualization Components
- C.3.9 Shortcut Keys for Calendar Component
- C.3.10 Shortcut Keys for Calendar Component in Screen Reader Mode
- C.4 Default Cursor or Focus Placement
- C.5 The Enter Key
- D Quick Start Layout Themes
- E Code Samples
- A ADF Faces Configuration