specified with a value of “contentPage,” the returned value is stored in a pageContext object variable that can be referenced later in the page as a variable called “contentPage.” If no value is returned by the navigationControllerBean, the invalidForm.jsp page displays. Otherwise, the appropriate page for the current navigation mode in the application displays. The JSP include action determines which page to display by retrieving the contentPage attribute of the pageContext object variable, which was just set by the lms:navUtil tag.

Delivery server

The Delivery server has a framing JSP named delivery.jsp. This page contains resizable frames made up of the system.jsp, courseTree.jsp, courseTools.jsp, and activity.jsp files. Each JSP has a corresponding frameID value that is used by the doReloadFrame tag of the delivery-js tag library to determine how to populate a frame when it needs to be reloaded because of an action that occurred in another frame. The activity.jsp contains the activityTools.jsp and appropriate page content. Stepping through the source code of the delivery JSP illustrates how to perform standard JSP tasks, such as:

Including tag library descriptor files

Including JavaScript source code

Looking at the delivery.jsp source code also illustrates how the following tasks are handled by the Delivery server in particular:

Localizing page text

Populating a frameset in a JSP

Displaying errors to the user

Defining resizable frames

The source code for the delivery.jsp file is stored in the WEB-INF>classes>resources>ds directory.

Including tag library descriptor files

The page and taglib directives specify that the page contains Java code and that, like the adminTemplate.jsp, a Struts tag library is included, the Struts-bean.tld file. Unlike the adminTemplate, the delivery.tld and delivery-js.tld files are associated with the page, instead of the lms tag library.

<%@ page language="java" contentType="text/html;charset=UTF-8" %> <%@ taglib uri="/WEB-INF/tld/delivery.tld" prefix="delivery" %> <%@ taglib uri="/WEB-INF/tld/delivery-js.tld" prefix="js" %> <%@ taglib uri="/WEB-INF/tld/Struts-bean.tld" prefix="bean" %>

Localizing page text

The title of the page is located in the DeliveryResources.properties file in the WEB- INF>classes>resources>ds>properties directory, which contains the following resource key:

ds.application.title= IBM Lotus Learning Management System

Note that the message tag that is being used to define the key to retrieve from the .properties file is using the “delivery” prefix. This indicates that the message tag resides in the delivery.tld file.

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title><delivery:message key="ds.application.title"/></title>

28 IBM Lotus Learning Management System Release 1 Customization Guide

Page 33
Image 33
IBM R1 manual Delivery server, Localizing page text