Natural Web Server Extensions - Introduction for SYSWEB3

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 program 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.

  • Apache Module (mod) only for Apache 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.

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

  RPC
CGI

nww3cgi
nww3cgi.ini

ISAPI

nww3isapi.dll
nww3isapi.ini

Parameters

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

Note:
On some HTTP servers (Windows only) executable files without the extension .exe can be used.

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 required.

Variables

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

Each variable to be transferred requires 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 the files of the Natural Web Server Extension are located. 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 (PC) http://server-name/cgi-library/nww3cgi.exe/your-library/your-program
ISAPI http://server-name/cgi-library/nww3isapi.dll/your-library/your-program
mod http://server-name/nww3/mod/your-library/your-program