# Tutorial: Page Flow

The following tutorial demonstrates advanced capabilities of Page Flows. For an introductory tutorial see Getting Started: Web Applications.

## The Big Picture

The page flow tutorial is the last in a series of three tutorials, which builds the Investigate Application, an application designed to assemble a credit-worthiness report on a loan applicant. (Note: you do not need to execute the tutorial series in order. You may proceed with this tutorial, even if you have not completed the previous tutorials in the series.)

The first tutorial in the series, the Tutorial: Java Control, builds the core of the application: the Investigate Java control, which consults a variety of components to assemble the credit-worthiness report.

The second tutorial in the series, the Tutorial: Web Service, builds the web services tier of the application.

This, the third tutorial in the series, builds the Investigate Web Application, a web-based user interface that lets users request and receive credit reports through a web browser. The components built are shown in blue in the diagram to the right.

## Tutorial Goals

In this tutorial, you will learn:

- How to create a web application's user interface with JSPs
- How to access a web application's back-end data resources with Java controls
- How to coordinate navigation, user data input, and back-end data resources with page flow files
- How to use page flow technology to separate data processing and data presentation
- How to secure a web application with role-based security.

### Tutorial Overview

In this tutorial you will build a web-based user interface for the Investigate credit reporting web service, a service that provides credit profiles on loan applicants. As you progress in the tutorial, you will learn how to access data with web service controls, how to present data with JSPs, and how to control user navigation, user requests, and back-end resources with page flows.

The user interface you build consists of main three main layers (see the diagram to the right):

1. The user-facing, presentation layer consists of two JSP pages: request.jsp and response.jsp. Users request and view credit reports through these pages.
2. The middle, coordinating layer consists of Java page flow file: investigateJPFController.jpf. This file controls user navigation between JSP pages, how user requests are handled, and how credit reports are retrieved and displayed to the user.
3. The back-end, data resource layer consists of a web service control file: InvestigateSyncControl.jcx. This file provides access to the Investigate web service, which, along with the Investigate Java control, assembles the credit reports.

The numbered arrows represent a typical request-responce cycle. (1) Users submit a request for a credit report to the page flow file investigateJPFController.jpf. (2) This request is passed on to the web service control InvestigateSyncControl.jcx. (3) After the web service control has had time to assemble the credit report, it is retrieved and stored in the page flow file investigateJPFController.jpf. (4) Finally, the credit report is displayed to the user on the response.jsp page.

### Steps in This Tutorial

Step 1: Begin the Investigate Page Flow

In this step you will deploy the back-end resources that assemble credit reports.

Step 2: Processing Data with Page Flows

In this step you will (1) create a page flow file (JPF file), which controls user requests and retrieval of credit reports, and (2) create a web service control, which lets you access the resources that provides the credit reports.

Step 3: Create the JSP pages

In this step you will create the JSP pages that let users request and view credit reports.

Step 4: Role-Based Security

In this step you will set role restrictions on the Investigate page flow.

Summary: Page Flow Tutorial

Related Topics

Getting Started with Page Flows

Click the arrow to navigate to the next step in the tutorial.