Natural Web Server Extensions - Introduction

This section covers the following topics:


General Information

The Natural Web Server Extensions part is basically a program called from an HTTP server. The Natural Web Server Extensions takes parameters, given by the HTTP server, repackages them and performs a broker RPC call to the requested Natural program using a standard parameter data area. Calls are transmitted by the EntireX Broker that is included in EntireX Communicator.

Three HTTP Server interfaces are supported:

  • Common Gateway Interface (CGI), for supported server and platforms,

  • Internet Server Application Programming Interface (ISAPI) only for Microsoft Internet Information Server on Windows.

  • Netscape Server Application Programming Interface (NSAPI) only for Netscape FastTrack Server.

Installation - RPC

Each Natural Web Server Extension consists of two files:

These files can be renamed. The initialization file has the same name as the executable file, but with the extension .ini. The two files must be in the same directory.

Copy the files to appropriate locations of the web server, or parameterize the web server so that it accesses the files direct.

  RPC
CGI

nwwcgi
nwwcgi.ini

ISAPI

nwwisapi.dll
nwwisapi.ini

NSAPI

nwwnsapi.dll
nww/nsapi

Parameters

RPC_ETB_ID_NAME = broker name
RPC_SERVER_NAME = service name
NWW_INOUT_LENGTH = amount of transferred data

Note:
Some HTTP servers allow executable files without the extension .exe. This means that executables with and without the .exe extension are possible.

Transformations

Parameters sent by the HTTP server via the interface are given by means of specific variables or a transfer area. User data contained in a transfer area or the variable QUERY_STRING will be recognized and preprocessed. In particular, the encoding of the URL will be undone.

The design of the Natural Web Server Extensions allows only the transmission of non-binary data, because the data is converted from ASCII to EBCDIC and vice-versa if needed.

Variables

Only variables specified on your HTML page will be automatically transferred to your called program. Other variables available from the HTTP server must be specified.

Each variable to be transferred needs an entry in the initialization file.

It is also possible to add variables that will be treated as system environment variables.

Error Logging and Messages

You can set up your own error screen with a specific HTML page. Variables of the environment can be specified in this error page.

The page last transferred can be copied to a file and errors can be written to an error log file.

Calling Programs

To call a program from your browser, you have to specify a uniform resource locator (URL) which contains the name of you HTTP server and the name of a cgi-enabled directory, where you have copied the files of the Natural Web Server Extension. Then you have to specify the Natural Web Server Extension program name followed by a Natural library and a subprogram name.

  URL for RPC
CGI http://server-name/cgi-library/nwwcgi/your-library/your-program
ISAPI http://server-name/cgi-library/nwwisapi.dll/your-library/your-program
NSAPI http://server-name/nww/nsapi/your-library/your-program