X

Best Practices from Oracle Development's A‑Team

Add LoV to taskflow parameters in composer

Introduction

Configuring a new portal site is easy for someone who knows his way around. To ease this process the development team can assist there portal administrators by introducing LoV (List of Values) for the available taskflows. This applies to new and existing taskflow, yes you can add List of Values to existing task flows.  The following are the types of LoVs available:

  • Static LOV
    • Defines list of predefined values
  • Dynamic LOV
    • Defines list of values generated by evaluating an EL value that is computed when the page is run
  • Global LOV
    • Defines a global list of values that can be used in any task flow in the application
  • Picker
    • Defines a global list of values that can be used in any task flow in the application

This post will only go through a Static example, however the other options are straight forward.

Main Article

Assume following scenario to understand the context:

Step one create a new WebCenter Portal Project, add a desired navigation, add few pages, make sure they are customizable and support composer. All pages will be empty so the administrator has to add the task flow using the run time administration and edit the page.  It will look something like this:

addLOVtotaskflow_1

The parameters now are open text boxes that is completely open, even though we declared them mandatory, one problem here is that we cannot guarantee the value the user will enter.  There is an remedy for this, by using the new Oracle Composer extension file, pe_ext.xml.  We are now going to introduce LoV for parameters  Color and Language parameter, the process below can be repeated for any taskflow, new or existing.  Create new XML file called pe_ext.xml under Portal\adfmsrc\META-INF
Add following xml code fragment:

<?xml version="1.0" encoding="UTF-8" ?> <pe-extension xmlns="http://xmlns.oracle.com/adf/pageeditor/extension">   <lov-config></lov-config> </pe-extension>

Now we are going to add the task flow reference for the affected task flow:

<task-flow-definition taskflow-id="/oracle/webcenter/siteresources/scopedMD/shared/taskflow/demo-taskflow.xml#demo-taskflow"></task-flow-definition>

The best approach to find the id for the task flow is to open the resource catalog in runtime and copying the Path value:

addLOVtotaskflow_2

Now the final part, each parameter can now be configured with one of the four options of LoV, below is two static examples:

<input-parameter-definition> <name>Colour</name>     <enumeration inline="true">         <item>             <name>Blue Colour</name>             <value>Blue</value>             <description>Select ... Blue</description>         </item>         <item>             <name>Green Colour</name>             <value>Green</value>             <description>Select ... Green</description>         </item>     </enumeration> </input-parameter-definition> <input-parameter-definition> <name>Language</name>     <enumeration inline="true">         <item>             <name>English</name>             <value>en</value>             <description>Select ... English</description>         </item>         <item>             <name>Swedish</name>             <value>sv</value>             <description>Select ... Swedish</description>         </item>     </enumeration> </input-parameter-definition>

The entire XML fragment code will look similar to this:

addLOVtotaskflow_3

After deploying the project, the following displays the results:

addLOVtotaskflow_4

Be the first to comment

Comments ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.Captcha

Recent Content