Registering Functions for JSMProxy

On IBM i the JSMProxy program performs a keyed lookup on file DC@W30V1 to locate the remote host and program that will receive the forwarded request.

The Host Name is the host component of the request URL this is determined by the HTTP protocol Host keyword.

If the URL is http://www.lansa.com/cgi-bin/jsmproxy then the Host Name is WWW.LANSA.COM:80.

If the URL is http://10.1.2.3/cgi-bin/jsmproxy then the Host Name is 10.1.2.3:80.

This allows multi-homing where the IP address of www.lansa.com and 10.1.2.3 are the same but the HTTP client program specifies the host name in the HTTP protocol allowing the HTTP server to treat www.lansa.com and 10.1.2.3 as different hosts.

A Host Name of *DEFAULT means any host.

JSMProxy first does a keyed lookup for on the Application Name and Host Name, if an entry does not exist then a second keyed lookup on Application Name and *DEFAULT is done.

If the service (application name) does not exist, JSMProxy returns an error message otherwise the connection is forwarded to the selected remote host and remote program.

To update the DC@W30 file use LANSA Integrator Studio or you may use Data File Utility or SQL commands on the file.

Structure of file DC@W30:

 

Field

Description

Details

K

W30SRV

Application Name

Name identifying the application to be executed on the remote host.

K

W30LHO

Host Name

Host Name specified either as *DEFAULT or HostName:Port.

 

W30MTD

Method Accepted

The proxy program checks the method field to see if the request method is allowed. Possible method field values are:
GET
POST
GET/POST
*ANY

 

W30LMT

Content Limit

The proxy program checks the content limit field to see if the inbound content does not exceed the limit value.

 

W30RHO

Remote Host

Remote Host specified as HostName:Port.

 

W30PGM

Remote Program

If the remote program is blank, it will default to /cgi-bin/jsmdirect.

 

 

Example

 

ORDERENTRY SERVER1:89 GET/POST 100000 SERVER1:88 /cgi-bin/jsmdirect

ORDERENTRY *DEFAULT   GET/POST 100000 SERVER1:88 /cgi-bin/jsmdirect