Three-Tier Application Logic



The three tiers of application logic in a published application are designed to exploit the capabilities of web processing and enhance the performance, scalability, and maintenance of an application. Partitioning an application into tiers is a means of classifying the functionality of the application. You can publish partitioned components across many different platforms. See Distributing Processing Among Platforms.

The three tiers of application logic are:

For an illustration, see Partitioned Application Files and Servers.

Reference: Partitioned Application Files and Servers

The following diagram illustrates how all user interface logic and data access logic can be configured behind multiple firewalls for maximum security.

The web server processes the webpages that provide the presentation logic for a WebFOCUS reporting application. The web server accesses HTML files, graphical image files, and Java class files, and Cascading Style Sheets. For more information about how to specify file locations on the web server, see the WebFOCUS installation guide for your platform.

The application server provides the user interface logic for your WebFOCUS tools, and is the location for servlets, JSPs, and Java Beans. Having an application server to process application logic behind the user interface provides performance and security benefits.

Information Builders does not provide an application server. You can use a third-party server, such as WebLogic, Websphere, Tomcat, Apache, or Netscape.

The Application server resides separately or together with the web server.

The WebFOCUS Reporting Server processes the procedures containing the user interface logic for reports, as well as the files that contain metadata for the data sources. Stored on the WebFOCUS Reporting Server are report requests, WebFOCUS StyleSheets, customized HTML pages called from WebFOCUS procedures, and Master and Access Files.

The WebFOCUS Reporting Server also accesses the data sources used by an application.

Reference: WebFOCUS File Types

A WebFOCUS reporting application can publish and use all of the following types of files. The following chart includes file extensions used by the Windows and UNIX operating systems. See Defining and Allocating WebFOCUS Files for comparable information for z/OS and other supported operating environments.

File Type


Location After Publishing

File Extension (Windows/UNIX)


Includes files displayed for the end user through a web browser, such as HTML files, graphical images, Java executable objects (class files), and Cascading Style Sheets.

In web server home directory or in web server alias









User interface logic

Includes servlets and JSPs.

Application server




Includes files that contain the executable functions of an application: report requests, WebFOCUS StyleSheets, and customized HTML called from WebFOCUS procedures using the Dialogue Manager command -HTMLFORM. For details about this command, see Enhancing an HTML Webpage With a Procedure.

On the path of the WebFOCUS Reporting server




Master File

Access File

Includes all Master Files and Access Files.

On the path of the WebFOCUS Reporting server



Data source

Includes all supported data sources types.

On the platform with the WebFOCUS Reporting Server or sub-servers


Temporary file

Includes data extracts, temporary files that your application creates during processing, and temporary work files that WebFOCUS uses internally.

In the EDA temporary directory (default) or a user-defined EDA location

.ftm or other requested extension

Distributing Processing Among Platforms

WebFOCUS applications are capable of distributing processing over many platforms, with the following advantages:

  • You can access data on multiple platforms, thus forming relationships among disparate data sources.
  • Each component runs in the most suitable environment. For example, a WebFOCUS HTML front-end may run on a Windows or UNIX platform managed by local departmental administrators who authorize and group users, while the data access routines run on a z/OS machine capable of securing the data and aggregating it quickly.
  • You can speed up your applications. Procedures that access data can run on the platform where the data resides, thus ensuring that any aggregation or screening takes place immediately. This means that your application is not shipping large quantities of data across a network to be aggregated or screened somewhere else. Less network traffic means increased application speed.

For a more detailed discussion of this topic, see the WebFOCUS installation guide for your platform.