The ICM processes HTTP requests and responses. On the basis of the URL and the port a “local“ handler in the ICM is addressed. Sharing out the requests among different handlers increases performance, because a user context does not have to be created in the work process for each request. The URL prefixes used for the various handlers can be defined in profile parameters. The handlers are called in the order listed below, and they can process the request themselves or forward it to the next handler.
See also:
Parametrization of the ICM and the ICM Server Cache
The local handlers (subhandlers) are called in the order described, provided they have been installed. Which subhandler generates the response depends on how the profile parameters for the URL prefix of the request are defined. If a subhandler has created the HTTP response, the following subhandlers are no longer included in the hierarchy. The exception is the logging handler. This carries out the HTTP logging and forwards it to the next subhandler.
...
1. Logging Handler
This handler records HTTP requests. Its use is described in Logging in the ICM.
2. Authentication handler
The authorization check for the requested page is carried out here.
3. Server Cache Handler
This handler is used to read from and write to the ICM server cache and works as follows:
a. Reads the request
b. If the requested object is in the cache, it delivers the cache entry to the caller.
c. If it isn’t (access error, cache miss), it passes the request to the next handler.
d. Stores the entry in the cache before sending the HTTP response to the client
4. Admin handler
The admin handler is used to Process Administration Requests.
5. File Access Handler
This handler returns a file from the file system (suitable for static files as well as images and HTML pages). The URL prefixes the static file access is to be carried out for are determined in the parameter icm/HTTP/file_access_<xx>.
6. Redirect Handler
This handler simply forwards the HTTP request to another HTTP server (HTTP redirect). The URL prefixes the ICM is to carry out the redirect for are determined in the parameter icm/HTTP/ redirect_<xx>.
7. ABAP handler
This handler forwards the request to the SAP System and waits for a response. This is the default handler, that is, it processes a request if no other handler is processing that request. A user context is created in the work process only if this handler is being used. For more information see Processing HTTP Requests in the Work Process.
8. J2EE Handler
This handler forwards the request to the integrated J2EE server (see Integration of the SAP J2EE Application Server).
The ICM sends the generated HTTP response back to the client.