Progress
on the Web


Bootstrapping a WebClient Application

Whether you use IntelliStream or an external installer to install your application, your WebClient application is always started by WebClient Initializer. For information about installation options, see "Designing Your End User’s Experience".

WebClient Initializer is a program that controls the installation, update, and execution of a WebClient application that can also include installing a different version of WebClient itself.

WebClient Initializer uses information in an application configuration file to control how it starts a WebClient application. The information that you provide in this application configuration file allows WebClient Initializer to identify and verify the status of both WebClient and the application on the user’s system, and to start the application.

Starting the Application

You can provide two basic options for the user to start a WebClient application:

NOTE: If WebClient is installed from a CD, you should still use the bootstrap.htm file to install the application.

How the Bootstrapping Process Works

The prescribed way to bootstrap your WebClient application is to use the bootstrap.htm file that Progress provides and that you must customize. The bootstrap.htm file is used to initiate the installation process.

For information about customizing this file see the "Customizing the Bootstrap.htm File" section.

This bootstrap.htm has the following logical paths:

Whenever WebClient Initializer runs, it takes your users to the next step of the bootstrapping process. Therefore, any process to which WebClient initializer gives control to perform an installation step (WebClient install and external application install) needs to run WebClient Initializer again for the bootstrapping process to continue and ultimately run the application.

Figure 7–10 illustrates the bootstrapping process and shows the bootstrap process flow depending on WebClient Initializer’s verification at the different decision points in the process. This process is transparent to your end user, and depends on whether you used IntelliStream or an external installer and how you customized your WebClient installation to install and start your application.

Figure 7–10: Bootstrapping Process

NOTE: During this bootstrapping process, if any URL requires authentication on your Web server, the end user receives a prompt for the appropriate user ID and password.

Bootstrapping with No WebClient Installed

If WebClient is not found on the user’s machine, the bootstrap.htm file opens a WebClient installation page based on a URL that you specify. This WebClient installation URL is determined by you and must be customized in the bootstrap HTML file. For more information on the WebClient installation page, see the "Installing WebClient" section.

Bootstrapping with Some Version of the WebClient Installed

If any version of WebClient is found on the user’s machine, the bootstrap.htm file references a URL to the application’s configuration file, which runs WebClient Initializer. This configuration file URL is determined by you and must be customized in the bootstrap.htm file.

Customizing the Bootstrap.htm File

For any scenario using the bootstrap.htm file, you must customize the file provided by Progress. To customize the bootstrap.htm file, you must substitute your own URLs for the two URL settings shown in bold:

See the sample bootstrap.htm file that follows:

<html> 
<script language="JavaScript"> 
	installed = false; 
	netscape = (navigator.appName.indexOf("Netscape") != -1); 
	// See if WebClient is installed 
	if (netscape) 
	{ 
		var mimeTypes = navigator.mimeTypes["application/progress-wcappcab"]; 
		if (mimeTypes) 
			installed = true; 
	} 
</script> 
<script language="VBScript"> 
	' This is ignored by Netscape 
	On Error Resume Next 
	set ctrl = CreateObject("ProWCVer.ComObj.1") 
	if isObject(ctrl) then 
		installed = true 
	end if 
</script> 
<script language="JavaScript"> 
	if (installed) 
	{ 
		// Reference a prowcapp file to invoke prowcini.exe 
		// NOTE: MODIFY THIS URL TO POINT TO YOUR .prowcapc FILE. 
		document.location.href = 
""http://NSSWeb:81/webclient/BakeWare_install/BakeWareV10.prowcapc"; 
	} 
	else 
	{ 
		// Start install process for Web Client 
		// NOTE: MODIFY THIS URL TO POINT TO THE WebClient Install page 
		window.location = "http://NSSWeb:81/webclient/webclient.htm"; 
	} 
</script> 
<body> 
<!--// NOTE: THIS TEXT CAN BE MODIFIED //--> 
<p align="center"><font face="Verdana, Arial, Helvetica" size="3">This 
Application is Powered by Progress</tr> 
<p align="center"><font face="Verdana, Arial, Helvetica" size="3">Thank you 
for using our application!</tr> 
<!--// NOTE: THIS URL CAN BE CHANGED TO POINT TO AN APPLICATION SPECIFIC JPG 
	   OR OTHER APPLICATION SPECIFIC HTML CAN BE PLACED HERE.//--> 
<p align="center"><img SRC="graphics/WCSplash.jpg" height=250 width=350> 
</body> 
</html> 

Matching Letter Case in URL Pathnames

If you are using a UNIX Web server, URL pathnames that you provide must match the letter case of these pathnames on the Web server. If the letter case of these pathnames and filenames do not match, your end users will receive a message that the files cannot be found when they attempt to install and run WebClient and your application.

Checking for an Acceptable Version of WebClient

The first verification WebClient Initializer does is to determine that an acceptable version of WebClient is installed on your user’s system. The Initializer compares the installed versions of WebClient with the acceptable versions listed in the application configuration file. If there is an acceptable but older version, the Initializer gives the user an opportunity to install the preferred version or run with an existing version. If there is no older but acceptable version, the Initializer gives the user an opportunity to install the preferred version.

For any case where the user chooses to install the preferred version of WebClient, the Initializer opens a Web browser on the user’s system to the URL of the WebClient installation specified in the application configuration file and exits, allowing the user to continue with the installation over the Web.

If the user chooses to go with an acceptable version already installed, the Initializer proceeds with the next validation. Otherwise, the Initializer exits without proceeding.

Whatever WebClient version the user chooses to run, the user can activate a Don’t ask me this again toggle box to prevent notification of another update until you specify a different preferred version in the configuration file.

If WebClient Initializer finds that the application specified in the configuration file is not installed, one of the following happens:

Checking for Required Application Updates

If WebClient Initializer finds that the installed version of the application is out of date, it gives the user an opportunity to update it. For more information, see the "WebClient Application Updates" section.


Copyright © 2004 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095