IBMStreams com.ibm.streamsx.inet Toolkit > com.ibm.streamsx.inet 2.9.6 > com.ibm.streamsx.inet.rest > HTTPRequestProcess
Operator accepts a web request and generates corresponding response. The request is injected into streams on the output port, the input port receives the response.This enables a developer to process HTTP form's and REST calls. The request arrives on the output port, results are presented on the input port.The request is coorolated to the response with an attribute 'key' that arrives with the request parameters' on the output port and must accompany the response on the input port.
For the analyze path any HTTP method can be used and any sub-path. For example with a context of api and operator name of Bus then api/Bus/ports/analyze/0/get_location is valid.
Input and output ports have two possible formats: tuple and json. With tuple format, each web input fields is mapped to an attribute. Json format has one attribute ('jsonString'), each web field is mapped to a json object field.
The jsonString object will be populated with all the fields. The default attribute names can beoverridden for tuple.
The operator handles two flavors of http requests, forms and REST. In the case of forms, webpages can be served up from the contextResourceBase, this can be to static html or template. . Refer to the spl example for a form processed by the operator using a template to format the response.
Optional: certificateAlias, contentTypeAttributeName, context, contextResourceBase, headerAttributeName, keyAttributeName, keyPassword, keyStore, keyStorePassword, methodAttributeName, pathInfoAttributeName, port, requestAttributeName, responseAttributeName, responseContentTypeAttributeName, responseHeaderAttributeName, responseJsonAttributeName, statusAttributeName, statusMessageAttributeName, trustStore, trustStorePassword, webTimeout
Response to be returned to the web requestor.
Request from web to process.
Optional: certificateAlias, contentTypeAttributeName, context, contextResourceBase, headerAttributeName, keyAttributeName, keyPassword, keyStore, keyStorePassword, methodAttributeName, pathInfoAttributeName, port, requestAttributeName, responseAttributeName, responseContentTypeAttributeName, responseHeaderAttributeName, responseJsonAttributeName, statusAttributeName, statusMessageAttributeName, trustStore, trustStorePassword, webTimeout
Alias of the certificate to use in the key store. When this parameter is set all connections use HTTPS.
Output port's attribute with content-type will be provided in, default: "contentType".
Define a URL context path that maps to the resources defined bycontextResourceBase. This allows a composite that invokes this operator in a toolkit to provide resources regardless of the value of the application's data directory. For example setting it to maps would result in the URL /maps/index.html mapping to the file index.html in the directory defined by contextResourceBase. Requires the parameter contextResourceBase to be set. If when the operator is initialized the context already exists then no action is taken. This allows multiple independent composites in the same toolkit to have common context and contextResourceBase settings, typically to point to a single set of HTML and Javascript resources for the toolkit.
If the operator provides URLs for its input or output ports then they are placed in the this context when this parameter is set. This then provides fixed locations for the URLs regardless of the depth of the operator invocation in the main composite.
Only a single context per invocation is supported.
Directory location of resources that will be available through the the URL context defined by the parameter context. Typically used to allow a toolkit to provide a set of resources in a fixed location. The set of resources is recommended to be stored in the application_dir/opt directory, which is automatically included in the bundle by default. Path of this directory can be absolute or relative, if relative path is specified then it is relative to the application directory. A set of default resources is included in the toolkit directory under ToolkitDir/opt/resources and will be loaded by the operator. This default resources can be viewed at http://hostname:8080/streamsx.inet.resources. A path within the application is obtained using the SPL function getThisToolkitDir(). Thus a composite in the file maps.spl in the namespace directory com.acme.streams.apps.map might have the following setting to map http://127.0.0.1:8080/maps to opt/resources/mapinfo in the application.
param context: “maps” contextResourceBase: getThisToolkitDir() + “/opt/resources/mapinfo”
Output port's web request headers, in the form of a objects<name, value>, default: "header".
Input and output port's corrolation key. The values is expected to be unchanged between the input and output, default: "key".
Password to the certificate. If not provided, defaults to the value of keyStorePassword.
URL to the key store containing the certificate. If a relative file path then it is taken as relative to the application directory.
Password to the key store.
Output ports's attribute name with the request method (PUT, GET, POST), default: "method".
Output ports's attribute of the content path below the base, default "pathInfo".
Port number for the embedded Jetty HTTP server. Defaults to 8080.
Output port's attribute name with the web request (body of the web request), default "request".
Input port's attribute response (body of the web response), default: "response".
Input port's web response content type, default: "contentType".
Input port's web response header objects<name,value>, default: "header".
Input port's json results (complete response), default: "jsonString".
Input port's attribute web status, default: "status".
Input port's web status message response, when the 'status' value is >= 400 (SC_BAD_REQUEST), default: "statusMessage".
URL to the trust store containing client certificates. If a relative file path then it is taken as relative to the application directory. When this parameter is set, client authentication is required.
Password to the trust store.
Number of seconds to wait for the web request to be processed by Streams, default: "15.0".
Jetty SSL/TLS status: 0=HTTP, 1=HTTPS
Number of requests currently being processed.
Number of requests received from web.
Number of vaild responses sent back via web.
Missing tracking key count..
Number of timeouts waiting for response from Streams.
Jetty (HTTP/HTTPS) server port