Background documentationSAP NetWeaver Application Server with ABAP and Java Locate this document in the navigation structure

 

You can install the SAP NetWeaver AS in various ways. You can find the installation options in Architecture of the SAP NetWeaver Application Server.

The following describes the integrated version with ABAP and Java.

ABAP and Java Minimal Installation

The architecture of this type of system (with one instance) looks like the following:

This graphic is explained in the accompanying text.

This system provides the following functions:

  • Operation using SAPGUI

    Users log on to the dispatcher and work processes perform users' tasks.

  • Processing Web requests

    Web requests are received by an Internet Communication Manager (ICM). These HTTP(S) requests may be designated for the Internet Communication Framework (ICF), that is, processed in an ABAP work process (for example, BSP applications), or they may be J2EE requests, designated for the J2EE Engine.

    With the help of the URL, the ICM decides where to forward the request (see below).

Installation with Several SAP NW AS Instances

The following graphic shows an SAP System with three instances:

This graphic is explained in the accompanying text.

As the system should offer ABAP and Java, each instance must contain an Internet Communication Manager (ICM) that can receive Web requests.

Each of these integrated instances of the SAP NW AS contains the (ABAP) dispatcher and its work processes, which can process the ABAP programs, as well as the Java dispatcher and its server processes, to which it distributes the incoming J2EE requests.

One of the instances must be installed as the (ABAP) central instance (that is, it must offer the enqueue service). Alternatively, the system can be set up with the standalone enqueue server and without a central instance.

Of course, you do not have to use the Web client to log on to an SAP system – you can also log on from the SAP GUI menu. If logon groups are set up here, the message server determines the application server to which the SAP GUI connects. The function of the message server in the ABAP environment is to transfer requests between the application servers.

The Java cluster requires a special instance, the central services instance, for managing locks and transmitting messages and data.

Finally, all the applications and data for ABAP and Java each have a database.

Integration

To operate the J2EE Engine, the following services must be active in the HTTP service tree (Transaction SICF):

  • /sap/public/icman: The ICM uses this service to forward requests to the J2EE Engine.

  • /sap/public/icf_info supplies the SAP Web Dispatcher with details on logon groups, the server load, and so on.

These services must be activated so that the SAP Web dispatcher and the ICM can forward the request correctly.

If these services are not active, you have to activate them in transaction SICF as described in Activating and Deactivating ICF Services.

Features

Distributing HTTP Requests Using the SAP Web Dispatcher

The SAP Web Dispatcher is the central access point from the Internet into the SAP System. The dispatcher has to decide on the application server to which it sends each incoming request. The procedure for this is described in Server Selection and Load Balancing Using the SAP Web Dispatcher.

Recommendation Recommendation

You can also use another load balancer (software or hardware) to distribute the HTTP(S) requests. However, SAP does recommend the SAP Web Dispatcher, as this is designed especially for the SAP environment, distributes requests to the system efficiently, and requires minimal configuration.

End of the recommendation.
Processing HTTP(S) Requests Using the ICM

For each incoming HTTP request, the ICM must decide whether it should forward the request for processing to the ABAP engine (the ICF) or to the J2EE engine.

This decision is made using the URL prefix. The ICM uses the same procedure as the SAP Web Dispatcher.

Communication Between the ICM and Java Dispatcher

A separate protocol is used for the communication between the ICM and the Java Dispatcher. This protocol is described in Communication Between the ICM and J2EE Engine.

Caching in the ICM

You can also use the Internet server cache with the J2EE server, in order to store HTTP responses (such as HTML pages or images). The next time, the request can be retrieved directly from the cache.