Plain HTTP
Adapter
The plain HTTP adapter gives application systems the option of communicating with the Integration Engine and exchanging business data using a plain HTTP connection. Depending on the receiver system, outbound messages can be enhanced with certain information.
The plain HTTP adapter is part of the Integration Engine. It comprises two parts, namely an adapter at the Integration Engine inbound channel and an adapter at the Integration Engine outbound channel.

For compatibility reasons, both the old XI message protocol (2.0) and the current XI message protocol (3.0) are supported at the inbound and outbound channel.
The adapter at the inbound channel is located before the Integration Engine pipeline and calls this pipeline. The adapter at the outbound channel is called by the pipeline, and can therefore be regarded as part of the pipeline. It requires a corresponding communication channel from the technical routing for each logical receiver.
The adapter can be created automatically for business systems that are defined in the System Landscape Directory. See also: Creating Communication Channels Automatically
The plain HTTP
adapter is used by external systems to connect to the Integration Engine using
the native HTTP interface (HTTP payload without SOAP envelope). These systems
are connected using the Internet communication framework of the SAP Web
Application Server. For this purpose, the Integration Engine HTTP inbound
channel contains an
HTTP service
delivered by SAP, called /sap/xi/adapter_plain.
There are two usage types for the plain HTTP adapter:
● Synchronous processing

Ordering on the Internet with an order number as a response.
● Asynchronous processing

Ordering on the Internet without confirmation of the purchase.
In principle, both scenarios are possible at the Integration Engine HTTP inbound and outbound channels.
In special cases for particular external servers with CGI scripts, for example marketplaces, it is possible to send the payload as an HTML form using HTTP post. The payload is enhanced correspondingly. For example, the content type is included in the payload.

The plain HTTP adapter only evaluates the main payload of a received XML message. Additional attachments are ignored and not forwarded.
See also: Configuring the Sender Plain HTTP Adapter
See also: Configuring the Receiver Plain HTTP Adapter
Some external systems, for example, Web servers in marketplaces, can only process data if it is sent as an HTML form using HTTP.
A typical HTML form comprises named fields. When transferring a completed form to the server or a CGI program, the data must be transferred in such a way that the CGI script can recognize the fields that make up the form, and which data was entered in which field.
The plain HTTP adapter constructs this format using a prolog and an epilog. Therefore, there is a particular code method that separates form fields and their data from each other. This code method uses the following rules:
● Individual form elements, including their data, are separated from each other by the character &.
● The name and data of a form element are separated from each other by an equals sign (=).
● Blanks in the entered data (for example, in multiple words) are replaced by a plus sign (+).
● All characters with the (enhanced) ASCII values 128 to 255 (hexadecimal 80 to FF) are transcribed using a hexadecimal sequence, beginning with a percentage sign (%) followed by the hexadecimal value of the character (for example, the German umlaut ö in the character set ISO-8859-1 is transcribed as %F6).
● All characters that occur in these rules as control characters (&, +, =, and %) are also transcribed hexadecimally in the same way as high value ASCII characters.
