Skip to main content link. Accesskey S
  • Anonymous
  • Log on
  • Help
  • IBM logo
  • IBM Web Experience Factory wiki
  • All Wikis
  • Home
  • Community Articles
  • Product Documentation
  • Learning Center


Search

Advanced Search

Categories

Tag Cloud

  • 6.1
  • 6.1.2
  • 6.1.5
  • 6.1.5.1
  • 7.0
  • Ajax
  • Alerts
  • Annotations
  • attachment
  • best practices
  • BlackBerry
  • builder
  • builder faq
  • builders
  • charts
  • Code samples
  • Connections
  • css
  • Custom builder
  • CustomBuilder
  • dashboard
  • Data Access
  • data access faq
  • Data and variables
  • Database
  • Databases
  • Debugging
  • demo
  • demo models
  • demo projects
  • demo widget
  • demos
  • deployment
  • deployment faq
  • Deployment scenarios
  • development
  • dojo
  • Domino
  • faq
  • fixpack
  • General FAQ
  • getting started
  • Help
  • HTML
  • html templates
  • ILOG
  • integration
  • iPhone
  • JViews
  • Learning
  • Logging
  • lotus connections
  • Lotus Widget Factory
  • media dashboard
  • media pf
  • media widget
  • mobile
  • mobile smartphone development
  • Model development
  • new
  • Notifications
  • overview
  • page automation
  • Portal
  • Portal Integration
  • portal integration faq
  • Portlet
  • Portlet Factory 7
  • presentation
  • presentation faq
  • Profiling
  • Quickr
  • REST
  • rest faq
  • REST Service Call
  • restructure handler
  • rich ui
  • sample
  • sample application
  • samples
  • schema
  • Security
  • Smartphones
  • SOA
  • social
  • Source Control
  • sql
  • summary and drilldown
  • Team development
  • Troubleshooting
  • ui
  • User Interface
  • video
  • web 2.0
  • Web Experience Factory
  • Web Experience Factory 8
  • Web Services
  • websphere dashboard framework
  • wef
  • wpf
InformationInformation
You are currently viewing machine translated content. IBM translation might be available. Click IBM Translated Product Documentation to see what is available.X


Home > Best Practices for Web Experience Factory > Creating Your Application's UI
Rate this article 1 starRate this article 2 starsRate this article 3 starsRate this article 4 starsRate this article 5 stars

Creating Your Application's UI 

expanded Abstract
collapsed Abstract
The following article is a guide to IBM Web Experience Factory documents that will help you walk through the design process of deciding how to approach the creation of your applications UI.
ShowTable of Contents
HideTable of Contents
  • 1 Introduction to this series of articles
  • 2 Page Automation
  • 3 The Complete Page approach to custom page layouts
  • 4 The Base Page and Fields approach to custom page layout
  • 5 Using automated data-driven layouts
    • 5.1 Controlling automated layouts
    • 5.2 Working with UI Themes
    • 5.3 Working with HTML Templates
    • 5.4 Working with Style Sheets
  • 6 Working with base pages for non-data elements
  • 7 Working with the design view for field customization
    • 7.1 For more information on design view customization
  • 8 Working with custom HTML UI designs
    • 8.1 Are you receiving the HTML that is the complete page or designed in the base page/ field section design?
    • 8.2 How do I prepare my HTML designers to produce HTML that is easier to be consume page automation?
  • 9 Improving the eclipse HTML editing experience

Introduction to this series of articles



This article and related articles describe a number of techniques for constructing your applications user interface and page layout. They include information on the two basic approaches to controlling page layout:
  • A data-driven automated approach, where all the data fields are initially generated from a schema and can then be customized using Design view and builders
  • A custom layout approach, where page layouts are created in an HTML authoring tool or editor. This custom layout approach has two variations, the "complete page" approach and the "base page and fields" approach, described below.

Both the data-driven approach and the custom layout approach are commonly used in Web Experience Factory. The data-driven approach can often be the quickest for development, but the custom layout approach gives more direct and complete control of the layout.

