How to Configure the Display of the Control Panel How to Configure the Display of Links and Labels

29-26 Web User Interface Developers Guide for Oracle Application Development Framework Example 29–5 shows sample code for configuring search in a hierarchy viewer. Example 29–5 Sample Hierarchy Viewer Search Code dvt:hierarchyViewer dvt:search id=searchId value={bindings.lastNameParam.inputValue} actionListener={bindings.ExecuteWithParams1.execute} f:facet name=end af:commandLink text=Advanced af:showPopupBehavior popupId=::mypop triggerType=action af:commandLink f:facet dvt:searchResults id=searchResultId emptyText={bindings.searchResult1.viewable ? No match. : Access Denied.} fetchSize=25 value={bindings.searchResult1.collectionModel} resultListener={bindings.ExecuteWithParams.execute} var=resultRow af:setPropertyListener from={resultRow.Id} to={bindings.employeeId.inputValue} type=action f:facet name=content af:panelGroupLayout inlineStyle=width:110px;height:20px; af:outputText value={resultRow.Lastname} id=ot1 inlineStyle=color:blue; af:outputText value={resultRow.Firstname} id=ot2 af:panelGroupLayout f:facet dvt:searchResults dvt:search dvt:hierarchyViewer

29.8.2 What You May Need to Know About Configuring Search in a Hierarchy Viewer

Search in a hierarchy viewer is based on the searchable attributes or columns of the data collection that is the basis of the hierarchy viewer data model. Using a query results collection defined in data controls in Oracle ADF, JDeveloper makes this a declarative task. For more information, see the How to Create a Databound Search in a Hierarchy Viewer section in the Oracle Fusion Middleware Fusion Developers Guide for Oracle Application Development Framework. Part V Part V Advanced Topics Part V contains the following chapters: ■ Chapter 30, Creating Custom ADF Faces Components ■ Chapter 31, Allowing User Customization on JSF Pages ■ Chapter 32, Adding Drag and Drop Functionality ■ Chapter 33, Using Different Output Modes 30 Creating Custom ADF Faces Components 30-1 30 Creating Custom ADF Faces Components This chapter describes how to create custom ADF Faces rich client components. This chapter includes the following sections: ■ Section 30.1, Introduction to Custom ADF Faces Components ■ Section 30.2, Setting Up the Workspace and Starter Files ■ Section 30.3, Client-Side Development ■ Section 30.4, Server-Side Development ■ Section 30.5, Deploying a Component Library ■ Section 30.6, Adding the Custom Component to an Application

30.1 Introduction to Custom ADF Faces Components

The ADF Faces component library provides a comprehensive set of UI components that covers most of your requirements. However, there are situations when you will want to create a custom rich component that is specific to your application. A custom rich component will allow you to have custom behavior and perform actions that best suit the needs of your application. JSF technology is built to allow self-registering components and other framework parts. The core JSF runtime at web application startup accomplishes this by inspecting all JAR files in the class path. Any JAR files whose META-INFfaces-config.xml file contains JSF artifacts will be loaded. Therefore, you can package custom ADF Faces components in a JAR file and simply add it into the web project. For each ADF Faces component, there is a server-side component and there can also be a client-side component. On the server, for JSPs, a render kit provides a base to balance the complex mixture of markup language and JavaScript. The server-side framework also adds a custom lifecycle to take advantage of the API hooks for partial page component rendering. On the client, ADF Faces provides a structured JavaScript framework for handling various nontrivial tasks. These tasks include state synchronization using partial page rendering. For more information about the ADF Faces architecture, see Chapter 3, Using ADF Faces Architecture. Note: Creating custom standard JSF components is covered in many books, articles, web sites, and the JavaServer Faces specification, therefore, it is not covered in this guide. This chapter is intended to describe how to create ADF Faces components.