BEA Home | Events | Solutions | Partners | Products | Services | Download | Developer Center | WebSUPPORT
| WebLogic Server Doc Home | Using ZAC | Previous Topic | Next Topic | Contents | View as PDF

Publishing with WebLogic ZAC

This section provides an overview of using the WebLogic Zero Administration Client (ZAC), including the following topics:

- Introduction

- Trying Out the ZAC Demos

- How ZAC Works

- Setting up WebLogic for Publishing with ZAC

Introduction

Note: The WebLogic Zero Administration Client is a deprecated product. BEA recommends that you use the Sun Microsystems Java Web Start product. Java Web Start is a Java 2-compliant product that enables users to download Java applications.

WebLogic ZAC, the Zero Administration Client utility, lets you publish and republish applications, applets, and libraries with ZAC, so that they are transparently and automatically updated to the latest version on the end user client machine. With ZAC, you no longer need to manually distribute applications, applets, or libraries to your clients; you can depend on ZAC's automatic services to do so.

ZAC is extremely efficient. When a ZAC application is republished, only the minimal amount of data is sent over the network to each client, to bring the applications on your clients up-to-date. In a typical scenario where little or nothing has changed, the overhead for checking for new files at startup is not noticeable to a user.

ZAC is highly configurable, so that you can design how your application should be published, installed, and updated. You can check for updates to the application and to its dependent libraries each time the application starts or stops; on a scheduled basis, or you can disable the check for new ZAC updates altogether. Although this would disable ZAC's most powerful feature, it may be desirable for packages that you intend to distribute once only as a static version.

ZAC uses a protocol called the HTTP Distribution and Replication Protocol (DRP), a specification submitted to the W3C in August 1997 for the efficient replication of data over HTTP.

This document includes instructions on how to use the ZAC Publish Wizard to publish applications on a WebLogic Server for distribution to your users.

Trying Out the ZAC Demos

When you install on Windows with the install shield (.exe) version, WebLogic comes out-of-the-box with two ZAC packages, ZSimple and ZUpdate, that you can try out immediately to see how WebLogic ZAC works. (This pre-installed demo does not function correctly if you have installed WebLogic Server from the .zip file distribution.)

1. Start WebLogic. (You will need to know the system password to publish.)

2. Start the ZAC Publish Wizard. Win32 users can use the shortcut for ZAC Publisher available in the WebLogic directory in the Start menu.