These slides talk about these general approaches to UI layout and design:

Approaches to UI Design and Layout
Modifying Your Applications Appearance Using Custom HTML
Using the design view to customize your data layout
Writing Page Automation friendly HTML and styles

Page Automation


There are a group of builders in the product designed to make the displaying of data on pages in the application much easier. These builders control many aspects of working with the data. These builders range from high level builders such as the Data Service User Interface builder (DSUI) which creates a fully functional application to builders like the Page Automation Label builder that allows for updating of a fields labels.

The Complete Page approach to custom page layouts


When using this method of page design, the entire page is contained in a single HTML file.

The Base Page and Fields approach to custom page layout


When using this method of page design the outer shell of the page (buttons, marque, headers, footers) are in one HTML file and the field information is in a separate HTML file which are later combined by builders.

Sometimes you receive designs from application designers that are pictures created in an image-editing program, or HTML and style sheets and you need to incorporate into your product. So what is the best way to accomplish this? Many times, developers can start with the user interface generated by Web Experience Factory and modify what the product generated – whether it is the style of the chart or the design of the applications user interface. In many cases this generated UI and modifier builders will allow you to fully customize the application without having to create, edit or modify HTML or style sheets manually. We expect that at this time you have a good definition of what the data and services are since this information will be needed to communicate what data needs to be displayed.

Here is a document that describes these different design methodology's that you can use to handle the user experience designer to developer interaction. It discusses different approaches to Outside-In development where the user interface is designed by user interface designers and the developers take this information and add it to the application.

In most of these methods, a good starting place is the UI that is automatically generated by page automation and using this information you can ask yourself some of the following questions.

Using automated data-driven layouts


Page Automation is the technology of the Factory that builds both JSP pages and Java code based on a schema or other data definition. The core access to this technology is the Data Page builder, which can also be accessed through high level UI builders such as View and Form or Input Form and Data Service User Interface. Part of the power of Page Automation is that it starts by creating an internal model of how the data will be laid out on the page, and then you can use assorted modifier builders, such as Data Field Modifier or Data Column Modifier, to change the internal representation before the actual work of creating the JSP and Java occurs. These builders can be added from the builder picker or through wizards to automatically create a functioning application.

Controlling automated layouts


There are some high level ways to configure and control the look and layout of these application. These include UI themes which allow you to control the overall look and feel of the application. It also allows you to control which templates and styles used and available at an application level.

Working with UI Themes


A theme is a collection of style information that can be used to drive builder inputs that provide the application UI in your model. This information can include but is not limited to HTML templates, style sheets (CSS), base pages, highlighting style, and paging style. A good example of a theme that is used to control the look and feel of type of application is our mobile.uitheme which is found in the WebContent\WEB-INF\factory\themes\mobile directory when you have the mobile feature set in your project. This theme is designed specifically for mobile devices and overrides many of the default settings in the base theme file. To customize or create your own themes you should not modify these files that are under the factory directory but save them in the themes directory we create for you. For information on themes see the Themes and user interface control topic in the Web Experience Factory product help.

Working with HTML Templates


One very advanced and very powerful technique that can be applied when building a custom UI theme is to control the automatic generation of HTML by using HTML template files that guide the actions of the page automation builders. When working with a large system that requires maximum re-use, this technique can greatly reduce the need to hand-craft the look and feel of each individual page. Using a HTML template for all pages in an application helps you achieve a consistent look and feel. These templates are found in the WebContent\factory\html_templates directory. To customize or create your own templates you should not modify these files that are under the factory directory but save them in the html_templates directory we create for you. For information on HTML templates see Introducing WebSphere Portlet Factory HTML Templates and What are page automation templates?.

Working with Style Sheets


