Skip to main content link. Accesskey S
  • Help
  • IBM Logo
  • IBM Web Experience Factory wiki
  • All Wikis
  • All Forums
  • ANNOUNCEMENT: Wiki changed to read-only. READ MORE...
  • Home
  • Product Documentation
  • Community Articles
  • Learning Center
  • IBM Redbooks
  • API Documentation
Search
Community Articles > Web Experience Factory > Best Practices for Web Experience Factory > How to decide which Page Automation builder to use to create your user interface
  • Share Show Menu▼
  • Subscribe Show Menu▼

About the Original Author

Click to view profileIBM contributorRob Flynn
Contribution Summary:
  • Articles authored: 199
  • Articles edited: 253
  • Comments Posted: 2

Recent articles by this author

JAX-WS Handler Sample using IBM Web Experience Factory

Overview The Web Experience Factory (WEF) 8.0 release contains an enhancement to the web service call builders that gives you an option to define a global JAXWS handler class. This handler makes it possible for models to intercept and process the inbound and outbound SOAP envelopes ...

WebSphere Dashboard Framework 7.0.1.1 Fix pack now available

The WebSphere Dashboard Framework 7.0.1.1 Fix pack has been released.

IBM Web Experience Factory Version 7.0.1.4 Fix Pack is now available

This fix pack includes new fixes and updates for Web Experience Factory Version 7.0.1. and is now available on Fix Central and can be downloaded from here: ...

IBM Web Experience Factory WCAG 2.0 Compliance

IBM Web Experience Factory, developed and tested compliant to WCAG 2.0, can produce output ( web pages , sites and content) that can be WCAG 2.0 Level A and Level AA compliant. IBM Web Experience Factory neither enforces nor prevents this compliance. Application developers must know and understand ...

Yeah!!! New IBM Web Experience Factory V8.0 is announced!!!

A quick snapshot of what's new in IBM Web Experience Factory... IBM Web Experience Factory is all about making it quick and easy to develop applications (portlets) that are included as part of an exceptional web experience. We've seen our customers doing some awesome stuff, whether it be ...
Community articleHow to decide which Page Automation builder to use to create your user interface
Added by IBM contributorRob Flynn | Edited by IBM contributorRob Flynn on March 12, 2012 | Version 3
expanded Abstract
collapsed Abstract
A decision tool for choosing which Page Automation builder to use to create your user interface in Web Experience Factory.
Tags: Page Automation
In Web Experience Factory (WEF), all data display and input forms are built using what we call the “Page Automation” framework of WEF. There are four primary builders that are used to construct UI using the Page Automation framework. These are:
  • Data Page
  • View & Form
  • Input Form
  • Data Services User Interface (DSUI)

Given the multiple builders that are available for creating your data displays and forms, we are often asked which builder to choose. This article outlines the considerations for selecting among these builders.

First, let me say that all of these builders are good choices. With any of them, you get a whole set of benefits that come with using the Page Automation framework. Here are some of the key features you get with any of the four builders:
  • Automatically generate pages based on the data schema, including all the code for mapping data fields to UI. Both data display and input forms are supported, including server-side validation
  • Easy, automated, control of all the rich behavior of all your data fields. Using Data Field Settings, for example, you get easy centralized control over formatting, validation, UI controls including Dojo, visibility, labels, lookup tables, and more.
  • Complete control and customizability of UI design and layout. There are a number of ways to handle UI design and layout that can be used with any of the four Page Automation builders: (1) you can use an automated layout, where schema fields are laid out for you (this is the default); (2) you can customize an automated layout using graphical tools in Design view or by using “modification builders” such as Data Heirarchy Modifier or Data Column Modifier; (3) for repeating data, you can use the Data Layout builder for a wide variety of nice-looking layouts; and (4) you can use custom HTML designs, perhaps coming from a design team.
  • Easy centralized control of look and feel using WEF UI Themes. Themes let you control CSS styles, layout rules for page fields (HTML templates), data table behavior such as row highlighting, data paging style, and more.
  • Support for mobile and multi-channel rendering. You can use WEF mobile-related features such as Data Layout builder, mobile UI themes, and device type profiling with any of these Page Automation builders.

