On IBM i the JSMProxy program performs a keyed lookup on file [email protected] 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 [email protected] file use LANSA Integrator Studio or you may use Data File Utility or SQL commands on the file.
Structure of file [email protected]:
ORDERENTRY SERVER1:89 GET/POST 100000 SERVER1:88 /cgi-bin/jsmdirect
ORDERENTRY *DEFAULT GET/POST 100000 SERVER1:88 /cgi-bin/jsmdirect