Cascading style sheets enable you to define a consistent look and feel throughout your Web site by maintaining the contents (Web pages) and the design (the style sheet) separately. Style sheets for the automated pages are controlled by the current theme. These files are found in the WebContent\factory\html_templates directory. A good example of style changes that redefine styles that are used by page automation are the style files found in WebContent\factory\html_templates\mobile directory when you have the mobile feature set in your project. These style are designed specifically for mobile devices. To customize or create your own templates you should not modify these files that are under the factory directory but save them in the style_sheets directory we create for you. Or you can create and use your own style sheets and by changing the the HTML templates to use the styles you defined.

Working with base pages for non-data elements


The high level user interface builders use a layered approach to the HTML that they use. Allowing a developer to change the overall look, feel and layout of the application by changing things like navigation, banners, headers/footers, etc separate from the fields and data that is displayed on the page. A good example of base page changes that redefine look and feel of the application are the html files found in WebContent\factory\pages\mobile directory and subdirectories when you have the mobile feature set in your project. These pages are designed specifically for mobile devices. To customize or create your own templates you should not modify these files that are under the factory directory but save them in the pages directory we create for you. Or you can create and use your own base pages and by changing the the HTML templates to use the pages you defined.

For information on working with base pages and custom page layout see Modifying Your Application's Appearance Using Custom HTML.

Working with the design view for field customization


This document explains to developers how to use the layout manager builders in the product to customize page automation generated pages. Using this method you do not have to directly edit HTML. The design panel in the model editor shows a visual representation of a visible element that is selected in either the Application Tree or the Pages panel. Clicking the Design tab exposes the Design panel. This panel lets you quickly and conveniently see visible elements in your model without having to generate the web application and lets you make design changes. It supports the adding and manipulation of builders and their inputs allowing a user to modify field layouts and attributes. This view allows you to add high level layouts( two column, T layout, Inverted T and I layout) or use drag and drop to rearrange the layout of your fields on the page. All changes are stored as inputs to builders and are dynamically applied at generation time.

For more information on design view customization


Using the design view to customize your data layout.

Working with custom HTML UI designs


This document explains the different processes used when working with an outside design firm or user experience designers who hand off HTML and CSS files or photo-shopped images of what the desired UI should be. In this case it still is useful to create the page automation generated pages to get information about the field and group names.

Are you receiving the HTML that is the complete page or designed in the base page/ field section design?



Complete Page - see how to pull the pages back into DSUI, View & Form and Data Page
Base page/field - see base pages and page automation data areas
See - Modifying Your Application's Appearance Using Custom HTML
This document is useful for developers that need to work with separate HTML developers. It explains the best ways to extract and consume HTML that is integrated with page automation including
  • base pages and page automation data areas
  • how to export HTML to use as a starting point
  • where to put the new HTML file
  • modifying your HTML without breaking things
  • how to pull the pages back into DSUI and View & Form

How do I prepare my HTML designers to produce HTML that is easier to be consume page automation?


See - Writing Page Automation friendly HTML and styles
This document is useful for HTML developers to know what tags and what attributes are used on pages by page automation including
  • how to write / modify HTML so that it meshes well with page automation
  • field naming and mapping
  • suffixes that page automation looks for
  • special named elements

Improving the eclipse HTML editing experience


The eclipse we install with the product includes an HTML editor that allows you to work with the HTML but does not include a preview or design view. If you use the Rational Application Developer it has some good HTML tools. But if you are staying with the base eclipse there is an optional Web Page Editor that does provide these capabilities.
See - Web Page Editor in IBM Web Experience Factory

expanded Article information
collapsed Article information
Category:
Best Practices for Web Experience Factory, Resources for Developers, Spotlight, Web Experience Factory,
Tags:
css, wef, HTML, Data Layout, Automation

This Version: Version 43 November 16, 2011 3:15:26 PM by Rob Flynn  IBMer

expanded Attachments (0)
collapsed Attachments (0)

 


