HTTP_SIMPLE_INBOUND

This activity may be used to process an inbound HTTP request. It will receive the content of the HTTP request and save it to a specific directory.  The name and location of the saved content will be output as a parameter value.

Other identifying criteria relating to the HTTP message will be output as parameter values.

For more information on inbound HTTP processing in LANSA Composer, refer to:

HTTP Inbound (Server) Processing in LANSA Composer

 

To understand how your Processing Sequence containing the HTTP_SIMPLE_INBOUND activity is connected with an inbound HTTP request, refer to:

Connect Your Processing Sequence to an Inbound HTTP Request

 

This activity is nominally an iterator activity, although it is unusual insofar as it iterates only once.  It is defined as an iterator activity in order to allow any processing sequence directives nested beneath it to process the received content and prepare the response payload, if any.  You can nest transformation maps, other activities or whatever directives you need to perform this.  The activity's input parameters (RESPONSEFILEPATH and RESPONSECONTENTTYPE) that specify the response payload are not evaluated until the iteration completes - so your nested processing sequence directives can set their values.

NOTE: In LANSA Composer version 5.0 and earlier, this activity was called HTTP_INBOUND.  It was renamed HTTP_SIMPLE_INBOUND in LANSA Composer version 6.0 when an additional suite of advanced HTTP activities was introduced.

INPUT Parameters:

 

RESPONSEFILEPATH: Optional

This parameter can specify the path and file name of a file containing content (of the type specified in the RESPONSECONTENTTYPE parameter) that is to be sent in response to the inbound HTTP request.  If specified, the content of the file is sent in response.  If not specified, then the activity sends the response status and message specified by the RESPONSESTATUS and RESPONSEMESSAGE parameters.

Note that this parameter is not evaluated until the iteration completes - so your nested processing sequence directives can set its value according to the nature or content of the request received.

RESPONSECONTENTTYPE: Optional

If you specify the RESPONSEFILEPATH parameter, then you must specify the corresponding content type (eg *TEXTPLAIN) for the response content.  This parameter is not used if the RESPONSEFILEPATH parameter is not specified.

Note that this parameter is not evaluated until the iteration completes - so your nested processing sequence directives can set its value according to the nature or content of the request received.

RESPONSESTATUS: Optional

This parameter can specify the response status to be sent if no value is supplied for the RESPONSEFILEPATH parameter.  If not specified, a response status of 200 (OK) is assumed.

Note that this parameter is not evaluated until the iteration completes - so your nested processing sequence directives can set its value according to the nature or content of the request received.

RESPONSEMESSAGE: Optional

This parameter can specify the response message to be sent if no value is supplied for the RESPONSEFILEPATH parameter.  If not specified, the activity uses the OK HTTP response message specified in the HTTP configuration (if any).

Note that this parameter is not evaluated until the iteration completes - so your nested processing sequence directives can set its value according to the nature or content of the request received.

 

OUTPUT Parameters:

 

HTTP_CONTENT 

This value will contain the path and file name of the saved inbound HTTP content.

For example:    On an IBM i server        /inorders/HI25.dat

On a Windows server     C:\order\HI123.dat

The directory will be taken from the system setting HTTP inbound payload directory.

The file name will be derived from a prefix plus a unique number plus .dat extension. The prefix is taken from the system setting HTTP inbound filename prefix.

HTTP_CONTENT_TYPE 

This value will contain all the content types which are applicable to the content.

For example, a Comma Separated file will have a value of  *TEXT *SV *CSV

Refer to the HTTP Configuration for a full list of types.

HTTP_CONTENT_TYPE2 

This is an alternate representation of the content type.  It will contain the actual value of the CONTENT-TYPE HTTP header.  For example, text/plain.

HTTP_CONTENT_LENGTH 

This value will contain the content length of the content received on the HTTP inbound request.

HTTP_QUERY_STRING 

This value will contain the query string from the URI.

If the full URI was  http://lansa01:8080/cgi-bin/jsmdirect?ZZorders

then the query string would have a value of ZZorders.

HTTP_REMOTE_ADDRESS 

This value will contain the IP address of the remote server.

HTTP_REMOTE_USER

This value will contain the remote user if available.

HTTP_SERVER_PORT

This value will contain the local port number that serviced this inbound HTTP message.

PROXY_REMOTE_ADDRESS 
PROXY_REMOTE_USER
PROXY_SERVER_PORT

These values may be received when the inbound HTTP request is received by and forwarded from the JSMPROXY proxy server.  They will contain values functionally equivalent to HTTP_REMOTE_ADDRESS, HTTP_REMOTE_USER and HTTP_SERVER_PORT respectively, but the values will be those received and forwarded by the JSMPROXY proxy server.