You are on page 1of 8

SAP

SAP Web Application Server

© 2011 Manish Shankar | shankarmnish@gmail.com

mySAP Business Intelligence. It integrates e-business strategies to provide robust software. it is the natural evolution of proven SAP application server technology formerly known as SAP Basis. It supports both J2EE and ABAP. native Web technologies. SAP Portal. and the forthcoming SAP R/3 Enterprise). like SAP R/3 Enterprise. The application can be created from web application builder. It also offers a wide range of services that enable extensive. open standard-based application server from SAP. and Web services for business-to-business collaboration. XML.g. Web application server supports Internet capabilities and runs across various platforms. and its code contains HTML. and connectivity. and J2EE etc. and serves as the underlying infrastructure for all new and upcoming SAP solutions. which is the basis for the other NetWeaver components. BSP resembles ASP or JSP. Building on the scalable and reliable SAP application server. Server applications (e. It should be scalable and reliable which can deliver the needed scalability and performance. which is an object oriented development environment that supports JavaScript and ABAP. SAP web application server possesses the needed features and is an important component of mySAP.SAP Web Application Server What exactly is the SAP Web Application Server? The SAP Web Application Server is the reliable. SAP Web Application Server delivers innovative. both server-based and client-based Web applications can be implemented.com components (such as mySAP Customer Relationship Management. and all other SAP components. The SAP Web Application Server is not a new product. a J2EE and ABAP environment for architecting applications. It provides the platform to develop. The main part of the server can be used to create Business Server Pages. software logistics. which can be compiled on request from the server. The server should support Internet technologies such as HTTP. execute. including a development environment. online shops or portals) can be created in the integrated development environment or in an external tool. SAP Exchange Infrastructure. The application server serves as the main component for SAP R/3 and other version of ERPs. © 2011 Manish Shankar | shankarmnish@gmail. The SAP Web Application Server is the application platform of the SAP NetWeaver. global e-business solutions.com . With the SAP Web Application Server. and operate Web applications and Web services as well as traditional SAP GUI based applications. SAP Web Application Server is the underlying technology for all mySAP. security. These applications can contain Web pages as well as static HTML code and dynamic script code.

The connectivity is used for integrating the third party applications and tools. Simple Object Access Protocol (SOAP). The underlying business layer provides the business content in Java or ABAP. which includes the deployment of business objects. The local integration engine provides messaging services that exchange messages between the components that are connected in SAP XI.Architecture The architecture contains ICM that is the internet communication manager. Developers can also access the business objects of applications running in the ABAP environment to benefit from their business logic and persistence. and Fast Common Gateway Interface (FastCGI). Business Server Pages (BSP). The business logic can be written either in ABAP or in Java based on the J2EE standard. Open connectivity is used to allow technical interoperability. Business layer The business layer consists of a J2EE certified run-time environment that processes the requests passed from the ICM (The Internet Communication Manager) and dynamically generates the responses. which communicates with the server over intranet or internet using HTTP.com . the user interface can be developed with Java Server Pages (JSP). Simple Mail Transfer Protocol (SMTP). HTTPS or SMTP. modules are available for Hypertext Transfer Protocol (HTTP). The business environment is used to create business content and logic. or with Web Dynpro technology. Integration layer The local integration engine is an integral part of SAP Web AS and allows instant connection to SAP XI. Connectivity layer The Internet Communication Manager (ICM) dispatches user interface requests to the presentation layer and provides a single framework for connectivity using various communication protocols. © 2011 Manish Shankar | shankarmnish@gmail. and SOAP or XML based protocols can be used for communication The architecture of SAP Web Application Server can be separated into 5 areas: Presentation layer In the presentation layer. Currently. Developers can implement business logic and persistence with Enterprise JavaBeans (EJB) using the J2EE environment. HTTPS (extension of HTTP running under the Secure Socket Layer (SSL)). and the communication uses high performance channel called ‘the memory pipe’ to provide improved performance and scalability. and ABAP environment is used to run SAP based applications.

you not only protect the investments that you have already made in ABAP applications and expertise. For users and applications. The SAP Web Application Server can execute – depending on your chosen installation option – ABAP and/or Java programs. are also supported. supporting both programming environments in a common. such as SQLJ. Other technologies. delivering a proven e-business environment with native Java support for easy deployment.Persistence layer The persistence layer supports database independence and scalable transaction handling. the integration is completely transparent.) to create Web applications. This means you can use the ABAPbased and a Java technology (JSP. and new applications will be built leveraging both environments. © 2011 Manish Shankar | shankarmnish@gmail. integrated infrastructure. it also slices a considerable chunk off your operating costs. straightforward installation and administration. or the direct use of the Java Database Connectivity (JDBC) API. SAP propagates the outstanding capabilities of Open SQL for ABAP to Open SQL for Java and offers a variety of standard Application Programming Interfaces (APIs) to application programmers. etc. Naturally. Using this approach gives developers a single infrastructure that leverages the advantages of both environments. such as Java Data Objects (JDO) and container managed persistence (CMP) for EJB. but you can also channel the latest J2EE proficiency into future applications. Business logic can be developed completely independent of the underlying database and operating system. SAP Web Application Server has both an ABAP and a J2EE personality. J2EE and ABAP in a Common Environment: J2EE and Java are generally accepted as the standard Web programming technologies. The database interface ensures optimized data access from within the ABAP environment through Open SQL. Now. coupled with full life-cycle support for Java-based e-business components. Database independence is also made possible by support for open standards. That way. All existing business objects and interfaces can be used with both the J2EE and the ABAP environment. and there is no shortage of related expertise. companies want to tap into this expertise and use it to build their own e-business applications. This not only simplifies your IT infrastructure. the large base of existing Java developers and J2EE software can be exploited easily. It provides companies with the choice and flexibility to extend their solutions according to their available development skills and technical constraints while supporting all existing SAP applications.com .

The SAP Web AS can behave as a Web server or as a Web client. It supports the protocols HTTP. and SMTP. Server Process and Software Deployment Manager. HTTPS. If all the processes are occupied the requests are stored in the dispatcher queue. The message server exchanges messages and balances the load in the SAP System. In the Java component of the SAP Web AS there are the components Java Dispatcher. The dispatcher distributes the requests to the work processes.com .How It Works: The components and their tasks are described below:  The Internet Communication Manager (ICM) sets up the connection to the Internet. The SAP Gateway makes the RFC interface between the SAP instances available (within an SAP System and beyond system boundaries). The ABAP Work Process executes the ABAP code. It can process both server and client Web requests.      © 2011 Manish Shankar | shankarmnish@gmail. For information on the architecture see Architecture of the SAP Gateway.

ICM also significantly improves Web site performance and scalability using dynamic and active content caching technology. Features: The ICM process uses threads to parallelize the load that comes up. HTTPS. HTTPS or SMTP. The ICM guarantees communication between the SAP System (SAP Web Application Server) and the outside world via the protocol HTTP. memory-based communication channel named memory pipe. ICM is needed if we want our SAP Web AS to communicate with the Internet via HTTP. The communication is carried out using a high-performance. HTTPS and SMTP.ICM (Internet Communication Manager): It is an independent process responsible for communications between the Web Application Server and external supporters over intranets or the Internet using standard protocols like HTTP. The ICM then calls the relevant local handler for the URL in question. In its role as a server the ICM can process requests from the Internet that arrive as URLs with the server/port combination that the ICM can listen to. © 2011 Manish Shankar | shankarmnish@gmail. like Web applications do with Business Server Pages. and Simple Mail Transfer Protocol (SMTP). The graphic below shows an overview of the ICM.com .

the memory pipes and the plug-in data. Then the worker thread can again be used for other requests.com .  Signal Handler These thread processes signals that are sent by an operating system or another process (for example.  Worker Threads These threads handle connection requests and responses. A worker thread contains an I/O handler for the network input and output. If the watchdog receives the response.In addition to the pool of worker threads that process the incoming requests. © 2011 Manish Shankar | shankarmnish@gmail. Sharing out the requests among different handlers increases performance. and they can process the request themselves or forward it to the next handler. If there is a timeout the watchdog takes on the task of waiting for the response. The OOB pipe is used for control data. The handlers are called in the order listed below. For each connection there are four pipes: for each request and response one data pipe and an OOB (Out Of Band) pipe. the following ICM components are implemented as further requests:  Thread Control This thread accepts the incoming TCP/IP requests and creates (or wakes) a worker thread from the thread pool to process the request. which then wakes up a worker thread. The URL prefixes used for the various handlers can be defined in profile parameters.  Watchdog Usually a worker thread waits for a response (regardless of whether it is a client or a server thread). The ICM contains another cache to enable repeated requests to be quickly responded to. the dispatcher). SMTP.…). On the basis of the URL and the port a “local“ handler in the ICM is addressed. Processing HTTP Requests: The ICM processes HTTP requests and responses. Then the thread control initializes the connection info data.  Memory Pipes These memory-based communication objects are used to transfer data between the ICM and the work processes. which are required to be able to decide when the sent packet is finished (depends on the protocol).  Connection Info This table contains for each existing network connection details of the status. This cache is not shown in the graphic. it informs the thread control component. diverse plugins for the various supported protocols (HTTP. because a user context does not have to be created in the work process for each request.

and the language used for server side presentation is called BSP. scalability. To run the application it acts as a server and when it is accessing a system it can act as a client. It can communicate though HTML and XML. Conclusion: With the SAP Web Application Server. SAP Web Application Server supports all the operating systems. Server Side Scripting: It can adopt server side scripting such as ASP and JSP. cookies generation for user authentication and ticketing to ensure security. It supports open technology. but you can also channel the latest J2EE proficiency into your applications.to the J2EE world. The efficient database features can be used to optimize lock management and it can be used in multi user environment Compatibility: WAS allows compatibility to various internet standards and it can work on many different technologies.com . which is used to identify users. change management. platform independence.509 client certificates. It uses SSL and HTTPS for providing standard security to the system. and it also has X. Security: The web application server allows digital certification. Independent Platform: The system supports different types of operating system and databases. and it can function as client or server depending on the requirements. freeing customers from technological constraints and giving them the power to build the infrastructure that best fits existing environment and individual needs. Open Architecture: It uses open system for integration to SAP or non SAP based applications. software logistics. SAP brings the benefits of their proven infrastructure . and databases supported by SAP. That way. you not only protect the investments that you have already made in ABAP applications and expertise. © 2011 Manish Shankar | shankarmnish@gmail.Features of WAS: Flexible and Robust System: It provides highly flexible and robust web infrastructure which has efficient caching mechanism and database access features. and business knowledge .reliability. It includes communication protocols and standards for storing business objects and processes.