Skip Headers
Oracle® Fusion Middleware Web User Interface Developer's Guide for Oracle Application Development Framework
11
g
Release 1 (11.1.1.7.1)
Part Number B31973-17
Home
Book List
Contact Us
Next
PDF
·
Mobi
·
ePub
Contents
Title and Copyright Information
Preface
Audience
Documentation Accessibility
Related Documents
Conventions
What's New in This Guide for Release 11.1.1.7.1
Part I Getting Started with ADF Faces
1
Introduction to ADF Faces Rich Client
1.1
Introduction to ADF Faces Rich Client
1.1.1
History of ADF Faces
1.1.2
ADF Faces as Rich Client Components
1.2
Architecture of ADF Faces Components
1.2.1
Client-Side Architecture
1.2.1.1
Client-Side Components
1.2.1.2
JavaScript Library Partitioning
1.2.2
ADF Faces Architectural Features
1.3
ADF Faces Components
1.4
ADF Faces Demonstration Application
1.4.1
How to Download and Install the ADF Faces Demo Application
1.4.2
Using the ADF Faces Demo Application
1.4.3
Overview of the File Explorer Application
1.4.4
Viewing the Source Code In JDeveloper
2
Getting Started with ADF Faces
2.1
Developing Declaratively in JDeveloper
2.2
Creating an Application Workspace
2.2.1
How to Create an Application Workspace
2.2.2
What Happens When You Create an Application Workspace
2.3
Defining Page Flows
2.3.1
How to Define a Page Flow
2.3.2
What Happens When You Use the Diagrammer to Create a Page Flow
2.4
Creating a View Page
2.4.1
How to Create JSF JSP Pages
2.4.2
What Happens When You Create a JSF JSP Page
2.4.3
What You May Need to Know About Automatic Component Binding
2.4.4
How to Create a Facelets XHTML Page
2.4.5
What Happens When You Create a JSF XHTML Page
2.4.6
How to Add ADF Faces Components to JSF Pages
2.4.7
What Happens When You Add Components to a Page
2.4.8
How to Set Component Attributes
2.4.9
What Happens When You Use the Property Inspector
2.5
Creating EL Expressions
2.5.1
How to Create an EL Expression
2.5.2
How to Use EL Expressions Within Managed Beans
2.6
Creating and Using Managed Beans
2.6.1
How to Create a Managed Bean in JDeveloper
2.6.2
What Happens When You Use JDeveloper to Create a Managed Bean
2.6.3
What You May Need to Know About Component Bindings and Managed Beans
2.7
Viewing ADF Faces Source Code and Javadoc
Part II Understanding ADF Faces Architecture
3
Using ADF Faces Architecture
3.1
Introduction to Using ADF Faces Architecture
3.2
Listening for Client Events
3.3
Adding JavaScript to a Page
3.3.1
How to Use Inline JavaScript
3.3.2
How to Import JavaScript Libraries
3.3.3
What You May Need to Know About Accessing Client Event Sources
3.4
Instantiating Client-Side Components
3.5
Locating a Client Component on a Page
3.5.1
What You May Need to Know About Finding Components in Naming Containers
3.6
Determining the User's Current Location
3.6.1
How to Determine the User's Current Location
3.7
Accessing Component Properties on the Client
3.7.1
How to Set Property Values on the Client
3.7.2
How to Unsecure the disabled Property
3.7.3
What Happens at Runtime: How Client Properties Are Set on the Client
3.8
Using Bonus Attributes for Client-Side Components
3.8.1
How to Create Bonus Attributes
3.8.2
What You May Need to Know About Marshalling Bonus Attributes
3.9
Understanding Rendering and Visibility
3.9.1
How to Set Visibility Using JavaScript
3.9.2
What You May Need to Know About Visible and the isShowing Function
4
Using the JSF Lifecycle with ADF Faces
4.1
Introduction to the JSF Lifecycle and ADF Faces
4.2
Using the Immediate Attribute
4.3
Using the Optimized Lifecycle
4.3.1
What You May Need to Know About Using the Immediate Attribute and the Optimized Lifecycle
4.3.2
What You May Need to Know About Using an LOV Component and the Optimized Lifecycle
4.4
Using the Client-Side Lifecycle
4.5
Using Subforms to Create Regions on a Page
4.6
Object Scope Lifecycles
4.7
Passing Values Between Pages
4.7.1
How to Use the pageFlowScope Scope Within Java Code
4.7.2
How to Use the pageFlowScope Scope Without Writing Java Code
4.7.3
What Happens at Runtime: Passing Values
5
Handling Events
5.1
Introduction to Events and Event Handling
5.1.1
Events and Partial Page Rendering
5.1.2
Client-Side Event Model
5.2
Using ADF Faces Server Events
5.3
Using JavaScript for ADF Faces Client Events
5.3.1
How to Use Client-Side Events
5.3.2
How to Return the Original Source of the Event
5.3.3
How to Use Client-Side Attributes for an Event
5.3.4
How to Block UI Input During Event Execution
5.3.5
How to Prevent Events from Propagating to the Server
5.3.6
What Happens at Runtime: How Client-Side Events Work
5.3.7
What You May Need to Know About Using Naming Containers
5.4
Sending Custom Events from the Client to the Server
5.4.1
How to Send Custom Events from the Client to the Server
5.4.2
What Happens at Runtime: How Client and Server Listeners Work Together
5.4.3
What You May Need to Know About Marshalling and Unmarshalling Data
5.5
Executing a Script Within an Event Response
5.6
Using Client Behavior Tags
5.6.1
How to Use the scrollComponentIntoViewBehavior Tag
5.7
Using Polling Events to Update Pages
5.7.1
How to Use the Poll Component
6
Validating and Converting Input
6.1
Introduction to ADF Faces Converters and Validators
6.2
Conversion, Validation, and the JSF Lifecycle
6.3
Adding Conversion
6.3.1
How to Add a Standard ADF Faces Converter
6.3.2
How to Set Attributes on a Standard ADF Faces Converter
6.3.3
What Happens at Runtime: How Converters Work
6.3.4
What You May Need to Know About Date Converters
6.3.5
How to Add oracle.jbo.domain Converters
6.4
Creating Custom JSF Converters
6.4.1
How to Create a Custom JSF Converter
6.4.2
What Happens When You Use a Custom Converter
6.5
Adding Validation
6.5.1
How to Add Validation
6.5.1.1
Adding ADF Faces Validation
6.5.1.2
Using Validation Attributes
6.5.1.3
Using ADF Faces Validators
6.5.2
What Happens at Runtime: How Validators Work
6.5.3
What You May Need to Know About Multiple Validators
6.6
Creating Custom JSF Validation
6.6.1
How to Create a Backing Bean Validation Method
6.6.2
What Happens When You Create a Backing Bean Validation Method
6.6.3
How to Create a Custom JSF Validator
6.6.4
What Happens When You Use a Custom JSF Validator
7
Rerendering Partial Page Content
7.1
Introduction to Partial Page Rendering
7.2
Enabling Partial Page Rendering Declaratively
7.2.1
How to Enable Partial Page Rendering
7.2.2
What You May Need to Know About Using the Browser Back Button
7.2.3
What You May Need to Know About PPR and Screen Readers
7.3
Enabling Partial Page Rendering Programmatically
7.4
Using Partial Page Navigation
7.4.1
How to Use Partial Page Navigation
7.4.2
What You May Need to Know About PPR Navigation
Part III Using ADF Faces Components
8
Organizing Content on Web Pages
8.1
Introduction to Organizing Content on Web Pages
8.2
Starting to Lay Out a Page
8.2.1
Geometry Management and Component Stretching
8.2.2
Nesting Components Inside Components That Allow Stretching
8.2.3
Using Quick Start Layouts
8.2.4
Tips for Using Geometry-Managed Components
8.2.5
How to Configure the document Tag
8.3
Arranging Contents to Stretch Across a Page
8.3.1
How to Use the panelStretchLayout Component
8.3.2
What You May Need to Know About Geometry Management and the panelStretchLayout Component
8.4
Using Splitters to Create Resizable Panes
8.4.1
How to Use the panelSplitter Component
8.4.2
What You May Need to Know About Geometry Management and the panelSplitter Component
8.5
Arranging Content in a Grid
8.5.1
How to Use the panelGridLayout, gridRow, and gridCell Components to Create a Grid-Based Layout
8.5.2
What You May Need to Know About Geometry Management and the panelGridLayout Component
8.6
Arranging Page Contents in Predefined Fixed Areas
8.6.1
How to Use the panelBorderLayout Component
8.7
Arranging Content in Forms
8.7.1
How to Use the panelFormLayout Component
8.7.2
What You May Need to Know About Using the group Component with the panelFormLayout Component
8.8
Arranging Contents in a Dashboard
8.8.1
How to Use the panelDashboard Component
8.8.2
What You May Need to Know About Geometry Management and the panelDashboard Component
8.9
Displaying and Hiding Contents Dynamically
8.9.1
How to Use the showDetail Component
8.9.2
How to Use the showDetailHeader Component
8.9.3
How to Use the panelBox Component
8.9.4
What You May Need to Know About Disclosure Events
8.10
Displaying or Hiding Contents in Panels
8.10.1
How to Use the panelAccordion Component
8.10.2
How to Use the panelTabbed Component
8.10.3
How to Use the panelDrawer Component
8.10.4
How to Use the panelSpringboard Component
8.10.5
What You May Need to Know About Switching Between Grid and Strip Mode
8.10.6
How to Use the showDetailItem Component to Display Content in Panels
8.10.7
What You May Need to Know About Geometry Management and the showDetailItem Component
8.10.8
What You May Need to Know About showDetailItem Disclosure Events
8.10.9
What You May Need to Know About Skinning and the panelTabbed Component
8.11
Displaying Items in a Static Box
8.11.1
How to Use the panelHeader Component
8.11.2
How to Use the decorativeBox Component
8.11.3
What You May Need to Know About Geometry Management and the decorativeBox Component
8.12
Displaying a Bulleted List in One or More Columns
8.12.1
How to Use the panelList Component
8.12.2
What You May Need to Know About Creating a List Hierarchy
8.13
Grouping Related Items
8.13.1
How to Use the panelGroupLayout Component
8.13.2
What You May Need to Know About Geometry Management and the panelGroupLayout Component
8.14
Separating Content Using Blank Space or Lines
8.14.1
How to Use the spacer Component
8.14.2
How to Use the Separator Component
9
Using Input Components and Defining Forms
9.1
Introduction to Input Components and Forms
9.2
Defining Forms
9.2.1
How to Add a Form to a Page
9.2.2
How to Add a Subform to a Page
9.2.3
How to Add a Reset Button to a Form
9.3
Using the inputText Component
9.3.1
How to Add an inputText Component
9.3.2
How to Add the Ability to Insert Text into an inputText Component
9.4
Using the Input Number Components
9.4.1
How to Add an inputNumberSlider or an inputRangeSlider Component
9.4.2
How to Add an inputNumberSpinbox Component
9.5
Using Color and Date Choosers
9.5.1
How to Add an inputColor Component
9.5.2
How to Add an InputDate Component
9.5.3
What You May Need to Know About Selecting Time Zones Without the inputDate Component
9.6
Using Selection Components
9.6.1
How to Use Selection Components
9.6.2
What You May Need to Know About the contentDelivery Attribute on the SelectManyChoice Component
9.7
Using Shuttle Components
9.7.1
How to Add a selectManyShuttle or selectOrderShuttle Component
9.7.2
What You May Need to Know About Using a Client Listener for Selection Events
9.8
Using the richTextEditor Component
9.8.1
How to Add a richTextEditor Component
9.8.2
How to Add the Ability to Insert Text into a richTextEditor Component
9.8.3
How to Customize the Toolbar
9.9
Using File Upload
9.9.1
How to Use the inputFile Component
9.9.2
How to Configure the inputFile Component to Upload Multiple Files
9.9.3
What You May Need to Know About Temporary File Storage
9.9.4
What You May Need to Know About Uploading Multiple Files
9.10
Using Code Editor
9.10.1
How to Add a codeEditor Component
10
Using Tables, Trees, and Other Collection-Based Components
10.1
Introduction to Using Collection-Based Components
10.1.1
Content Delivery
10.1.2
Row Selection
10.1.3
Editing Data in Tables, Trees, and Tree Tables
10.1.4
Using Popup Dialogs in Tables, Trees, and Tree Tables
10.1.5
Accessing Client Collection Components
10.1.6
Geometry Management for Table, Tree, and Tree Table Components
10.2
Displaying Data in Tables
10.2.1
Columns and Column Data
10.2.2
Formatting Tables
10.2.3
Formatting Columns
10.2.4
How to Display a Table on a Page
10.2.5
What Happens When You Add a Table to a Page
10.2.6
What Happens at Runtime: Data Delivery
10.2.7
What You May Need to Know About Programmatically Enabling Sorting for Table Columns
10.2.8
What You May Need to Know About Performing an Action on Selected Rows in Tables
10.2.9
What You May Need to Know About Dynamically Determining Values for Selection Components in Tables
10.2.10
What You May Need to Know About Using the Iterator Tag
10.3
Adding Hidden Capabilities to a Table
10.3.1
How to Use the detailStamp Facet
10.3.2
What Happens at Runtime: Disclosing Row Data
10.4
Enabling Filtering in Tables
10.4.1
How to Add Filtering to a Table
10.5
Displaying Data in Trees
10.5.1
How to Display Data in Trees
10.5.2
What Happens When You Add a Tree to a Page
10.5.3
What Happens at Runtime: Tree Component Events
10.5.4
What You May Need to Know About Programmatically Expanding and Collapsing Nodes
10.5.5
What You May Need to Know About Programmatically Selecting Nodes
10.6
Displaying Data in Tree Tables
10.6.1
How to Display Data in a Tree Table
10.7
Displaying Table Menus, Toolbars, and Status Bars
10.7.1
How to Add a panelCollection with a Table, Tree, or Tree Table
10.8
Displaying a Collection in a List
10.8.1
How to Display a Collection in a List
10.9
Displaying Images in a Carousel
10.9.1
How to Create a Carousel
10.9.2
What You May Need to Know About the Carousel Component and Different Browsers
10.10
Passing a Row as a Value
10.11
Exporting Data from Table, Tree, or Tree Table
10.11.1
How to Export Table, Tree, or Tree Table Data to an External Format
10.11.2
What Happens at Runtime: How Row Selection Affects the Exported Data
10.12
Accessing Selected Values on the Client from Collection-Based Components
10.12.1
How to Access Values from a Selection in Stamped Components.
10.12.2
What You May Need to Know About Accessing Selected Values
11
Using List-of-Values Components
11.1
Introduction to List-of-Values Components
11.2
Creating the ListOfValues Data Model
11.2.1
How to Create the ListOfValues Data Model
11.3
Using the inputListOfValues Component
11.3.1
How to Add the InputListOfValues Component
11.3.2
What You May Need to Know About Skinning the Search and Select Dialogs in the LOV Components
11.4
Using the InputComboboxListOfValues Component
11.4.1
How to Add the InputComboboxListOfValues Component
12
Using Query Components
12.1
Introduction to Query Components
12.2
Implementing the Model for Your Query
12.3
Using the quickQuery Component
12.3.1
How to Add the quickQuery Component Using a Model
12.3.2
How to Use a quickQuery Component Without a Model
12.3.3
What Happens at Runtime: How the Framework Renders the quickQuery Component and Executes the Search
12.4
Using the query Component
12.4.1
How to Add the Query Component
13
Using Popup Dialogs, Menus, and Windows
13.1
Introduction to Using Popup Elements
13.2
Declaratively Creating Popup Elements
13.2.1
How to Create a Dialog
13.2.2
How to Create a Panel Window
13.2.3
How to Create a Context Menu
13.2.4
How to Create a Note Window
13.2.5
What Happens at Runtime: Popup Component Events
13.3
Programmatically Invoking a Popup
13.3.1
How to Programatically Invoke a Popup
13.3.2
What Happens When You Programmatically Invoke a Popup
13.4
Invoking Popup Elements
13.4.1
How to Use the af:showPopupBehavior Tag
13.5
Displaying Contextual Information
13.5.1
How to Create Contextual Information
13.6
Controlling the Automatic Cancellation of Inline Popups
13.6.1
How to Disable the Automatic Cancellation of an Inline Popup
13.6.2
What Happens When You Disable the Automatic Cancellation of an Inline Popup
14
Using Menus, Toolbars, and Toolboxes
14.1
Introduction to Menus, Toolbars, and Toolboxes
14.2
Using Menus in a Menu Bar
14.2.1
How to Create and Use Menus in a Menu Bar
14.3
Using Toolbars
14.3.1
How to Create and Use Toolbars
14.3.2
What Happens at Runtime: Determining the Size of Menu Bars and Toolbars
14.3.3
What You May Need to Know About Toolbars
15
Creating a Calendar Application
15.1
Introduction to Creating a Calendar Application
15.2
Creating the Calendar
15.2.1
Calendar Classes
15.2.2
How to Create a Calendar
15.3
Configuring the Calendar Component
15.3.1
How to Configure the Calendar Component
15.3.2
What Happens at Runtime: Calendar Events and PPR
15.4
Adding Functionality Using Popup Components
15.4.1
How to Add Functionality Using Popup Components
15.5
Customizing the Toolbar
15.5.1
How to Customize the Toolbar
15.6
Styling the Calendar
15.6.1
How to Style Activities
15.6.2
What Happens at Runtime: Activity Styling
15.6.3
How to Customize Dates
16
Using Output Components
16.1
Introduction to Output Text, Image, Icon, and Media Components
16.2
Displaying Output Text and Formatted Output Text
16.2.1
How to Display Output Text
16.2.2
What You May Need to Know About Allowed Format and Character Codes in the outputFormatted Component
16.3
Displaying Icons
16.4
Displaying Images
16.5
Using Images as Links
16.6
Displaying Application Status Using Icons
16.7
Playing Video and Audio Clips
16.7.1
How to Allow Playing of Audio and Video Clips
17
Displaying Tips, Messages, and Help
17.1
Introduction to Displaying Tips and Messages
17.2
Displaying Tips for Components
17.3
Displaying Hints and Error Messages for Validation and Conversion
17.3.1
How to Define Custom Validator and Converter Messages
17.3.2
What You May Need to Know About Overriding Default Messages Globally
17.3.3
How to Display Component Messages Inline
17.3.4
How to Display Global Messages Inline
17.4
Grouping Components with a Single Label and Message
17.5
Displaying Help for Components
17.5.1
How to Create Resource Bundle-Based Help
17.5.2
How to Create XLIFF-Based Help
17.5.3
How to Create Managed Bean Help
17.5.4
How to Use JavaScript to Launch an External Help Window
17.5.5
How to Create a Java Class Help Provider
17.5.6
How to Access Help Content from a UI Component
17.5.7
What You May Need to Know About Combining Different Message Types
18
Working with Navigation Components
18.1
Introduction to Navigation Components
18.2
Using Buttons and Links for Navigation
18.2.1
How to Use Command Buttons and Command Links
18.2.2
How to Use Go Buttons and Go Links
18.3
Configuring a Browser's Context Menu for Command Links
18.3.1
How to Configure a Browser's Context Menu for Command Links
18.3.2
What Happens When You Configure a Browser's Context Menu for Command Links
18.4
Using Buttons or Links to Invoke Functionality
18.4.1
How to Use a Command Component to Download Files
18.4.2
How to Use a Command Component to Reset Input Fields
18.5
Using Navigation Items for a Page Hierarchy
18.6
Using a Menu Model to Create a Page Hierarchy
18.6.1
How to Create the Menu Model Metadata
18.6.2
What Happens When You Use the Create ADF Menu Model Wizard
18.6.3
How to Bind to the XMLMenuModel in the JSF Page
18.6.4
How to Use the breadCrumbs Component
18.6.5
What Happens at Runtime
18.6.6
What You May Need to Know About Using Custom Attributes
18.7
Creating a Simple Navigational Hierarchy
18.7.1
How to Create a Simple Page Hierarchy
18.7.2
How to Use the breadCrumbs Component
18.7.3
What You May Need to Know About Removing Navigation Tabs
18.7.4
What You May Need to Know About Navigation Tabs in a Compressed Layout
18.8
Using Train Components to Create Navigation Items for a Multi-Step Process
18.8.1
How to Create the Train Model
18.8.2
How to Configure Managed Beans for the Train Model
18.8.3
How to Bind to the Train Model in JSF Pages
19
Creating and Reusing Fragments, Page Templates, and Components
19.1
Introduction to Reusable Content
19.2
Using Page Fragments
19.2.1
How to Create a Page Fragment
19.2.2
What Happens When You Create a Page Fragment
19.2.3
How to Use a Page Fragment in a JSF Page
19.2.3.1
Adding a Page Fragment Using the Component Palette
19.2.3.2
Adding a Page Fragment Using the Application Navigator
19.2.4
What Happens at Runtime: Resolving Page Fragments
19.3
Using Page Templates
19.3.1
How to Create a Page Template
19.3.2
What Happens When You Create a Page Template
19.3.3
How to Create JSF Pages Based on Page Templates
19.3.4
What Happens When You Use a Template to Create a Page
19.3.5
What Happens at Runtime: How Page Templates Are Resolved
19.3.6
What You May Need to Know About Page Templates and Naming Containers
19.4
Using Declarative Components
19.4.1
How to Create a Declarative Component
19.4.2
What Happens When You Create a Declarative Component
19.4.3
How to Deploy Declarative Components
19.4.4
How to Use Declarative Components in JSF Pages
19.4.5
What Happens When You Use a Declarative Component on a JSF Page
19.4.6
What Happens at Runtime
19.5
Adding Resources to Pages
19.5.1
How to Add Resources to Page Templates and Declarative Components
19.5.2
What Happens at Runtime: Adding Resources to the Document Header
20
Customizing the Appearance Using Styles and Skins
20.1
Introduction to Skins, Style Selectors, and Style Properties
20.1.1
ADF Faces Skins
20.1.2
Skin Style Selectors
20.1.3
Component Style Properties
20.2
Applying Custom Skins to Applications
20.2.1
How to Add a Custom Skin to an Application
20.2.2
How to Register the XML Schema Definition File for a Custom Skin
20.2.3
How to Register a Custom Skin
20.2.4
How to Configure an Application to Use a Custom Skin
20.2.5
What You May Need to Know About Using a Skin in an Oracle BI User Interface
20.3
Defining Skin Style Properties
20.3.1
How to Apply Skins to Text
20.3.2
How to Apply Skins to Icons
20.3.3
How to Apply Skins to Messages
20.3.4
How to Apply Themes to Components
20.3.5
How to Create a Custom Alias
20.3.6
How to Configure a Component for Changing Skins Dynamically
20.4
Changing the Style Properties of a Component
20.4.1
How to Set an Inline Style
20.4.2
How to Set a Style Class
20.5
Referring to URLs in a Skin's CSS File
20.6
Versioning Custom Skins
20.6.1
How to Version a Custom Skin
20.6.2
What Happens When You Version Custom Skins
20.7
Deploying a Custom Skin File in a JAR File
21
Internationalizing and Localizing Pages
21.1
Introduction to Internationalization and Localization of ADF Faces Pages
21.2
Using Automatic Resource Bundle Integration in JDeveloper
21.2.1
How to Set Resource Bundle Options
21.2.2
What Happens When You Set Resource Bundle Options
21.2.3
How to Create an Entry in a JDeveloper-Generated Resource Bundle
21.2.4
What Happens When You Create an Entry in a JDeveloper-Generated Resource Bundle
21.3
Manually Defining Resource Bundles and Locales
21.3.1
How to Define the Base Resource Bundle
21.3.2
How to Edit a Resource Bundle File
21.3.3
How to Register Locales and Resource Bundles in Your Application
21.3.4
How to Use Resource Bundles in Your Application
21.3.5
What You May Need to Know About Custom Skins and Control Hints
21.3.6
What You May Need to Know About Overriding a Resource Bundle in a Customizable Application
21.4
Configuring Pages for an End User to Specify Locale at Runtime
21.4.1
How to Configure a Page for an End User to Specify Locale
21.4.2
What Happens When You Configure a Page to Specify Locale
21.4.3
What Happens at Runtime When an End User Specifies a Locale
21.5
Configuring Optional ADF Faces Localization Properties
21.5.1
How to Configure Optional Localization Properties
22
Developing Accessible ADF Faces Pages
22.1
Introduction to Accessible ADF Faces Pages
22.2
Exposing Accessibility Preferences
22.2.1
How to Configure Accessibility Support in trinidad-config.xml
22.3
Specifying Component-Level Accessibility Properties
22.3.1
ADF Faces Component Accessibility Guidelines
22.3.2
Using ADF Faces Table components in Screen Reader mode
22.3.3
ADF Data Visualization Components Accessibility Guidelines
22.3.4
How to Define Access Keys for an ADF Faces Component
22.3.5
How to Define Localized Labels and Access Keys
22.4
Creating Accessible Pages
22.4.1
How to Use Partial Page Rendering
22.4.2
How to Use Scripting
22.4.3
How to Use Styles
22.4.4
How to Use Page Structures and Navigation
22.4.5
How to Use WAI-ARIA Landmark Regions
22.5
Running Accessibility Audit Rules
Part IV Using ADF Data Visualization Components
23
Introduction to ADF Data Visualization Components
23.1
Introduction to the ADF Data Visualization Components
23.2
Defining the ADF Data Visualization Components
23.2.1
Graph
23.2.2
Gauge
23.2.3
Pivot Table
23.2.4
Geographic Map
23.2.5
Gantt Chart
23.2.6
Timeline
23.2.7
Hierarchy Viewer
23.2.8
Treemap and Sunburst
23.3
Providing Data for ADF Data Visualization Components
24
Using ADF Graph Components
24.1
Introduction to the Graph Component
24.2
Understanding the Graph Tags
24.2.1
Graph-Specific Tags
24.2.2
Common Graph Child Tags
24.2.3
Graph-Specific Child Tags
24.2.4
Child Set Tags
24.3
Understanding Data Requirements for Graphs
24.3.1
Area Graph Data Requirements
24.3.2
Bar Graph Data Requirements
24.3.3
Bubble Graph Data Requirements
24.3.4
Combination Graph Data Requirements
24.3.5
Funnel Graph Data Requirements
24.3.6
Line Graph Data Requirements
24.3.7
Pareto Graph Data Requirements
24.3.8
Pie Graph Data Requirements
24.3.9
Polar Graph Data Requirements
24.3.10
Radar Graph Data Requirements
24.3.11
Scatter Graph Data Requirements
24.3.12
Sparkchart Data Requirements
24.3.13
Stock Graph Data Requirements
24.3.13.1
Stock Graphs: High-Low-Close
24.3.13.2
Stock Graphs: High-Low-Close with Volume
24.3.13.3
Stock Graphs: Open-High-Low-Close
24.3.13.4
Stock Graphs: Open-High-Low-Close with Volume
24.3.13.5
Candle Stock Graphs: Open-Close
24.3.13.6
Candle Stock Graphs: Open-Close with Volume
24.3.13.7
Candle Stock Graphs: Open-High-Low-Close
24.3.13.8
Candle Stock Graphs: Open-High-Low-Close with Volume
24.4
Creating a Graph
24.4.1
How to Add a Graph to a Page
24.4.2
How to Create a Graph Using Tabular Data
24.4.2.1
Storing Tabular Data for a Graph in a Managed Bean
24.4.2.2
Creating a Graph Using Tabular Data
24.4.3
What Happens When You Create a Graph Using Tabular Data
24.4.4
What You May Need to Know About Graph Image Formats
24.5
Changing the Graph Type
24.6
Customizing the Appearance of Graphs
24.6.1
Changing the Color, Style, and Display of Graph Data Values
24.6.1.1
How to Specify the Color and Style for Individual Series Items
24.6.1.2
How to Enable Hiding and Showing Series Items
24.6.2
Formatting Data Values in Graphs
24.6.2.1
How to Format Categorical Data Values
24.6.2.2
How to Format Numerical Data Values
24.6.2.3
What You May Need to Know About Automatic Scaling and Precision
24.6.3
Formatting Text in Graphs
24.6.3.1
How to Globally Set Graph Font Using a Skin
24.6.4
Changing Graph Size and Style
24.6.4.1
How to Specify the Size of a Graph at Initial Display
24.6.4.2
How to Provide for Dynamic Resizing of a Graph
24.6.4.3
How to Use a Specific Style Sheet for a Graph
24.6.5
Changing Graph Background, Plot Area, and Title
24.6.5.1
How to Customize the Background and Plot Area of a Graph
24.6.5.2
How to Specify Titles and Footnotes in a Graph
24.6.6
Customizing Graph Axes and Labels
24.6.6.1
How to Specify the Title, Appearance, and Scaling of an Axis
24.6.6.2
How to Specify Scrolling on an Axis
24.6.6.3
How to Control the Appearance of Tick Marks and Labels on an Axis
24.6.6.4
How to Format Numbers on an Axis
24.6.6.5
How to Set Minimum and Maximum Values on a Data Axis
24.6.7
Customizing Graph Legends
24.6.8
Customizing Tooltips in Graphs
24.7
Customizing the Appearance of Specific Graph Types
24.7.1
Changing the Appearance of Pie Graphs
24.7.1.1
How to Customize the Overall Appearance of Pie Graphs
24.7.1.2
How to Customize an Exploding Pie Slice
24.7.2
Changing the Appearance of Lines in Graphs
24.7.2.1
How to Display Either Data Lines or Markers in Graphs
24.7.2.2
How to Change the Appearance of Lines in a Graph Series
24.7.3
Customizing Pareto Graphs
24.7.4
Customizing Scatter Graph Series Markers
24.8
Adding Specialized Features to Graphs
24.8.1
Adding Reference Lines or Areas to Graphs
24.8.1.1
How to Create Reference Lines or Areas During Design
24.8.1.2
What Happens When You Create Reference Lines or Areas During Design
24.8.1.3
How to Create Reference Lines or Areas Dynamically
24.8.2
Using Gradient Special Effects in Graphs
24.8.2.1
How to Add Gradient Special Effects to a Graph
24.8.2.2
What Happens When You Add a Gradient Special Effect to a Graph
24.8.3
Specifying Transparent Colors for Parts of a Graph
24.8.4
Adding Data Marker Selection Support for Graphs
24.8.4.1
How to Add Selection Support to Graphs
24.8.4.2
What You May Need to Know About Graph Data Marker Selection
24.8.5
Adding Context Menus to Graphs
24.8.5.1
How to Configure Graph Context Menus
24.8.5.2
What You May Need to Know About Flash Rendering Format
24.8.6
How to React to Changes in the Zoom and Scroll Levels
24.8.7
How to Provide Marker and Legend Dimming
24.8.8
Providing an Interactive Time Axis for Graphs
24.8.8.1
How to Define a Relative Range of Time Data for Display
24.8.8.2
How to Define an Explicit Range of Time Data for Display
24.8.8.3
How to Add a Time Selector to a Graph
24.8.9
Adding Alerts and Annotations to Graphs
24.9
Animating Graphs
24.9.1
How to Configure Graph Components to Display Active Data
24.9.2
How to Specify Animation Effects for Graphs
25
Using ADF Gauge Components
25.1
Introduction to the Gauge Component
25.1.1
Types of Gauges
25.1.2
Gauge Terminology
25.2
Understanding Data Requirements for Gauges
25.3
Creating a Gauge
25.3.1
How to Add a Gauge to a Page
25.3.2
Creating a Gauge Using Tabular Data
25.3.2.1
Storing Tabular Data for a Gauge in a Managed Bean
25.3.2.2
Structure of the List of Tabular Data
25.3.3
How to Create a Gauge Using Tabular Data
25.3.4
What Happens When You Create a Gauge Using Tabular Data
25.3.5
What You May Need to Know About Gauge Image Formats
25.4
Customizing Gauge Type, Layout, and Appearance
25.4.1
How to Change the Type of the Gauge
25.4.2
How to Determine the Layout of Gauges in a Gauge Set
25.4.3
Changing Gauge Size and Style
25.4.3.1
Specifying the Size of a Gauge at Initial Display
25.4.3.2
Providing Dynamic Resizing of a Gauge
25.4.3.3
Using a Custom Style Class for a Gauge
25.4.4
How to Add Thresholds to Gauges
25.4.4.1
Adding Static Thresholds to Gauges
25.4.5
How to Format Numeric Values in Gauges
25.4.5.1
Formatting the Numeric Value in a Gauge Metric or Tick Label
25.4.6
What Happens When You Format the Numbers in a Gauge Metric Label
25.4.7
What You May Need to Know About Automatic Scaling and Precision
25.4.8
How to Format Text in Gauges
25.4.9
How to Specify an N-Degree Dial
25.4.10
How to Customize Gauge Labels
25.4.10.1
Controlling the Position of Gauge Labels
25.4.10.2
Customizing the Colors and Borders of Gauge Labels
25.4.11
How to Customize Indicators and Tick Marks
25.4.11.1
Controlling the Appearance of Gauge Indicators
25.4.11.2
Specifying Tick Marks and Labels
25.4.11.3
Creating Exterior Tick Labels
25.4.12
Specifying Transparency for Parts of a Gauge
25.5
Adding Gauge Special Effects and Animation
25.5.1
How to Use Gradient Special Effects in a Gauge
25.5.1.1
Adding Gradient Special Effects to a Gauge
25.5.2
What Happens When You Add a Gradient Special Effect to a Gauge
25.5.3
How to Add Interactivity to Gauges
25.5.4
How to Animate Gauges
25.5.5
How to Animate Gauges with Active Data
25.5.5.1
Configuring Gauge Components to Display Active Data
25.5.5.2
Adding Animation to Gauges
25.6
Using Custom Shapes in Gauges
25.6.1
How to Create a Custom Shapes Graphic File
25.6.2
How to Use a Custom Shapes File
25.6.3
What You May Need to Know About Supported SVG Features
25.6.4
How to Set Custom Shapes Styles
26
Using ADF Geographic Map Components
26.1
Introduction to Geographic Maps
26.1.1
Available Map Themes
26.1.2
Geographic Map Terminology
26.1.3
Geographic Map Component Tags
26.1.3.1
Geographic Map Parent Tags
26.1.3.2
Geographic Map Child Tags
26.1.3.3
Tags for Modifying Map Themes
26.2
Understanding Data Requirements for Geographic Maps
26.3
Customizing Map Size, Zoom Control, and Selection Area Totals
26.3.1
How to Adjust the Map Size
26.3.2
How to Specify Strategy for Map Zoom Control
26.3.3
How to Total Map Selection Values
26.4
Customizing Map Themes
26.4.1
How to Customize Zoom Levels for a Theme
26.4.2
How to Customize the Labels of a Map Theme
26.4.3
How to Customize Color Map Themes
26.4.4
How to Customize Point Images in a Point Theme
26.4.5
What Happens When You Customize the Point Images in a Map
26.4.6
How to Customize the Bars in a Bar Graph Theme
26.4.7
What Happens When You Customize the Bars in a Map Bar Graph Theme
26.4.8
How to Customize the Slices in a Pie Graph Theme
26.4.9
What Happens When You Customize the Slices in a Map Pie Graph Theme
26.5
Adding a Toolbar to a Map
26.5.1
How to Add a Toolbar to a Map
26.5.2
What Happens When You Add a Toolbar to a Map
26.5.3
What You May Need to Know About Active Data Support for Map Point Themes
27
Using ADF Pivot Table Components
27.1
Introductions the ADF Pivot Table Component
27.1.1
Pivot Table Elements and Terminology
27.2
Understanding Data Requirements for a Pivot Table
27.3
Pivoting Layers
27.4
Displaying Large Data Sets in Pivot Tables
27.5
Using Selection in Pivot Tables
27.6
Sorting in a Pivot Table
27.7
Sizing in a Pivot Table
27.7.1
How to Set the Overall Size of a Pivot Table
27.7.2
How to Resize Rows, Columns, and Layers
27.7.3
What You May Need to Know About Resizing Rows, Columns, and Layers
27.8
Updating Pivot Tables with Partial Page Rendering
27.9
Exporting from a Pivot Table
27.10
Displaying Pivot Tables in Printable Mode
27.11
Customizing the Cell Content of a Pivot Table
27.11.1
How to Create a CellFormat Object for a Data Cell
27.11.2
How to Construct a CellFormat Object
27.11.3
How to Change Format and Text Styles
27.11.4
How to Create Stoplight and Conditional Formatting in a Pivot Table
27.12
Pivot Table Data Cell Stamping and Editing
27.12.1
How to Specify Custom Images for Data Cells
27.12.2
How to Specify Images, Icons, Links, and Read-Only Content in Header Cells
27.13
Using a Pivot Filter Bar with a Pivot Table
27.13.1
How to Associate a Pivot Filter Bar with a Pivot Table
28
Using ADF Timeline Components
28.1
Introduction to the Timeline Component
28.1.1
Timeline Use Cases and Examples
28.1.2
End User and Presentation Features
28.1.2.1
Layout Options
28.1.2.2
Timeline Item Selection
28.1.2.3
Timeline Grouping and Sorting
28.1.2.4
Drag and Drop Support
28.1.2.5
Content Delivery
28.1.2.6
Timeline Image Formats
28.1.2.7
Timeline Display in Printable or Emailable Modes
28.1.2.8
Active Data Support (ADS)
28.2
Using Timeline Components
28.2.1
Timeline Component Data Requirements
28.2.2
Configuring Timelines
28.2.3
How to Add a Timeline to a Page
28.2.4
What Happens When You Add a Timeline to a Page
28.3
Adding Data to Timeline Components
28.3.1
How to Add Data to a Timeline
28.3.2
What You May Need to Know About Configuring Data for a Dual Timeline
28.3.3
What You May Need to Know About Adding Data to Timelines
28.4
Customizing Timeline Display Elements
28.4.1
Configuring Timeline Items
28.4.2
How to Add a Custom Time Scale to a Timeline
28.5
Adding Interactive Features to Timelines
28.5.1
How to Add Popups to Timeline Items
28.5.2
How to Configure Timeline Context Menus
28.5.3
How to Add Drag and Drop to a Timeline
29
Using ADF Gantt Chart Components
29.1
Introduction to the ADF Gantt Chart Components
29.1.1
Types of Gantt Charts
29.1.2
Functional Areas of a Gantt Chart
29.1.3
Description of Gantt Chart Tasks
29.2
Understanding Gantt Chart Tags and Facets
29.3
Understanding Gantt Chart User Interactivity
29.3.1
Navigating in a Gantt Chart
29.3.1.1
Scrolling and Panning the List Region or the Chart Region
29.3.1.2
How to Navigate to a Specific Date in a Gantt Chart
29.3.1.3
How to Control the Visibility of Columns in the Table Region
29.3.2
How to Display Data in a Hierarchical List or a Flat List
29.3.3
How to Change the Gantt Chart Time Scale
29.4
Understanding Data Requirements for the Gantt Chart
29.4.1
Data for a Project Gantt Chart
29.4.2
Data for a Resource Utilization Gantt Chart
29.4.3
Data for a Scheduling Gantt Chart
29.5
Creating an ADF Gantt Chart
29.5.1
How to Add a Gantt Chart to a Page
29.5.2
What Happens When You Add a Gantt Chart to a Page
29.5.3
What You May Need to Know About Performing an Action on Selected Tasks or Resources
29.6
Customizing Gantt Chart Tasks and Resources
29.6.1
Creating a New Task Type
29.6.2
Configuring Stacked Bars in Resource Utilization Gantt Charts
29.6.3
Configuring a Resource Capacity Line
29.6.4
Configuring Custom Data Filters
29.6.5
Adding a Double-Click Event to a Task Bar
29.7
Customizing Gantt Chart Legends, Toolbars, and Context Menus
29.7.1
How to Customize a Gantt Chart Legend
29.7.2
Customizing Gantt Chart Toolbars
29.7.3
Customizing Gantt Chart Context Menus
29.8
Specifying Nonworking Days, Read-Only Features, and Time Axes
29.8.1
Identifying Nonworking Days in a Gantt Chart
29.8.1.1
How to Specify Weekdays as Nonworking Days
29.8.1.2
How to Identify Specific Dates as Nonworking Days
29.8.2
How to Apply Read-Only Values to Gantt Chart Features
29.8.3
Customizing the Time Axis of a Gantt Chart
29.8.3.1
How to Create and Use a Custom Time Axis
29.9
Adding Interactive Features to Gantt Charts
29.9.1
Configuring Page Controls in Gantt Charts
29.9.2
Configuring Synchronized Scrolling Between Gantt Charts
29.10
Printing a Gantt Chart
29.10.1
Print Options
29.10.2
Action Listener to Handle the Print Event
29.11
Using Gantt Charts as a Drop Target or Drag Source
30
Using ADF Treemap and Sunburst Components
30.1
Introduction to Treemaps and Sunbursts
30.1.1
Treemap and Sunburst Use Cases and Examples
30.1.2
End User and Presentation Features of Treemaps and Sunbursts
30.1.2.1
Treemap and Sunburst Layouts
30.1.2.2
Attribute Groups
30.1.2.3
Legend Support
30.1.2.4
Pattern Support
30.1.2.5
Node Selection Support
30.1.2.6
Tooltip Support
30.1.2.7
Popup Support
30.1.2.8
Context Menus
30.1.2.9
Drilling Support
30.1.2.10
Other Node Support
30.1.2.11
Drag and Drop Support
30.1.2.12
Sorting Support
30.1.2.13
Treemap and Sunburst Image Formats
30.1.2.14
Advanced Node Content
30.1.2.15
Printing and Email Support
30.1.2.16
Active Data Support (ADS)
30.1.2.17
Isolation Support (Treemap Only)
30.1.2.18
Treemap Group Node Header Customization (Treemap Only)
30.2
Using the Treemap and Sunburst Components
30.2.1
Treemap and Sunburst Data Requirements
30.2.2
Using the Treemap Component
30.2.2.1
Configuring Treemaps
30.2.2.2
How to Add a Treemap to a Page
30.2.2.3
What Happens When You Add a Treemap to a Page
30.2.3
Using the Sunburst Component
30.2.3.1
Configuring Sunbursts
30.2.3.2
How to Add a Sunburst to a Page
30.2.3.3
What Happens When You Add a Sunburst to a Page
30.3
Adding Data to Treemap and Sunburst Components
30.3.1
How to Add Data to Treemap or Sunburst Components
30.3.2
What You May Need to Know about Adding Data to Treemaps and Sunbursts
30.4
Customizing Treemap and Sunburst Display Elements
30.4.1
Configuring Treemap and Sunburst Display Size and Style
30.4.2
Configuring Pattern Display
30.4.3
Configuring Treemap and Sunburst Attribute Groups
30.4.3.1
How to Configure Treemap and Sunburst Discrete Attribute Groups
30.4.3.2
How to Configure Treemap or Sunburst Continuous Attribute Groups
30.4.3.3
What You May Need to Know About Configuring Attribute Groups
30.4.4
How to Configure Treemap and Sunburst Legends
30.4.5
Configuring the Treemap and Sunburst Other Node
30.4.5.1
How to Configure the Treemap and Sunburst Other Node
30.4.5.2
What You May Need to Know About Configuring the Treemap and Sunburst Other Node
30.4.6
Configuring Treemap and Sunburst Sorting
30.4.7
Configuring Treemap and Sunburst Advanced Node Content
30.4.7.1
How to Add Advanced Node Content to a Treemap
30.4.7.2
How to Add Advanced Root Node Content to a Sunburst:
30.4.7.3
What You May Need to Know About Configuring Advanced Node Content on Treemaps
30.4.8
How to Configure Animation in Treemaps and Sunbursts
30.4.9
Configuring Labels in Treemaps and Sunbursts
30.4.9.1
How to Configure Treemap Leaf Node Labels
30.4.9.2
How to Configure Sunburst Node Labels
30.4.10
Configuring Treemap Node Headers and Group Gap Display
30.4.10.1
How to Configure Treemap Node Headers
30.4.10.2
What You May Need to Know About Treemap Node Headers
30.4.10.3
How to Customize Treemap Group Gaps
30.5
Adding Interactive Features to Treemaps and Sunbursts
30.5.1
Configuring Treemap and Sunburst Tooltips
30.5.2
Configuring Treemap and Sunburst Popups
30.5.2.1
How to Add Popups to Treemap and Sunburst Components
30.5.2.2
What You May Need to Know About Adding Popups to Treemaps and Sunburst Components
30.5.3
Configuring Treemap and Sunburst Selection Support
30.5.3.1
How to Add Selection Support to Treemap and Sunburst Components
30.5.3.2
What You May Need to Know About Adding Selection Support to Treemaps and Sunbursts
30.5.4
Configuring Treemap and Sunburst Context Menus
30.5.4.1
How to Configure Treemap and Sunburst Context Menus
30.5.4.2
What You May Need to Know About Configuring Treemap and Sunburst Context Menus
30.5.5
Configuring Treemap and Sunburst Drilling Support
30.5.5.1
How to Configure Treemap and Sunburst Drilling Support
30.5.5.2
What You May Need to Know About Treemaps and Drilling Support
30.5.6
How to Add Drag and Drop to Treemaps and Sunbursts
30.5.7
Configuring Isolation Support (Treemap Only)
30.5.7.1
How to Disable Isolation Support
30.5.7.2
What You May Need to Know About Treemaps and Isolation Support
31
Using ADF Hierarchy Viewer Components
31.1
Introduction to Hierarchy Viewers
31.1.1
Understanding the Hierarchy Viewer Component
31.1.2
Hierarchy Viewer Elements and Terminology
31.1.3
Available Hierarchy Viewer Layout Options
31.1.4
What You May Need to Know About Hierarchy Viewer Rendering and HTML
31.2
Data Requirements for Hierarchy Viewers
31.3
Creating a Hierarchy Viewer
31.3.1
How to Add a Hierarchy Viewer to a Page
31.4
Managing Nodes in a Hierarchy Viewer
31.4.1
How to Specify Node Content
31.4.2
How to Configure the Controls on a Node
31.4.3
How to Specify a Node Definition for an Accessor
31.4.4
How to Associate a Node Definition with a Particular Set of Data Rows
31.4.5
How to Specify Ancestor Levels for an Anchor Node
31.5
Navigating in a Hierarchy Viewer
31.5.1
How to Configure Upward Navigation in a Hierarchy Viewer
31.5.2
How to Configure Same-Level Navigation in a Hierarchy Viewer
31.5.3
What Happens When You Configure Same-Level Navigation in a Hierarchy Viewer
31.6
Adding Interactivity to a Hierarchy Viewer Component
31.6.1
How to Configure 3D Tilt Panning
31.6.2
How to Configure Node Selection Action
31.6.3
Configuring a Hierarchy Viewer to Invoke a Popup Window
31.6.4
Configuring Hierarchy Viewer Drag and Drop
31.6.4.1
How to Configure Hierarchy Viewer Drag and Drop
31.6.4.2
What You May Need to Know About Configuring Hierarchy Viewer Drag and Drop
31.7
Using Panel Cards
31.7.1
How to Create a Panel Card
31.7.2
What Happens at Runtime When a Panel Card Component Is Rendered
31.8
Customizing the Appearance of a Hierarchy Viewer
31.8.1
How to Adjust the Size of a Hierarchy Viewer
31.8.2
How to Include Images in a Hierarchy Viewer
31.8.3
How to Configure the Display of the Control Panel
31.8.4
How to Configure the Display of Links and Labels
31.8.5
How to Disable the Hover Detail Window
31.9
Adding Search to a Hierarchy Viewer
31.9.1
How to Configure Searching in a Hierarchy Viewer
31.9.2
What You May Need to Know About Configuring Search in a Hierarchy Viewer
Part V Advanced Topics
32
Creating Custom ADF Faces Components
32.1
Introduction to Custom ADF Faces Components
32.1.1
Developing a Custom Component with JDeveloper
32.1.2
An Example Custom Component
32.2
Setting Up the Workspace and Starter Files
32.2.1
How to Set Up the JDeveloper Custom Component Environment
32.2.2
How to Add a Faces Configuration File
32.2.3
How to Add a MyFaces Trinidad Skins Configuration File
32.2.4
How to Add a Cascading Style Sheet
32.2.5
How to Add a Resource Kit Loader
32.2.6
How to Add a JavaServer Pages Tag Library Descriptor File
32.2.7
How to Add a JavaScript Library Feature Configuration File
32.2.8
How to Add a Facelets Tag Library Configuration File
32.3
Client-Side Development
32.3.1
How to Create a JavaScript File for a Component
32.3.2
How to Create a Javascript File for an Event
32.3.3
How to Create a JavaScript File for a Peer
32.3.4
How to Add a Custom Component to a JavaScript Library Feature Configuration File
32.4
Server-Side Development
32.4.1
How to Create a Class for an Event Listener
32.4.2
How to Create a Class for an Event
32.4.3
Creating the Component
32.4.4
How to Create a Class for a Component
32.4.5
How to Add the Component to the faces-config.xml File
32.4.6
How to Create a Class for a Resource Bundle
32.4.7
How to Create a Class for a Renderer
32.4.8
How to Add the Renderer to the faces-config.xml File
32.4.9
How to Create JSP Tag Properties
32.4.10
How to Configure the Tag Library Descriptor
32.4.11
How to Create a Resource Loader
32.4.12
How to Create a MyFaces Trinidad Cascading Style Sheet
32.5
Deploying a Component Library
32.6
Adding the Custom Component to an Application
32.6.1
How to Configure the Web Deployment Descriptor
32.6.2
How to Enable JavaScript Logging and Assertions
32.6.3
How to Add a Custom Component to JSF Pages
32.6.4
What You May Need to Know About Using the tagPane Custom Component
33
Allowing User Customization on JSF Pages
33.1
Introduction to User Customization
33.2
Implementing Session Change Persistence
33.2.1
How to Implement Session Change Persistence
33.2.2
What Happens When You Configure Your Application to Use Change Persistence
33.2.3
What Happens at Runtime
33.2.4
What You May Need to Know About Using Change Persistence on Templates and Regions
34
Adding Drag and Drop Functionality
34.1
Introduction to Drag and Drop Functionality
34.2
Adding Drag and Drop Functionality for Attributes
34.3
Adding Drag and Drop Functionality for Objects
34.3.1
How to Add Drag and Drop Functionality for a Single Object
34.3.2
What Happens at Runtime
34.3.3
What You May Need to Know About Using the ClientDropListener
34.4
Adding Drag and Drop Functionality for Collections
34.4.1
How to Add Drag and Drop Functionality for Collections
34.4.2
What You May Need to Know About the dragDropEndListener
34.5
Adding Drag and Drop Functionality for Components
34.5.1
How to Add Drag and Drop Functionality for Components
34.6
Adding Drag and Drop Functionality Into and Out of a panelDashboard Component
34.6.1
How to Add Drag and Drop Functionality Into a panelDashboard Component
34.6.2
How to Add Drag and Drop Functionality Out of a panelDashboard Component
34.7
Adding Drag and Drop Functionality to a Calendar
34.7.1
How to Add Drag and Drop Functionality to a Calendar
34.7.2
What You May Need to Know About Dragging and Dropping in a Calendar
34.8
Adding Drag and Drop Functionality for DVT Graphs
34.8.1
How to Add Drag and Drop Functionality for a DVT Graph
34.9
Adding Drag and Drop Functionality for DVT Gantt Charts
34.9.1
How to Add Drag and Drop Functionality for a DVT Gantt Component
34.10
Adding Drag and Drop Functionality for DVT Hierarchy Viewers, Sunbursts, and Treemaps
34.10.1
Drag and Drop Example for DVT Hierarchy Viewers
34.10.2
Drag and Drop Example for DVT Sunbursts
34.10.3
Drag and Drop Example for DVT Treemaps
34.10.4
How to Add Drag and Drop Functionality for a DVT Hierarchy Viewer, Sunburst, or Treemap Component
35
Using Different Output Modes
35.1
Introduction to Using Different Output Modes
35.2
Displaying a Page for Print
35.2.1
How to Use the showPrintablePageBehavior Tag
35.3
Creating Emailable Pages
35.3.1
How to Create an Emailable Page
35.3.2
How to Test the Rendering of a Page in an Email Client
35.3.3
What Happens at Runtime: How ADF Faces Converts JSF Pages to Emailable Pages
36
Using the Active Data Service with an Asynchronous Backend
36.1
Introduction to Using the Active Data Service
36.2
Process Overview for Using Active Data Service
36.3
Implement the ActiveModel Interface in a Managed Bean
36.3.1
What You May Need to Know About Read Consistency
36.4
Pass the Event Into the Active Data Service
36.5
Register the Data Update Event Listener
36.6
Configure the ADF Component to Display Active Data
Part VI Appendixes
A
ADF Faces Configuration
A.1
Introduction to 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
Assertions
A.2.3.6
Enabling the Application for Real User Experience Insight
A.2.3.7
Facelets Support
A.2.3.8
Dialog Prefix
A.2.3.9
Compression for CSS Class Names
A.2.3.10
Test Automation
A.2.3.11
UIViewRoot Caching
A.2.3.12
Themes and Tonal Styles
A.2.3.13
Partial Page Navigation
A.2.3.14
JavaScript Partitioning
A.2.3.15
Framebusting
A.2.3.16
Version Number Information
A.2.3.17
Suppressing Auto-Generated Component IDs
A.2.3.18
ADF Faces Caching Filter
A.2.3.19
Configuring Native Browser Context Menus for Command Links
A.2.3.20
Internet Explorer Compatibility View Mode
A.2.3.21
Session Timeout Warning
A.2.3.22
JSP Tag Execution in HTTP Streaming
A.2.3.23
Splash Screen
A.2.3.24
Graph and Gauge Image Format
A.2.3.25
Geometry Management for Layout and Table Components
A.2.4
What You May Need to Know About Other Context Parameters in web.xml
A.3
Configuration in faces-config.xml
A.3.1
How to Configure for ADF Faces in faces-config.xml
A.4
Configuration in adf-config.xml
A.4.1
How to Configure ADF Faces in adf-config.xml
A.4.2
Defining Caching Rules for ADF Faces Caching Filter
A.4.3
Configuring Flash as Component Output Format
A.4.4
Using Content Delivery Networks
A.4.4.1
What You May Need to Know About Skin Style Sheets and CDN
A.4.4.2
What You May Need to Know About JavaScript and CDN
A.5
Configuration in adf-settings.xml
A.5.1
How to Configure for ADF Faces in adf-settings.xml
A.5.2
What You May Need to Know About Elements in adf-settings.xml
A.5.2.1
Help System
A.5.2.2
Caching Rules
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
Custom File Uploaded Processor
A.6.2.12
Client-Side Validation and Conversion
A.7
Configuration in trinidad-skins.xml
A.8
Using the RequestContext EL Implicit Object
A.9
Using JavaScript Library Partitioning
A.9.1
How to Create a JavaScript Feature
A.9.2
How to Create JavaScript Partitions
A.9.3
What You May Need to Know About the adf-js-partitions.xml File
A.9.4
What Happens at Runtime: JavaScript Partitioning
B
Message Keys for Converter and Validator Messages
B.1
Introduction to ADF Faces Default Messages
B.2
Message Keys and Setter Methods
B.3
Converter and Validator Message Keys and Setter Methods
B.3.1
af:convertColor
B.3.2
af:convertDateTime
B.3.3
af:convertNumber
B.3.4
af:validateByteLength
B.3.5
af:validateDateRestriction
B.3.6
af:validateDateTimeRange
B.3.7
af:validateDoubleRange
B.3.8
af:validateLength
B.3.9
af:validateRegExp
C
Keyboard Shortcuts
C.1
Introduction to Keyboard Shortcuts
C.2
Tab Traversal
C.2.1
Tab Traversal Sequence on a Page
C.2.2
Tab Traversal Sequence in a Table
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 Widgets
C.3.5
Shortcut Keys for Screen Reader Mode
C.3.6
Shortcut Keys for Rich Text Editor Component
C.3.7
Shortcut Keys for Table, Tree, and Tree Table Components
C.3.8
Shortcut Keys for Table, Tree, and Tree Table Components in Screen Reader Mode
C.3.9
Shortcut Keys for ADF Data Visualization Components
C.3.10
Shortcut Keys for Calendar Component
C.3.11
Shortcut Keys for Calendar Component in Screen Reader Mode
C.4
Default Cursor or Focus Placement
C.5
The Enter Key
D
Creating Web Applications for Touch Devices Using ADF Faces
D.1
Introduction to Creating Web Applications for Touch Devices Using ADF Faces
D.2
How ADF Faces Behaves in Mobile Browsers on Touch Devices
D.3
Best Practices When Using ADF Faces Components in a Mobile Browser
E
Quick Start Layout Themes
F
Troubleshooting ADF Faces
F.1
Introduction to Troubleshooting ADF Faces
F.2
Getting Started with Troubleshooting the View Layer of an ADF Application
F.3
Resolving Common Problems
F.3.1
Application Displays an Unexpected White Background
F.3.2
Application is Missing Expected Images
F.3.3
Data Visualization Components Fail to Display as Expected
F.3.4
High Availability Application Displays a NotSerializableException
F.3.5
Unable to Reproduce Problem in All Web Browsers
F.3.6
Application is Missing Content
F.3.7
Browser Displays an ADF_Faces-60098 Error
F.3.8
Browser Displays an HTTP 404 or 500 Error
F.3.9
Browser Fails to Navigate Between Pages
F.4
Using My Oracle Support for Additional Troubleshooting Information
Scripting on this page enhances content navigation, but does not change the content in any way.