For deciding which builder to use, we'd suggest first keeping in mind this general best practice guideline for WEF builders: Use the highest-level builder suitable for the job.

That guideline will help you get the most benefit from WEF's builder automation. For example, a in model that displays service results, using the lower-level Data Page instead of View & Form means that you'll need at least three builders instead of one, and you'll need to correctly configure quite a few more builder inputs.

However, the decision is not always simple. For example, you might find that in some situations, using Data Page makes it easier to implement customizations that are difficult with the View & Form builder, when you want something different than what View & Form generates by default. And DSUI is the most automated builder (complete CRUD with a single builder!), but also the most rigid in terms of the patterns it generates. So there is some trade-off between automation and flexibility.

Here is a table that compares different characteristics of these four Page Automation builders. The general ordering is from lower-level (Data Page) to high-level (DSUI). Data Page is the core Page Automation builder, and the other three builders all use Data Page under the covers. Note that this is a high-level summary of key functionality for these builders; there are many other detailed features and differences not mentioned here.


BuilderDescriptionUI patterns supportedKey automation providedData Service dependencies
Data PageAdds XML data to an existing page, for display or input.Patterns:
  • Any structured data display or input on any existing page
Generates code that maps data fields to UI and and saves submitted dataNone - can work with an XML variable or with any Data Service input or result parameters.
View & FormGenerates fully-functional pages and navigation for viewing data from a Data Service, with optional input, details, and update pages.Patterns:
  • View page for service operation results (repeating data or single-record)
  • Input, Details, and Update pages (optional)
Imports the base pages where data is placed.

Uses Data Page for all data views and forms.

Adds navigation buttons and links.

Generates methods that call services before displaying result pages.

Optionally generates “main” method.
Can be used with any Data Service operation that returns results. Typically used with operations from the Service Consumer builder. Can also be used with a Variable.
Input FormGenerates an input form for a Data Service operation that doesn't return results to display.Patterns:
  • Input page for service operation with no results
Similar to View & Form builder, but just for an input page.Similar to View & Form builder, but just for an input page
Data Service User Interface (DSUI)Generates a fully-functional CRUD (create, read, update, delete) application from a Data Service that has logical operation information defined. Generates all UI and navigation.Patterns:
  • Complete or partial CRUD application
  • List page with optional Filter form
  • Search inputs and results pages (optional)
  • Details, Update, and Create pages (optional)
  • Separate List and Details portlets that use events to communicate
Imports the base pages where data is placed.

Uses Data Page for all data views and forms.

Adds navigation buttons and links.

Generates methods that call services for all CRUD operations.

Generates optional eventing support, using portlet wiring or client-side events.

Optionally generates “main” method.
Requires “logical operation” information for Data Services, to identify the role of each operation and any key fields. Logical operations can be defined in the Service Definition builder.

Typically used with a Data Service from the Service Consumer builder.




expanded Attachments (0)
collapsed Attachments (0)
expanded Versions (6)
collapsed Versions (6)
Version Comparison     
VersionDateChanged by              Summary of changes
6Mar 12, 2012, 10:35:21 AMRob Flynn  IBM contributor
4Mar 12, 2012, 10:33:55 AMRob Flynn  IBM contributor
This version (3)Mar 12, 2012, 10:31:56 AMRob Flynn  IBM contributor
2Mar 12, 2012, 10:31:01 AMRob Flynn  IBM contributor
1Mar 12, 2012, 10:27:47 AMRob Flynn  IBM contributor
1Mar 12, 2012, 10:28:38 AMRob Flynn  IBM contributor
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedHelpAbout
  • IBM Collaboration Solutions wikis
  • IBM developerWorks
  • IBM Software support
  • Twitter LinkIBMSocialBizUX on Twitter
  • BlogsIBMSocialBizUX on Facebook
  • ForumsLotus product forums
  • BlogsIBM Social Business UX blog
  • Community LinkThe Social Lounge
  • Wiki Help
  • Forgot user name/password
  • Wiki design feedback
  • Content feedback
  • About the wiki
  • About IBM
  • Privacy
  • Accessibility
  • IBM Terms of use
  • Wiki terms of use