Non-Windows users can start the Publish Wizard from the command line (after setting your CLASSPATH with this command:

>      $ java weblogic.PublishWizard

1. From the Publish Wizard window, double-click the ZSimple or ZUpdate selection. You can walk through all the steps to see a demonstration of how to publish a package, or you can just press the Finish button to skip to the review phase.

2. Press the "Done" button.

3. To publish the application, select it in the list and select Publish... from the Package menu. Select the appropriate Host and press the Publish button. If you are only connected to one host, this will be selected automatically for you. A "Publishing..." dialog will display the status of the publish operation and, if successful, the package will appear in the lower-left window of the Publish Wizard, under the selected WebLogic Server host. You may need to expand the "+" symbol to see the published package.

4. You can test the published package by selecting the package under a WebLogic Server host in the published window (lower-left), then select Test run from the Server menu.

You can open the package again after the test run starts, change a few parameters, and republish the application to see how the client responds.

The rest of this document describes how to create and publish a package, and how to create a bootstrap executable — which is the standard way to install and run an application from a ZAC package.

How ZAC Works

Any Java application, applet, or library can be published as a ZAC package. You do not need to add anything special to the Java source code to publish your program with ZAC. (However, ZAC does include a Java API that you can use in writing your application to add interactive control over when ZAC updates should occur or whether the application should respond immediately to ZAC updates. Developing with the ZAC API is discussed in Developing with WebLogic ZAC.)

ZAC works very simply from your user's perspective.

1. You publish an application to a WebLogic Server with the ZAC Publish Wizard.

2. Your user downloads a small native-OS installer, and simply double-clicks to install and start.

3. The installer creates your application and installs all necessary libraries to support it on the user's machine, as well as a small bootstrap that monitors for new published versions of your application and carries out updates.

How you Publish a ZAC Package on the Server

The ZAC Publish Wizard makes publishing your application easy. You use the ZAC Publish Wizard to:

- Create new ZAC packages

- Publish ZAC packages on a WebLogic Server

- Import ZAC packages from other WebLogic Servers

- Update published ZAC packages on a WebLogic Server

The ZAC Publish Wizard guides you through the process of creating and publishing a package with ZAC on a WebLogic Server. During the publish process, you set up the parameters necessary to run your application or ZAC package on the client machine, such as identifying:

- Which directories contain the files that comprise your application

- Other ZAC packages that your application depends upon

- Which Java runtime environment must be present on the client machine

- Other necessary information to allow your application to work correctly

An application is published to a WebLogic Server and is made available to your users via HTTP. You can republish the package each time you change your application or any of the libraries on which it depends.

How ZAC Installs a Published Application on the User's Machine

When you complete the publishing phase, your application is published on the WebLogic Server. The ZAC Publish Wizard generates a small installation program in native format for each machine type supported by ZAC. Your users download and run this program to install the published application or package. We shall refer to this installation program as the 'installer', in the rest of this document. The installer is a very small executable, and so is quick to download.

To make the published application available to users, just attach the installer to an email or embed an FTP link to it in an HTML page. The user downloads and runs the installer. Since the installation program is a native executable, a user doesn't need to pre-install a Java Runtime Environment (either a JRE or some Java development environment like the JDK).

The installer performs some or all of the following tasks, depending on how you have configured it from the ZAC Publish Wizard:

- (Optional) Checks that a specific JRE that will be needed by the published application is pre-installed on the client machine; the ZAC installer can automatically install a JRE that you provide (as another ZAC package) if necessary.

- (Optional) Queries the user for HTTP proxy information to connect to the publishing WebLogic Server.

- (Always) Downloads and installs the ZAC application.

- (Optional) Downloads and installs any other ZAC packages that the published application is dependent upon.

- (Always) Installs a bootstrapper executable that is used to start a published application, to monitor the publishing WebLogic Server for new versions, and to download new versions when appropriate.

- (Optional) Creates a desktop icon or Start menu item that links to the bootstrapper.

- (Optional) Launches the ZAC application.

After the initial installation, the installer may be deleted from the client's machine.

How a Published Application Runs on the User's Machine

The installer installs your user application, as well as a native bootstrap file. Once the application is installed, your user will use the native-OS bootstrap to invoke the application. Part of the ZAC Publish Wizard process involves creating the bootstrap program.

Each time the client runs the bootstrapper, it first checks for new versions of the published application on the WebLogic Server. If a new version of your application — or any other ZAC packages that the ZAC application depends upon — has been published, the bootstrapper automatically updates the ZAC packages on the client machine with the new versions. The bootstrapper then starts the published application.

Setting up WebLogic for Publishing with ZAC

ZAC must be deployed as a Web application on the WebLogic Server for users to have access to it. Servlets included within the ZAC Web application handle requests from clients. ZAC is deployed on the server as a WAR file, zac.war. To prepare the ZAC package for deployment, do the following:

1. Edit the file web.xml (part of the ZAC Web application) to set a publish root for locating published packages. If the publish root is set to a relative path, the directory will be located in the WebLogic home directory (parallel to the myserver\ directory). If unset, the publish root defaults to the exports\ directory in WebLogic home). The following is an example of an entry in web.xml that sets the publish root:

   >     <context-param>
   >      <param-name>weblogic.zac.publishRoot</param-name>
   >      <param-value>C:/weblogic/publish</param-value>
   >     </context-param>

2. Optionally, set an ACL for each published package to limit access. If unset, the write permission defaults to system, and the read permission defaults to everyone. Setting an Access Control List is also accomplished by editing the web.xml file that is included with the zac.war application. The following is an example of an entry in the web.xml file that sets an ACL for myApp that limits access to three users, Peter, Paul and Mary:

   >     <context-param>
   >     <param-name>weblogic.allow.read.weblogic.zac.myApp</param-name>
   >      <param-value>Peter,Paul,Mary</param-value>
   >     </context-param>

To deploy the ZAC Web application, do the following:

1. Start the WebLogic Server as usual. The WebLogic Server must be running when you can actually publish your ZAC packages, though it need not be running when you are creating the ZAC packages.

2. Invoke the WebLogic Administration Console.

3. To make published packages available, deploy the ZAC Web application archive file zac.war as a Web application. For information on deploying Web applications, see Assembling and Configuring Web Applications in the WebLogic Server Administration Guide.

Copyright © 2001 BEA Systems, Inc. All rights reserved. Required browser: Netscape 4.0 or higher, or Microsoft Internet Explorer 4.0 or higher.