ANSA The ANSAweb Distribution Kit Overview

What it is

The aim of ANSAweb is to integrate CORBA with the Web.

The ANSAweb task has happened in two phases:

Phase 1: Object Wrapping
This phase was about wrapping CGI services in CORBA IDL. It produced a CORBA IDL to CGI stub compiler (SC-CGI), which was delivered in June 1995.
Phase 2: Object Infrastructure
This phase was about introducing the IIOP protocol into the Web to promote interoperability and to provide a path for migrating Web browsers and servers to CORBA object technology. This phase has delivered the present ANSAweb Distribution Kit.

The software in this distribution kit implements Phase 2 of ANSAweb.

Support and contact address

If you use this software, we would be pleased to know who you are and what you use it for. Please email us at the address below. This address can also be used to report problems, suggestions and to make general comments about the ANSAweb work -- although we can't guarantee a reply, since the ANSAweb software is not a supported product (see the disclaimer below).

Email address:
<ansaweb@ansa.co.uk>
Web address:
<URL:http://www.ansa.co.uk/>
Postal address:
The Information Services Framework Group,
The ANSA Project,
APM Ltd.,
Poseidon House,
Castle Park,
CAMBRIDGE, UK.
CB3 0RD

How to retrieve it

The ANSAweb distribution may be retrieved from <URL:ftp://ftp.ansa.co.uk/ANSAweb/>. Pull the file 00README.TXT to find out what is in the other files.

Platform Requirements

This ANSAweb software builds on at least the following platforms:

You'll need about 44 Mb to build the distribution. (More detailed information about unpacking and building is contained in the 00README.TXT file.)

Making the distribution kit (Unpacking, Building, Testing)

[Read the file 00README.TXT which comes with the distribution kit.]

How to use it

A good way to learn how to use the ANSAweb software is to try the "run_all" demo set-up. To do this:

  1. Go into the demo directory: "cd demo"
  2. Edit the shell script file "run_all" to tailor it to your local environment. You'll have to set the variable "fqdn" to your Fully Qualified Domain Name. You may also have to set the port numbers at which the of the various ANSAweb listen for requests, if these port numbers are already being used for other things in your environment.
  3. Run it: "run_all".

Basically, what the "run_all" demo does, is to:

  1. Start an I2H gateway component. This will:
  2. Start a Locator component. This will:
  3. Start an H2I gateway component. This will:
  4. Start a Mosaic browser.

[If you use Netscape instead of Mosaic: start Netscape, bring up the Network preferences window and set the HTTP proxy entry to the Web address of the H2I component.]

The following paragraphs provide a summary about the command line, environment variables and files for each of the major runnable ANSAweb components.

I2H

Command line

i2h [-d] [-i idle_seconds] [-k object_key=web] [-o orbname=internet] [-p portnum=5555]

Where:

Locator

Command line

locator [-d] [-i idle_seconds] [-k object_key=locator] [-o orbname=internet] [-p portnum=5555]
Where:

Relevant environment variables and files
I2H_REF

Where to find an I2H gateway component. E.g.
I2H_REF=iiop:1.0//tester.ansa.co.uk:8888/web; export I2H_REF

STATE_FILE

The Locator has an optional state file, whose name is supplied in the STATE_FILE environment variable. The state is read from this file on startup, and written there on closedown, any failures to open the file being ignored.

RULES_FILE

The Locator bases suggestions for IIOP-based Web servers and gateways on its record of what has worked or failed in the past, together with a set of rules for intelligent guesses. It prefers to recommend a server which has worked for the same URL (or a similar one) in the past, or one which has been recommended, before resorting to the rules. If the rules fail to come up with anything, we try something that's been tried before but failed.

The rules can be supplied in the environment variable I2H_REF or in a file whose name is in the environment variable RULES_FILE. Also there is a built-in set of rules which will be used if neither of these environment variables exist.

The rules are written as strings containing '%' characters like in printf. The supplied URL is separated into host, domain and port (e.g. http://fred.ansa.co.uk:42/ has host 'fred', domain 'ansa.co.uk' and port 42). In the rules, %h represents the host, %d the domain and %p the port; in addition, %q means '%p plus a well-known constant' (where the constant is 1 for now). This enables you to write rules suggesting that you try the same host, or a host called 'iiop' in the same domain, with a variety of possibilities for the port number:

  • a constant
  • the same as in the URL
  • or with a constant added.

The file "demo/locator.rules" contains an example rules set. In fact it contains the same rules set as the default rules set built into the Locator code. This rules set is given and explained below:

iiop:1.0//%h.%d:%q/web // try the same host, port + 1
iiop:1.0//%h.%d:8181/web // try the same host, high port
iiop:1.0//iiop.%d:8181/web // try iiop.domain, high port
$I2H_REF // use environment variable if desperate

H2I

Command line

h2i [-d] [-r configuration_file]
Where:

Relevant environment variables
LOCATOR_REF

Where to find a Locator component. This must be set. E.g.
LOCATOR_REF=iiop:1.0//tester.ansa.co.uk:8484/locator; export LOCATOR_REF

IIOP_DEBUG

Turns on the debug option if set. E.g.
IIOP_DEBUG=1; export IIOP_DEBUG

How it works

[Read our paper "A Web of Distributed Objects" which will be presented at the 4th International Web Conference Dec 95. This paper can be found on the Web at: (dead hyperlink - http://www.ansa.co.uk/ANSA/ISF/wdistobj/Overview.html)]

Disclaimer

This ANSAweb software is being made available in source form to enable recipients to undertake experiments and porting. It has been tested with the facilities available to the ANSA Team. It is not supported as a warrantied software product and any or all parts may change in future versions. APM and ANSA shall not be liable for any damage, loss or injury incurred by any person or organisation as a result of using this software.

The ANSA ISF Group
<ansaweb@ansa.co.uk>

7 Dec 1995; <am@ansa.co.uk>
Converted from text 13 Dec 1995 by Toby Speight <tms@ansa.co.uk>
and subsequently updated.
Last modified: Wed Dec 13 19:48:12 GMT 1995