expanded Versions (43)
collapsed Versions (43)
Version Comparison     
Version Date Changed by               Summary of changes
This version (43) Nov 16, 2011 3:15:26 PM Rob Flynn  
42 Sep 27, 2011 8:58:47 AM Rob Flynn  
41 Sep 27, 2011 8:53:59 AM Rob Flynn  
40 Sep 26, 2011 2:23:07 PM Rob Flynn  
39 Sep 26, 2011 2:06:15 PM Rob Flynn  
38 Sep 26, 2011 1:59:31 PM Rob Flynn  
37 Sep 26, 2011 1:50:18 PM Rob Flynn  
36 Sep 16, 2011 9:54:57 AM Lawrence P Sweeney  
34 Sep 16, 2011 9:51:51 AM Lawrence P Sweeney  
33 Sep 16, 2011 9:46:30 AM Lawrence P Sweeney  
32 Sep 16, 2011 9:42:19 AM Lawrence P Sweeney  
31 Sep 15, 2011 2:29:33 PM Martin Romano  
31 Sep 16, 2011 9:35:45 AM Lawrence P Sweeney  
29 Sep 13, 2011 11:42:21 AM Rob Flynn  
28 Sep 13, 2011 11:40:21 AM Rob Flynn  
27 Sep 13, 2011 10:33:23 AM Rob Flynn  
26 Sep 13, 2011 10:29:56 AM Rob Flynn  
25 Sep 13, 2011 10:11:52 AM Rob Flynn  
24 Sep 13, 2011 9:58:34 AM Rob Flynn  
23 Sep 13, 2011 9:54:33 AM Rob Flynn  
22 Sep 12, 2011 1:11:09 PM Martin Romano  
21 Sep 12, 2011 1:10:55 PM Martin Romano  
20 Sep 12, 2011 1:09:52 PM Martin Romano  
19 Sep 12, 2011 12:58:50 PM Martin Romano  
18 Aug 3, 2011 3:00:25 PM Garry Sager  
17 Aug 3, 2011 9:16:45 AM Garry Sager  
16 Aug 2, 2011 2:10:17 PM Garry Sager  
15 Aug 2, 2011 2:00:04 PM Garry Sager  
14 Aug 2, 2011 11:19:59 AM Garry Sager  
13 Aug 2, 2011 11:16:29 AM Garry Sager  
12 Aug 2, 2011 9:49:18 AM Garry Sager  
11 Aug 2, 2011 9:49:15 AM Garry Sager  
10 Aug 2, 2011 9:48:07 AM Garry Sager  
9 Aug 2, 2011 9:38:06 AM Garry Sager  
8 Aug 2, 2011 9:33:14 AM Garry Sager  
7 Jul 28, 2011 2:21:00 PM Garry Sager  
6 Jul 28, 2011 2:05:36 PM Garry Sager  
5 Jul 28, 2011 2:01:29 PM Garry Sager  
4 Jul 28, 2011 9:19:55 AM Garry Sager  
3 Jul 28, 2011 9:18:31 AM Garry Sager  
2 Jul 28, 2011 8:41:03 AM Garry Sager  
1 Jul 28, 2011 8:36:45 AM Garry Sager  
1 Jul 28, 2011 8:22:40 AM Garry Sager  
expanded Comments (0)
collapsed Comments (0)
Copy and paste this wiki markup to link to this article from another article in this wiki.
Go ElsewhereStay ConnectedSubscribe to RSSHelpAbout
  • All Lotus and WebSphere Portal wikis
  • IBM developerWorks
  • IBM Software support
  • IBM Social Business User Experience Blog
  • IBMSocialBizUX on Twitter
  • IBMSocialBizUX on Facebook
  • Lotus product forums
  • IBM Social Business UX blog
  • IBM Collaboration Solutions
  • Recently added feedRecently added
  • Recently edited feedRecently edited
  • Recently added comments feedRecently Added Comments
  • Wiki Help
  • Forgot user name/password
  • Wiki design feedback
  • Content feedback
  • About the wiki
  • About IBM
  • Privacy
  • Contact IBM
  • IBM Terms of use
  • Wiki terms of use