1. Oracle® Fusion Middleware
Web User Interface Developer’s Guide for Oracle Application
Development Framework
11g Release 1 (11.1.1)
B31973-02
November 2008
5. Contents
Preface ............................................................................................................................................................... xxi
Audience..................................................................................................................................................... xxi
Documentation Accessibility ................................................................................................................... xxi
Related Documents .................................................................................................................................. xxii
Conventions .............................................................................................................................................. xxii
Part I Getting Started with ADF Faces
1 Introduction to ADF Faces Rich Client
1.1 Introduction to Oracle ADF Faces Rich Client ....................................................................... 1-1
1.1.1 History of ADF Faces .......................................................................................................... 1-2
1.1.2 ADF Faces as Rich Client Components ............................................................................ 1-2
1.2 Architecture of ADF Faces Components ................................................................................. 1-3
1.2.1 Client-Side Components..................................................................................................... 1-3
1.2.2 ADF Faces Architectural Features..................................................................................... 1-4
1.3 ADF Faces Components............................................................................................................. 1-5
1.4 ADF Faces Demonstration Application................................................................................... 1-7
1.4.1 How to Download and Install the ADF Faces Demo Application ............................ 1-12
1.4.2 Overview of the File Explorer Application................................................................... 1-13
1.4.3 Viewing the Source Code In JDeveloper ....................................................................... 1-15
2 Getting Started with ADF Faces
2.1 Developing Declaratively in JDeveloper ................................................................................. 2-1
2.2 Creating an Application Workspace ........................................................................................ 2-2
2.2.1 How to Create an Application Workspace ...................................................................... 2-2
2.2.2 What Happens When You Create an Application Workspace ..................................... 2-3
2.3 Defining Page Flows................................................................................................................... 2-5
2.3.1 How to Define a Page Flow................................................................................................ 2-6
2.3.2 What Happens When You Use the Diagrammer to Create a Page Flow .................... 2-7
2.4 Creating a JSF Page ..................................................................................................................... 2-8
2.4.1 How to Create JSF Pages .................................................................................................... 2-9
2.4.2 What Happens When You Create a JSF Page .................................................................. 2-9
2.4.3 What You May Need to Know About Automatic Component Binding .................. 2-10
2.4.4 How to Add ADF Faces Components to JSF Pages..................................................... 2-14
2.4.5 What Happens When You Add Components to a Page ............................................. 2-16
v
6. 2.4.6 How to Set Component Attributes................................................................................. 2-17
2.4.7 What Happens When You Use the Property Inspector .............................................. 2-19
2.5 Creating EL Expressions ......................................................................................................... 2-19
2.5.1 How to Create an EL Expression.................................................................................... 2-19
2.5.2 How to Use EL Expressions Within Managed Beans.................................................. 2-21
2.6 Creating and Using Managed Beans..................................................................................... 2-22
2.6.1 How to Create a Managed Bean in JDeveloper............................................................ 2-23
2.6.2 What Happens When You Use JDeveloper to Create a Managed Bean................... 2-24
2.7 Viewing ADF Faces Source Code and Javadoc ................................................................... 2-24
Part II Understanding ADF Faces Architecture
3 Using ADF Faces Architecture
3.1 Introduction to Using ADF Faces Architecture ...................................................................... 3-1
3.2 Listening for Client Events ........................................................................................................ 3-3
3.3 Adding JavaScript to a Page...................................................................................................... 3-4
3.3.1 How to Use Inline JavaScript ............................................................................................. 3-4
3.3.2 How to Import JavaScript Libraries .................................................................................. 3-5
3.3.3 What You May Need to Know About Accessing Client Event Sources ...................... 3-6
3.4 Instantiating Client-Side Components..................................................................................... 3-6
3.5 Locating a Client Component on a Page ................................................................................. 3-7
3.5.1 What You May Need to Know About Finding Components in Naming Containers .......
3-8
3.6 Accessing Component Properties on the Client..................................................................... 3-9
3.6.1 How to Set Property Values on the Client ....................................................................... 3-9
3.6.2 What Happens at Runtime: How Client Properties Are Set on the Client............... 3-10
3.6.3 What You May Need to Know About Secured and Disconnected Properties ........ 3-10
3.7 Using Bonus Attributes for Client-Side Components ........................................................ 3-10
3.7.1 How to Create Bonus Attributes .................................................................................... 3-11
3.7.2 What You May Need to Know About Marshalling Bonus Attributes...................... 3-11
3.8 Understanding Rendering and Visibility ............................................................................. 3-11
3.8.1 How to Set Visibility Using Javascript .......................................................................... 3-13
3.8.2 What You May Need to Know About Visible and the isShowing Function............ 3-14
4 Understanding the JSF and ADF Faces Lifecycles
4.1 Introduction to the JSF and ADF Faces Lifecycles ................................................................. 4-1
4.2 The JSF Lifecycle ......................................................................................................................... 4-1
4.2.1 Using the Immediate Attribute.......................................................................................... 4-4
4.3 Using the Optimized Lifecycle.................................................................................................. 4-6
4.3.1 What You May Need to Know About Using the Immediate Attribute and the
Optimized Lifecycle 4-7
4.4 Using the Client-Side Lifecycle ................................................................................................. 4-8
4.5 Using Subforms to Create Regions on a Page......................................................................... 4-9
4.6 Object Scope Lifecycles ........................................................................................................... 4-10
4.7 Passing Values Between Pages .............................................................................................. 4-11
4.7.1 How to Use the pageFlowScope Scope Without Writing Java Code ........................ 4-13
4.7.2 What Happens at Runtime: Passing Values ................................................................. 4-13
vi
7. 5 Handling Events
5.1 Introduction to Events and Event Handling........................................................................... 5-1
5.1.1 Events and Partial Page Rendering................................................................................... 5-2
5.1.2 Client-Side Event Model..................................................................................................... 5-3
5.2 Using ADF Faces Server Events................................................................................................ 5-4
5.2.1 How to Use Server-Side Events ......................................................................................... 5-5
5.3 Using JavaScript for ADF Faces Client Events ....................................................................... 5-6
5.3.1 How to Return the Original Source of the Event ............................................................ 5-9
5.3.2 Using Client-Side Attributes for an Event .................................................................... 5-10
5.3.3 How to Prevent Events from Propagating to the Server ............................................ 5-10
5.3.4 How to Trigger Event Handler Execution .................................................................... 5-11
5.3.5 What Happens at Runtime: How Client-Side Events Work ...................................... 5-12
5.3.6 What You May Need to Know About Using Naming Containers............................ 5-13
5.4 Sending Custom Events from the Client to the Server....................................................... 5-13
5.4.1 How to Send Custom Events from the Client to the Server ....................................... 5-14
5.4.2 What Happens at Runtime: How Client and Server Listeners Work Together ...... 5-16
5.4.3 What You May Need to Know About Marshalling and Unmarshalling of Data.... 5-16
5.5 Executing a Script Within an Event Response..................................................................... 5-18
5.6 Using Client Behavior Tags .................................................................................................... 5-19
6 Validating and Converting Input
6.1 Introduction to ADF Faces Converters and Validators......................................................... 6-1
6.2 Conversion, Validation, and the JSF Lifecycle........................................................................ 6-2
6.3 Adding Conversion .................................................................................................................... 6-2
6.3.1 How to Add a Converter .................................................................................................... 6-3
6.3.2 How to Set Attributes on a Converter .............................................................................. 6-4
6.3.3 What Happens at Runtime ................................................................................................. 6-4
6.4 Creating Custom JSF Converters .............................................................................................. 6-5
6.4.1 How to Create a Custom JSF Converter........................................................................... 6-5
6.4.2 What Happens When You Use a Custom Converter ..................................................... 6-8
6.5 Adding Validation ...................................................................................................................... 6-8
6.5.1 How to Add Validation ...................................................................................................... 6-8
6.5.1.1 Adding ADF Faces Validation.................................................................................... 6-8
6.5.1.2 Using Validation Attributes ........................................................................................ 6-9
6.5.1.3 Using ADF Faces Validators ....................................................................................... 6-9
6.5.2 What Happens at Runtime .............................................................................................. 6-10
6.5.3 What You May Need to Know About Multiple Validators........................................ 6-11
6.6 Creating Custom JSF Validation............................................................................................ 6-11
6.6.1 How to Create a Backing Bean Validation Method ..................................................... 6-11
6.6.2 What Happens When You Create a Backing Bean Validation Method.................... 6-12
6.6.3 How to Create a Custom JSF Validator ......................................................................... 6-12
6.6.4 What Happens When You Use a Custom JSF Validator............................................. 6-14
7 Rerendering Partial Page Content
7.1 Introduction to Partial Page Rendering................................................................................... 7-1
7.2 Enabling Partial Page Rendering Declaratively ..................................................................... 7-2
vii
8. 7.2.1 How to Enable Partial Page Rendering ............................................................................ 7-4
7.2.2 What You May Need to Know About Using the Browser Back Button ...................... 7-5
7.2.3 What You May Need to Know About PPR and Screen Readers .................................. 7-6
7.3 Enabling Partial Page Rendering Programmatically ............................................................. 7-6
7.4 Partial Page Navigation ............................................................................................................. 7-7
7.4.1 How to Enable PPR Navigation ........................................................................................ 7-7
7.4.2 What You May Need to Know About PPR Navigation................................................. 7-7
Part III Using ADF Faces Components
8 Organizing Content on Web Pages
8.1 Introduction to Organizing Content on Web Pages .............................................................. 8-1
8.2 Starting to Lay Out a Page......................................................................................................... 8-4
8.2.1 Geometry Management and Component Stretching ..................................................... 8-5
8.2.2 Nesting Components Inside Components That Allow Stretching ............................... 8-8
8.2.3 Tips for Using Geometry Managed Components........................................................ 8-11
8.3 Arranging Contents to Stretch Across a Page...................................................................... 8-11
8.3.1 How to Use the panelStretchLayout Component ........................................................ 8-13
8.3.2 What You May Need to Know About Geometry Management and the
panelStretchLayout Component 8-14
8.4 Using Splitters to Create Resizable Panes ............................................................................ 8-15
8.4.1 How to Use the panelSplitter Component .................................................................... 8-17
8.4.2 What You May Need to Know About Geometry Management and the panelSplitter
Component 8-20
8.5 Arranging Page Contents in Predefined Areas ................................................................... 8-21
8.5.1 How to Use the panelBorderLayout Component ........................................................ 8-22
8.6 Arranging Content in Forms .................................................................................................. 8-23
8.6.1 How to Use the panelFormLayout Component........................................................... 8-24
8.6.2 What You May Need to Know About Using the group Component with the
panelFormLayout Component 8-28
8.7 Displaying and Hiding Contents Dynamically ................................................................... 8-32
8.7.1 How to Use the showDetail Component ...................................................................... 8-36
8.7.2 How to Use the showDetailHeader Component ......................................................... 8-37
8.7.3 How to Use the panelBox Component .......................................................................... 8-38
8.7.4 What You May Need to Know About Disclosure Events........................................... 8-40
8.8 Displaying or Hiding Contents in Accordion Panels and Tabbed Panels....................... 8-41
8.8.1 How to Use the PanelAccordion Component .............................................................. 8-43
8.8.2 How to Use the panelTabbed Component.................................................................... 8-44
8.8.3 How to Use the showDetailItem Component to Display Content in panelAccordion or
panelTabbed Components 8-45
8.8.4 What You May Need to Know About Geometry Management and the showDetailItem
Component 8-48
8.8.5 What You May Need to Know About showDetailItem Disclosure Events ............. 8-49
8.9 Displaying Items in a Content Container ............................................................................ 8-50
8.9.1 How to Use the panelHeader Component.................................................................... 8-51
8.10 Displaying a Bulleted List in One or More Columns ......................................................... 8-52
8.10.1 How to Use the panelList Component .......................................................................... 8-53
8.10.2 What You May Need to Know About Creating a List Hierarchy ............................. 8-54
viii
9. 8.11 Grouping Related Items .......................................................................................................... 8-55
8.11.1 How to Use the panelGroupLayout Component......................................................... 8-57
8.11.2 What You May Need to Know About Geometry Management and the
panelGroupLayout Component 8-59
8.12 Separating Content Using Blank Space or Lines ................................................................. 8-59
8.12.1 How to Use the spacer Component ............................................................................... 8-60
8.12.2 How to Use the Separator Component.......................................................................... 8-61
9 Using Input Components and Defining Forms
9.1 Introduction to Input Components and Forms ...................................................................... 9-1
9.2 Defining Forms............................................................................................................................ 9-3
9.2.1 How to Add a Form to a Page ........................................................................................... 9-4
9.2.2 How to Add a Subform to a Page...................................................................................... 9-5
9.2.3 How to Add a Reset Button to a Form ............................................................................. 9-5
9.3 Using the inputText Component .............................................................................................. 9-5
9.3.1 How to Add an inputText Component ............................................................................ 9-6
9.4 Using the Input Number Components .................................................................................... 9-8
9.4.1 How to Add an inputNumberSlider or an inputRangeSlider Component ................ 9-8
9.4.2 How to Add an inputNumberSpinbox Component....................................................... 9-9
9.5 Using Color and Date Choosers ............................................................................................ 9-10
9.5.1 How to Add an inputColor Component ....................................................................... 9-11
9.5.2 How to Add an InputDate Component ........................................................................ 9-12
9.6 Using Selection Components ................................................................................................. 9-13
9.6.1 How to Add Selection Components .............................................................................. 9-16
9.7 Using Shuttle Components..................................................................................................... 9-18
9.7.1 How to Add a selectManyShuttle or selectOrderShuttle Component...................... 9-20
9.7.2 What You May Need to Know About Using a Client Listener for Selection Events ........
9-21
9.8 Using the richTextEditor Component................................................................................... 9-23
9.9 Using File Upload .................................................................................................................... 9-25
9.9.1 How to Use the inputFile Component........................................................................... 9-27
9.9.2 What You May Need to Know About Temporary File Storage................................. 9-28
10 Presenting Data in Tables and Trees
10.1 Introduction to Tables, Trees, and Tree Tables ................................................................... 10-1
10.1.1 Content Delivery............................................................................................................... 10-3
10.1.2 Row Selection .................................................................................................................... 10-4
10.1.3 Editing Data in Tables, Trees, and Tree Tables ............................................................ 10-5
10.1.4 Using Popup Dialogs in Tables, Trees, and Tree Tables............................................. 10-7
10.1.5 Accessing Client Table, Tree, and Tree Table Components ....................................... 10-9
10.2 Displaying Data in Tables....................................................................................................... 10-9
10.2.1 Columns and Column Data .......................................................................................... 10-10
10.2.2 Formatting Tables ........................................................................................................... 10-11
10.2.3 Formatting Columns ...................................................................................................... 10-12
10.2.4 How to Display a Table on a Page ............................................................................... 10-13
10.2.5 What Happens When You Add a Table to a Page ..................................................... 10-19
ix
10. 10.2.6 What Happens at Runtime ............................................................................................ 10-20
10.2.7 What You May Need to Know About Programmatically Enabling Sorting for Table
Columns 10-21
10.2.8 What You May Need to Know About Performing an Action on Selected Rows in
Tables 10-21
10.2.9 What You May Need to Know About Dynamically Determining Values for Selected
Components in Tables 10-22
10.2.10 What You May Need to Know About Using the Iterator Tag ................................. 10-23
10.3 Adding Hidden Capabilities to a Table.............................................................................. 10-23
10.3.1 How to Use the detailStamp Facet ............................................................................... 10-24
10.3.2 What Happens at Runtime ............................................................................................ 10-25
10.4 Enabling Filtering in Tables.................................................................................................. 10-25
10.4.1 How to Add Filtering to a Table................................................................................... 10-26
10.5 Displaying Data in Trees....................................................................................................... 10-27
10.5.1 How to Display Data in Trees....................................................................................... 10-29
10.5.2 What Happens When You Add a Tree to a Page....................................................... 10-31
10.5.3 What Happens at Runtime ............................................................................................ 10-32
10.5.4 What You May Need to Know About Programmatically Expanding and Collapsing
Nodes 10-32
10.5.5 What You May Need to Know About Programmatically Selecting Nodes ........... 10-34
10.6 Displaying Data in Tree Tables............................................................................................ 10-34
10.6.1 How to Display Data in a Tree Table........................................................................... 10-36
10.7 Passing a Row as a Value...................................................................................................... 10-36
10.8 Displaying Table Menus, Toolbars, and Status Bars ........................................................ 10-37
10.8.1 How to Add a panelCollection with a Table, Tree, or Tree Table ........................... 10-39
10.9 Exporting Data from Table, Tree, or Tree Table................................................................ 10-39
10.9.1 How to Export Table, Tree, or Tree Table Data to an External Format .................. 10-41
10.9.2 What Happens at Runtime: How Row Selection Affects the Exported Data ........ 10-42
10.10 Accessing Selected Values on the Client From Components that Use Stamping ........ 10-42
10.10.1 How to Access Values From a Selection in Stamped Components......................... 10-43
10.10.2 What You May Need to Know About Accessing Selected Values .......................... 10-45
11 Using List-of-Values Components
11.1 Introduction to List-of-Values Components ........................................................................ 11-1
11.2 Creating the ListOfValues Data Model................................................................................. 11-5
11.3 Using the inputListOfValues Component............................................................................ 11-7
11.4 Using the InputComboboxListOfValues Component ........................................................ 11-8
12 Using Query Components
12.1 Introduction to Query Components...................................................................................... 12-1
12.2 Implementing the Model for Your Query ............................................................................ 12-3
12.3 Using the quickQuery Component ..................................................................................... 12-10
12.3.1 How to Add the quickQuery Component Using a Model ....................................... 12-11
12.3.2 How to Use a quickQuery Component Without a Model ........................................ 12-12
12.3.3 What Happens at Runtime: How the Framework Renders the quickQuery Component
and Executes the Search 12-13
12.4 Using the query Component ................................................................................................ 12-13
x
11. 12.4.1 How to Add the Query Component ............................................................................ 12-15
13 Using Popup Dialogs, Menus, and Windows
13.1 Introduction to Using Popup Elements ................................................................................ 13-1
13.2 Creating Inline Popup Elements............................................................................................ 13-2
13.2.1 Showing and Hiding Popup Elements .......................................................................... 13-3
13.2.2 Delivering Content to the Client..................................................................................... 13-3
13.2.3 Using Dialog Buttons ....................................................................................................... 13-4
13.2.4 How to Create an Inline Dialog ...................................................................................... 13-4
13.2.5 How to Create an Inline Window .................................................................................. 13-5
13.2.6 How to Create an Inline Context Menu ........................................................................ 13-6
13.3 Using Command Components to Show Popup Elements................................................. 13-6
13.3.1 How to Use the af:showPopupBehavior Tag ............................................................... 13-7
13.4 External Browser Popup Window......................................................................................... 13-9
13.4.1 How to Create External Dialogs and Page Flows ...................................................... 13-11
13.4.1.1 Defining a JSF Navigation Rule for Opening a Dialog ...................................... 13-12
13.4.1.2 Creating the JSF Page That Opens a Dialog ........................................................ 13-13
13.4.1.3 Creating the Dialog Page and Returning a Dialog Value.................................. 13-14
13.4.1.4 Passing a Value into a Dialog ................................................................................ 13-17
13.4.1.5 Handling the Return Value .................................................................................... 13-18
14 Using Menus, Toolbars, and Toolboxes
14.1 Introduction to Menus, Toolbars, and Toolboxes ............................................................... 14-1
14.2 Using Menus in a Menu Bar................................................................................................... 14-2
14.2.1 How to Create and Use Menus in a Menu Bar............................................................. 14-6
14.3 Using Toolbars ....................................................................................................................... 14-10
14.3.1 How to Create and Use Toolbars ................................................................................. 14-12
14.3.2 What Happens at Runtime: Determining the Size of Toolbars................................ 14-15
14.3.3 What You May Need to Know About Toolbars......................................................... 14-15
15 Presenting Data Using Output Components
15.1 Introduction to Output Text, Image, Icon, and Media Components ............................... 15-1
15.2 Displaying Output Text and Formatted Output Text ........................................................ 15-2
15.2.1 How to Display Output Text .......................................................................................... 15-4
15.3 Displaying Icons....................................................................................................................... 15-5
15.3.1 How to Display a Standard Icon .................................................................................... 15-5
15.4 Displaying Images ................................................................................................................... 15-5
15.5 Using Images as Links............................................................................................................. 15-6
15.5.1 How to Use an Image as One or More Go Links ......................................................... 15-6
15.6 Downloading Files................................................................................................................... 15-6
15.6.1 How to Create a File Download ..................................................................................... 15-8
15.7 Playing Video and Audio Clips ............................................................................................. 15-8
15.7.1 Media Players .................................................................................................................... 15-9
15.7.2 Display Size ....................................................................................................................... 15-9
15.7.3 Controls .............................................................................................................................. 15-9
15.7.4 Automatic Start and Repeated Play ............................................................................. 15-10
xi
12. 15.7.5 How to Play Audio and Video Clips ........................................................................... 15-10
16 Displaying Tips, Messages, and Help
16.1 Introduction to Displaying Tips and Messages................................................................... 16-1
16.2 Displaying Tips for Components .......................................................................................... 16-5
16.2.1 How to Display Tips for Components........................................................................... 16-5
16.3 Displaying Hints and Error Messages for Validation and Conversion ........................... 16-5
16.3.1 How to Define Custom Validator and Converter Messages...................................... 16-7
16.3.2 What You May Need to Know About Overriding Default Messages Globally ...... 16-8
16.3.3 How to Display Component Messages Inline .............................................................. 16-8
16.3.4 How to Display Global Messages Inline ....................................................................... 16-9
16.4 Grouping Components with a Single Label and Message................................................. 16-9
16.4.1 How to Use a panelLabelAndMessage Component.................................................. 16-10
16.5 Displaying Help for Components ....................................................................................... 16-11
16.5.1 How to Create Resource Bundle-Based Help............................................................. 16-14
16.5.2 How to Create XLIFF-Based Help................................................................................ 16-16
16.5.3 How to Create Managed Bean Help ............................................................................ 16-18
16.5.4 How to Create a Java Class Help Provider ................................................................. 16-20
16.5.5 How to Access Help Content from a UI Component................................................ 16-22
16.5.6 What You May Need to Know About Combining Different Message Types ....... 16-22
17 Working with Navigation Components
17.1 Introduction to Navigation Components ............................................................................. 17-1
17.2 Using Buttons and Links for Navigation.............................................................................. 17-2
17.2.1 How to Use Command Buttons and Command Links ............................................... 17-2
17.2.2 How to Use Go Buttons and Go Links .......................................................................... 17-3
17.3 Using Navigation Items for a Page Hierarchy..................................................................... 17-4
17.4 Creating a Simple Navigational Hierarchy.......................................................................... 17-8
17.4.1 How to Create a Simple Page Hierarchy....................................................................... 17-9
17.4.2 How to Use the breadCrumbs Component ................................................................ 17-12
17.5 Using a Menu Model to Create a Page Hierarchy............................................................. 17-13
17.5.1 How to Create the Menu Model Metadata ................................................................. 17-15
17.5.2 What Happens When You Use the Create ADF Menu Model Wizard .................. 17-22
17.5.3 How to Bind to the XMLMenuModel in the JSF Page .............................................. 17-23
17.5.4 How to Use the breadCrumbs Component ................................................................ 17-27
17.5.5 What Happens at Runtime ............................................................................................ 17-28
17.5.6 What You May Need to Know About Custom Node Attributes ............................ 17-30
17.6 Using Train Components to Create Navigation Items for a Multi-Step Process.......... 17-32
17.6.1 How to Create the Train Model.................................................................................... 17-35
17.6.2 How to Configure Managed Beans for the Train Model .......................................... 17-38
17.6.3 How to Bind to the Train Model in JSF Pages ............................................................ 17-41
18 Creating and Reusing Fragments, Templates, and Components
18.1 Introduction to Reusable Content ......................................................................................... 18-1
18.2 Using Page Fragments............................................................................................................. 18-2
18.2.1 How to Create a Page Fragment..................................................................................... 18-5
xii
13. 18.2.2 What Happens When You Create a Page Fragment.................................................... 18-6
18.2.3 How to Use a Page Fragment in a JSF Page.................................................................. 18-6
18.2.4 What Happens at Runtime: Resolving Page Fragments ............................................. 18-7
18.3 Using Page Templates ............................................................................................................. 18-7
18.3.1 How to Create a Page Template ................................................................................... 18-11
18.3.2 What Happens When You Create a Page Template .................................................. 18-14
18.3.3 How to Create JSF Pages Based on Page Templates.................................................. 18-15
18.3.4 What Happens When You Use a Template to Create a Page................................... 18-16
18.3.5 What Happens at Runtime: How Page Templates Are Resolved ........................... 18-17
18.3.6 What You May Need to Know About Templates and Naming Containers .......... 18-18
18.4 Using Declarative Components ........................................................................................... 18-18
18.4.1 How to Create a Declarative Component ................................................................... 18-20
18.4.2 What Happens When You Create a Declarative Component .................................. 18-25
18.4.3 How to Deploy Declarative Components ................................................................... 18-27
18.4.4 How to Use Declarative Components in JSF Pages ................................................... 18-27
18.4.5 What Happens When You Use a Declarative Component on a JSF Page .............. 18-29
18.4.6 What Happens at Runtime ............................................................................................ 18-30
19 Customizing the Appearance Using Styles and Skins
19.1 Introduction to Skins, Style Selectors, and Style Properties .............................................. 19-1
19.1.1 Oracle ADF Faces Skins ................................................................................................... 19-2
19.1.2 Skin Style Selectors ........................................................................................................... 19-4
19.1.3 Component Style Properties ........................................................................................... 19-7
19.2 Applying Custom Skins to Applications.............................................................................. 19-7
19.2.1 How to Add a Custom Skin to an Application ............................................................ 19-8
19.2.2 How to Register a Custom Skin...................................................................................... 19-8
19.2.3 How to Configure an Application to Use a Custom Skin......................................... 19-11
19.2.4 How to Deploy a Custom Skin in a JAR file ............................................................... 19-12
19.3 Defining Skin Style Properties ............................................................................................. 19-13
19.3.1 How to Apply Skins to Text.......................................................................................... 19-15
19.3.2 How to Apply Skins to Icons ........................................................................................ 19-17
19.3.3 How to Apply Skins to Messages................................................................................. 19-17
19.3.4 How to Apply Themes to Components....................................................................... 19-18
19.3.4.1 What You May Need to Know About Theme Inheritance ................................ 19-19
19.3.5 How to Create a Custom Alias ..................................................................................... 19-20
19.3.6 How to Configure a Component for Changing Skins Dynamically ....................... 19-20
19.4 Changing the Style Properties of a Component ............................................................... 19-21
19.4.1 How to Set an Inline Style ............................................................................................. 19-21
19.4.2 How to Set a Style Class................................................................................................. 19-22
20 Internationalizing and Localizing Pages
20.1 Introduction to Internationalization and Localization of ADF Faces Pages ................... 20-1
20.2 Defining Locales and Resource Bundles .............................................................................. 20-4
20.2.1 How to Define the Base Resource Bundle..................................................................... 20-5
20.2.2 How to Edit a Resource Bundle File .............................................................................. 20-7
20.2.3 How to Register Locales and Resource Bundles in Your Application...................... 20-9
xiii
14. 20.2.4 How to Use Resource Bundles in Your Application ................................................. 20-11
20.2.5 What You May Need to Know About Custom Skins and Control Hints............... 20-11
20.3 Using Automatic Resource Bundle Integration in JDeveloper ....................................... 20-11
20.3.1 How to Set Resource Bundle Options.......................................................................... 20-13
20.4 Configuring Optional ADF Faces Localization Properties .............................................. 20-14
20.4.1 How to Configure Optional Localization Properties ................................................ 20-14
21 Developing Accessible ADF Faces Pages
21.1 Introduction to Accessible ADF Faces Pages ....................................................................... 21-1
21.2 Developing Accessible ADF Faces Components and Pages.............................................. 21-1
21.2.1 Using ADF Faces Component Accessibility Guidelines ............................................. 21-2
21.2.2 How to Run an ADF Faces Accessibility Rules Audit ................................................ 21-4
21.2.3 How to Use Partial Page Rendering .............................................................................. 21-4
21.2.4 How to Use Scripting ....................................................................................................... 21-5
21.2.5 How to Use Styles............................................................................................................. 21-6
21.2.6 How to Use Page Structures and Navigation............................................................... 21-6
21.3 Defining Access Keys for ADF Faces Components ............................................................ 21-7
21.3.1 How to Define Access Keys for an ADF Faces Component ....................................... 21-7
21.3.2 How to Define Localized Labels and Access Keys ...................................................... 21-9
21.4 Selecting Accessibility Modes .............................................................................................. 21-10
21.4.1 How to Configure Accessibility Support in trinidad-config.xml ............................ 21-10
21.5 Providing Text for Screen Reader Support ........................................................................ 21-11
21.5.1 How to Provide Screen Reader Support for Images, Icons and Other Objects ..... 21-11
21.5.2 How to Provide Screen Reader Support for Frames ................................................. 21-11
21.5.3 How to Provide Screen Reader Support for Tables ................................................... 21-12
21.5.4 How to Provide Screen Reader Support for Text....................................................... 21-13
Part IV Using ADF Data Visualization Components
22 Introduction to ADF Data Visualization Components
22.1 Introducing ADF Data Visualization Components ............................................................ 22-1
22.2 Defining the ADF Data Visualization Components ........................................................... 22-1
22.2.1 Graph .................................................................................................................................. 22-1
22.2.2 Gauge.................................................................................................................................. 22-5
22.2.3 Pivot Table ......................................................................................................................... 22-7
22.2.4 Geographic Map ............................................................................................................... 22-7
22.2.5 Gantt ................................................................................................................................... 22-8
22.3 Providing Data for ADF Data Visualization Components ................................................ 22-9
22.4 Downloading Custom Fonts for Flash Images .................................................................... 22-9
23 Using ADF Graph Components
23.1 Introduction to the ADF Graph Component ....................................................................... 23-1
23.2 Understanding the ADF Graph Tags .................................................................................... 23-2
23.2.1 Graph-Specific Tags ......................................................................................................... 23-3
23.2.2 Common Graph Child Tags ............................................................................................ 23-4
23.2.3 Graph-Specific Child Tags............................................................................................... 23-5
xiv
15. 23.2.4 Child Set Tags.................................................................................................................... 23-5
23.3 Understanding Data Requirements for Graphs .................................................................. 23-6
23.3.1 Area Graphs Data Requirements.................................................................................... 23-7
23.3.2 Bar Graph Data Requirements........................................................................................ 23-7
23.3.3 Bubble Graph Data Requirements ................................................................................. 23-8
23.3.4 Combination Graph Data Requirements....................................................................... 23-8
23.3.5 Funnel Graph Data Requirements ................................................................................. 23-9
23.3.6 Line Graph Data Requirements ...................................................................................... 23-9
23.3.7 Pareto Graph Data Requirements .................................................................................. 23-9
23.3.8 Pie Graph Data Requirements ...................................................................................... 23-10
23.3.9 Polar Graph Data Requirements .................................................................................. 23-10
23.3.10 Radar Graph Data Requirements ................................................................................. 23-10
23.3.11 Scatter Graph Data Requirements................................................................................ 23-11
23.3.12 Stock Graph Data Requirements .................................................................................. 23-11
23.3.12.1 Stock Graphs: High-Low-Close ............................................................................. 23-11
23.3.12.2 Stock Graphs: High-Low-Close with Volume..................................................... 23-12
23.3.12.3 Stock Graphs: Open-High-Low-Close.................................................................. 23-12
23.3.12.4 Stock Graphs: Open-High-Low-Close with Volume.......................................... 23-12
23.3.12.5 Candle Stock Graphs: Open-Close ....................................................................... 23-12
23.3.12.6 Candle Stock Graphs: Open-Close with Volume ............................................... 23-12
23.3.12.7 Candle Stock Graphs: Open-High-Low-Close ................................................... 23-13
23.3.12.8 Candle Stock Graphs: Open-High-Low-Close with Volume ........................... 23-13
23.4 Creating an ADF Graph ....................................................................................................... 23-13
23.4.1 How to Create a Graph Using Tabular Data ............................................................. 23-13
23.4.1.1 Storing Tabular Data for a Graph in a Managed Bean....................................... 23-14
23.4.1.2 Creating a Graph Using Tabular Data.................................................................. 23-15
23.4.2 What Happens When You Create a Graph Using Tabular Data ............................. 23-15
23.5 Customizing Common Graph Features.............................................................................. 23-16
23.5.1 Changing the Color and Style of Graph Bars, Lines, Areas, Points, and Slices..... 23-16
23.5.1.1 How to Specify the Color and Style for Individual Series Items...................... 23-16
23.5.1.2 How to Control the Number of Different Colors Used for Series Items ......... 23-17
23.5.2 Formatting Numbers in Graphs ................................................................................... 23-17
23.5.2.1 How to Format Numbers in the Y1-Axis of a Graph ......................................... 23-17
23.5.2.2 What Happens When You Format the Numbers in the Y1-Axis of a Graph.. 23-18
23.5.2.3 How to Format Numbers for the Marker Text of a Graph ............................... 23-18
23.5.2.4 What Happens When You Format Numbers in the Marker Text of a Graph 23-18
23.5.3 Formatting Text in Graphs ............................................................................................ 23-19
23.5.4 Changing Graph Size and Style ................................................................................... 23-19
23.5.4.1 How to Specify the Size of a Graph at Initial Display........................................ 23-19
23.5.4.2 How to Provide for Dynamic Resizing of a Graph ............................................ 23-19
23.5.4.3 How to Use a Specific Style Sheet for a Graph.................................................... 23-20
23.5.5 Changing Graph Background, Plot Area, and Title .................................................. 23-20
23.5.5.1 How to Customize the Background and Plot Area of a Graph ........................ 23-20
23.5.5.2 How to Specify Titles and Footnotes in a Graph ................................................ 23-21
23.5.6 Customizing Graph Axes and Labels .......................................................................... 23-22
23.5.6.1 How to Specify the Title, Appearance, and Scaling of an Axis ........................ 23-22
23.5.6.2 How to Control the Appearance of Tick Marks and Labels on an Axis.......... 23-23
xv
16. 23.5.6.3 How to Format Numbers on an Axis ................................................................... 23-24
23.5.6.4 How to Set the Starting Value of a Y-Axis ........................................................... 23-24
23.5.7 Customizing Graph Legends ........................................................................................ 23-24
23.5.8 Customizing Tooltips in Graphs .................................................................................. 23-25
23.6 Customizing the Appearance of Specific Graph Types ................................................... 23-25
23.6.1 Changing the Type of ADF Graphs ............................................................................. 23-25
23.6.2 Changing the Appearance of Pie Graphs.................................................................... 23-26
23.6.2.1 How to Customize the Overall Appearance of Pie Graphs .............................. 23-26
23.6.2.2 How to Specify an Exploding Pie Slice ................................................................ 23-26
23.6.3 Changing the Appearance of Line Graphs ................................................................. 23-27
23.6.3.1 How to Display Either Data Lines or Markers in a Line Graph ....................... 23-27
23.6.3.2 How to Change the Appearance of Lines in a Graph Series............................. 23-27
23.6.4 Customizing Pareto Graphs .......................................................................................... 23-28
23.7 Adding Specialized Features to Graphs ............................................................................. 23-28
23.7.1 Adding Reference Lines or Areas to Graphs .............................................................. 23-28
23.7.1.1 How to Create Reference Lines or Areas During Design .................................. 23-28
23.7.1.2 What Happens When You Create Reference Lines or Areas During Design. 23-29
23.7.1.3 How to Create Reference Lines or Areas Dynamically...................................... 23-30
23.7.2 Using Gradient Special Effects in Graphs ................................................................... 23-31
23.7.2.1 How to Add Gradient Special Effects to a Graph............................................... 23-31
23.7.2.2 What Happens When You Add a Gradient Special Effect to a Graph ............ 23-32
23.7.3 Specifying Transparent Colors for Parts of a Graph ................................................. 23-32
23.7.4 Providing Interactive Capability for Graphs .............................................................. 23-32
23.7.4.1 How to Provide Line and Legend Highlighting ................................................. 23-33
23.7.4.2 How to Hide or Show Sets of Related Markers .................................................. 23-33
23.7.4.3 How to React to Changes in the Zoom and Scroll Levels.................................. 23-33
23.7.5 Providing an Interactive Time Axis for Graphs ......................................................... 23-34
23.7.5.1 How to Define a Relative Range of Time Data for Display............................... 23-34
23.7.5.2 How to Define an Explicit Range of Time Data for Display ............................. 23-34
24 Using ADF Gauge Components
24.1 Introduction to the ADF Gauge Component ....................................................................... 24-1
24.1.1 Types of Gauges................................................................................................................ 24-3
24.1.2 Gauge Terminology.......................................................................................................... 24-4
24.2 Understanding Data Requirements for Gauges .................................................................. 24-5
24.3 Creating an ADF Gauge.......................................................................................................... 24-5
24.3.1 Creating a Gauge Using Tabular Data........................................................................... 24-6
24.3.1.1 Storing Tabular Data for a Gauge in a Managed Bean ........................................ 24-6
24.3.1.2 Structure of the List of Tabular Data ...................................................................... 24-6
24.3.2 How to Create a Gauge Using Tabular Data ................................................................ 24-7
24.3.3 What Happens When You Create a Gauge Using Tabular Data............................... 24-8
24.4 Customizing Common Gauge Features ............................................................................... 24-8
24.4.1 Changing the Type of the Gauge.................................................................................... 24-8
24.4.2 Determining the Layout of Gauges in a Gauge Set ..................................................... 24-8
24.4.3 Changing Gauge Size and Style...................................................................................... 24-9
24.4.3.1 How to Specify the Size of a Gauge at Initial Display ......................................... 24-9
24.4.3.2 How to Provide For Dynamic Resizing of a Gauge ............................................. 24-9
xvi
17. 24.4.3.3 How to Use a Custom Style Class for a Gauge ................................................... 24-10
24.4.4 Adding Thresholds to Gauges ...................................................................................... 24-10
24.4.4.1 How to Add Static Thresholds to Gauges ........................................................... 24-10
24.4.4.2 What You May Need to Know About Adding Thresholds to Gauges............ 24-11
24.4.5 Formatting Numbers in Gauges ................................................................................... 24-11
24.4.5.1 How to Format the Number in a Gauge Metric Label ....................................... 24-11
24.4.5.2 What Happens When You Format the Number in a Gauge Metric Label...... 24-12
24.4.6 Formatting Text in Gauges ............................................................................................ 24-12
24.4.6.1 How to Format Text in a Gauge Metric Labels ................................................... 24-12
24.4.6.2 What Happens When You Format Text in a Gauge Metric Label.................... 24-12
24.4.7 Customizing Gauge Labels ........................................................................................... 24-13
24.4.7.1 How to Control the Position of Gauge Labels..................................................... 24-13
24.4.7.2 How to Customize the Colors and Borders of Gauge Labels ........................... 24-13
24.4.8 Customizing Indicators and Tick Marks ..................................................................... 24-13
24.4.8.1 How to Control the Appearance of Gauge Indicators ....................................... 24-13
24.4.8.2 How to Specify Tick Marks and Labels ............................................................... 24-14
24.5 Customizing Specialized Gauge Features .......................................................................... 24-14
24.5.1 Using Gradient Special Effects in a Gauge.................................................................. 24-14
24.5.1.1 How to Add Gradient Special Effects to a Gauge............................................... 24-15
24.5.1.2 What Happens When You Add a Gradient Special Effect to a Gauge ............ 24-16
25 Using ADF Pivot Table Components
25.1 Introduction tothe ADF Pivot Table Component................................................................ 25-1
25.1.1 Pivot Table Elements and Terminology ........................................................................ 25-1
25.1.2 Drilling Down in a Pivot Table....................................................................................... 25-2
25.1.3 Pivot Layer Handles ......................................................................................................... 25-2
25.2 Understanding Data Requirements for a Pivot Table ........................................................ 25-3
25.3 Sizing in a Pivot Table ............................................................................................................. 25-3
25.3.1 How to Set the Overall Size of a Pivot Table ................................................................ 25-4
25.3.2 How to Resize Rows and Columns ............................................................................... 25-4
25.3.2.1 What You May Need to Know About Resizing Rows and Columns ................ 25-4
25.4 Customizing the Cell Content of a Pivot Table ................................................................... 25-5
25.4.1 How to Create a CellFormat Object for a Data Cell..................................................... 25-5
25.4.2 Constructing a CellFormat Object .................................................................................. 25-6
25.4.3 Changing Format and Text Styles .................................................................................. 25-6
25.4.4 Creating Stoplight and Conditional Formatting in a Pivot Table ............................ 25-7
26 Using ADF Geographic Map Components
26.1 Introduction toGeographic Maps .......................................................................................... 26-1
26.1.1 Available Map Themes .................................................................................................... 26-1
26.1.2 Geographic Map Terminology ....................................................................................... 26-2
26.1.3 Geographic Map Component Tags ................................................................................ 26-4
26.1.3.1 Geographic Map Parent Tags .................................................................................. 26-4
26.1.3.2 Geographic Map Child Tags .................................................................................... 26-5
26.1.3.3 Tags for Modifying Map Themes............................................................................ 26-5
26.2 Understanding Data Requirements for Geographic Maps ................................................ 26-6
xvii
18. 26.3 Customizing the Geographic Map ........................................................................................ 26-6
26.3.1 How to Adjust the Map Size ........................................................................................... 26-6
26.3.2 How to Specify Strategy for Map Zoom Control ......................................................... 26-6
26.4 Customizing Map Themes...................................................................................................... 26-7
26.4.1 How to Customize Zoom Levels for a Theme.............................................................. 26-7
26.4.2 How to Customize the Labels of a Map Theme ........................................................... 26-7
26.4.3 How to Customize Map Themes.................................................................................... 26-8
26.4.4 Customizing Point Images in a Point Theme ............................................................... 26-8
26.4.4.1 How to Customize Point Images............................................................................. 26-8
26.4.4.2 What Happens When You Customize the Point Images in a Map .................... 26-9
26.4.5 Customizing the Bars in a Bar Graph Theme ............................................................. 26-10
26.4.5.1 How to Customize the Bars in a Map Bar Graph Theme .................................. 26-10
26.4.5.2 What Happens When You Customize the Bars in a Map Bar Graph Theme . 26-11
26.4.6 Customizing the Slices in a Pie Graph Theme............................................................ 26-11
26.4.6.1 How to Customize the Slices in a Map Pie Graph Theme................................. 26-11
26.4.6.2 What Happens When You Customize the Slices in a Map Pie Graph Theme 26-12
26.5 Adding a Toolbar to a Map .................................................................................................. 26-12
26.5.1 How to Add a Toolbar to a Map .................................................................................. 26-12
26.5.2 What Happens When You Add a Toolbar to a Map ................................................. 26-13
27 Using ADF Gantt Chart Components
27.1 Introduction to the ADF Gantt Chart Components ............................................................ 27-1
27.1.1 Types of Gantt Charts ...................................................................................................... 27-1
27.1.2 Description of Project Gantt Chart Tasks ...................................................................... 27-3
27.1.3 Main Functional Parts of a Gantt Chart ........................................................................ 27-3
27.1.4 Relationship Between the Gantt Chart List Region and the Chart Region .............. 27-4
27.2 Understanding Data Requirements for the Gantt Chart ................................................... 27-5
27.2.1 Data for a Project Gantt Chart......................................................................................... 27-5
27.2.2 Data for a Resource Utilization Gantt Chart................................................................. 27-5
27.2.3 Data for a Scheduling Gantt Chart ................................................................................. 27-5
27.2.4 How to Display Data in a Hierarchical List or a Flat List........................................... 27-6
27.3 Navigating in a Gantt Chart ................................................................................................... 27-6
27.3.1 Scrolling the List Region or the Chart Region .............................................................. 27-6
27.3.2 How to Navigate to a Specific Date in a Gantt Chart.................................................. 27-6
27.3.3 How to Control the Visibility of Columns in the List Region.................................... 27-6
27.4 Zooming on the Gantt Chart Time Axis ............................................................................... 27-7
27.4.1 How to Customize Time Axis Settings.......................................................................... 27-7
27.4.2 How to Zoom In or Zoom Out on a Time Axis ............................................................ 27-7
27.5 Identifying Nonworking Days in a Gantt Chart ................................................................. 27-8
27.5.1 How to Specify Weekdays as Nonworking Days ........................................................ 27-8
27.5.2 How to Identify Specific Dates as Nonworking Days................................................. 27-8
27.6 Printing a Gantt Chart ............................................................................................................. 27-9
27.6.1 Print Options ..................................................................................................................... 27-9
27.6.2 Action Listener to Handle the Print Event.................................................................... 27-9
Part V Advanced Topics
xviii
19. 28 Persisting Component Changes
28.1 Introduction to Using Change Persistence........................................................................... 28-1
28.2 Implementing Session Change Persistence.......................................................................... 28-2
28.2.1 How to Implement Session Change Persistence .......................................................... 28-2
28.2.2 What Happens When You Configure Your Application to Use Change Persistence .......
28-3
28.2.3 What Happens at Runtime .............................................................................................. 28-3
28.2.4 What You May Need to Know About Using Change Persistence on Templates and
Regions 28-3
29 Adding Drag and Drop Functionality
29.1 Introduction to Drag and Drop Functionality ..................................................................... 29-1
29.2 Adding Drag and Drop Functionality for Attributes ......................................................... 29-3
29.3 Adding Drag and Drop Functionality for Objects .............................................................. 29-3
29.3.1 How to Add Drag and Drop Functionality for a Single Object ................................. 29-4
29.3.2 What Happens at Runtime .............................................................................................. 29-7
29.3.3 What You May Need to Know About Using the ClientDropListener...................... 29-8
29.4 Adding Drag and Drop Functionality for Collections ....................................................... 29-8
29.4.1 How to Add Drag and Drop Functionality for Collections........................................ 29-9
29.4.2 What You May Need to Know About the dragDropEndListener........................... 29-11
29.5 Adding Drag and Drop Functionality for Components .................................................. 29-11
29.5.1 How to Add Drag and Drop Functionality for Components................................... 29-12
Part VI Appendices
A ADF Faces Configuration
A.1 Introduction to Configuring ADF Faces................................................................................. A-1
A.2 Configuration in web.xml......................................................................................................... A-1
A.2.1 How to Configure for JSF and ADF Faces in web.xml.................................................. A-2
A.2.2 What You May Need to Know About Required Elements in web.xml ...................... A-3
A.2.3 What You May Need to Know About ADF Faces Context Parameters in web.xml. A-4
A.2.3.1 State Saving .................................................................................................................. A-4
A.2.3.2 Debugging .................................................................................................................... A-5
A.2.3.3 File Uploading.............................................................................................................. A-5
A.2.3.4 Resource Debug Mode................................................................................................ A-6
A.2.3.5 Change Persistence...................................................................................................... A-6
A.2.3.6 Assertions ..................................................................................................................... A-6
A.2.3.7 Profiling......................................................................................................................... A-7
A.2.3.8 Facelets Support........................................................................................................... A-7
A.2.3.9 Dialog Prefix................................................................................................................. A-7
A.2.3.10 Compression for CSS Class Names........................................................................... A-7
A.2.3.11 Test Automation .......................................................................................................... A-7
A.2.3.12 UIViewRoot Caching .................................................................................................. A-8
A.2.3.13 Themes and Tonal Styles ............................................................................................ A-8
A.2.3.14 Partial Page Navigation .............................................................................................. A-8
A.2.4 What You May Need to Know About Other Context Parameters in web.xml ......... A-9
xix
20. A.3 Configuration in faces-config.xml ........................................................................................... A-9
A.3.1 How to Configure for ADF Faces in faces-config.xml................................................... A-9
A.4 Configuration in adf-config.xml ............................................................................................ A-11
A.4.1 How to Configure ADF Faces in adf-config.xml.......................................................... A-11
A.5 Configuration in adf-settings.xml ......................................................................................... A-11
A.5.1 How to Configure for ADF Faces in adf-settings.xml................................................. A-11
A.5.2 What You May Need to Know About Elements in adf-settings.xml ........................ A-12
A.5.2.1 Help System ............................................................................................................... A-12
A.6 Configuration in trinidad-config.xml ................................................................................... A-13
A.6.1 How to Configure ADF Faces Features in trinidad-config.xml................................. A-13
A.6.2 What You May Need to Know About Elements in trinidad-config.xml .................. A-14
A.6.2.1 Animation Enabled ................................................................................................... A-14
A.6.2.2 Skin Family ................................................................................................................. A-14
A.6.2.3 Time Zone and Year .................................................................................................. A-15
A.6.2.4 Enhanced Debugging Output.................................................................................. A-15
A.6.2.5 Page Accessibility Level ........................................................................................... A-15
A.6.2.6 Language Reading Direction ................................................................................... A-16
A.6.2.7 Currency Code and Separators for Number Groups and Decimal Points........ A-16
A.6.2.8 Formatting Dates and Numbers Locale ................................................................. A-17
A.6.2.9 Output Mode.............................................................................................................. A-17
A.6.2.10 Number of Active PageFlowScope Instances........................................................ A-17
A.6.2.11 Custom File Uploaded Processor ............................................................................ A-17
A.6.2.12 Client-Side Validation and Conversion.................................................................. A-17
A.7 Configuration in trinidad-skins.xml ..................................................................................... A-18
A.8 Using the RequestContext EL Implicit Object ..................................................................... A-18
B Message Keys for Converter and Validator Messages
B.1 Introduction to ADF Faces Default Messages ....................................................................... B-1
B.2 Message Keys and Setter Methods .......................................................................................... B-1
B.3 Converter and Validator Message Keys and Setter Methods.............................................. B-2
B.3.1 af:convertColor.................................................................................................................... B-2
B.3.2 af:convertDateTime ............................................................................................................ B-2
B.3.3 af:convertNumber............................................................................................................... B-3
B.3.4 af:validateByteLength ........................................................................................................ B-4
B.3.5 af:validateDateRestriction ................................................................................................. B-4
B.3.6 af:validateDateTimeRange ................................................................................................ B-5
B.3.7 af:validateDoubleRange..................................................................................................... B-6
B.3.8 af:validateLength ................................................................................................................ B-7
B.3.9 af:validateRegExp ............................................................................................................... B-8
xx