tadmj1+ +sap+java+engine+administration

424
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 1/424 © SAP AG 2004 TADMBO Implementation&Operation II THE BEST-RUN BUSINESSES RUN SAP  © SAP AG 2004 TADMJ1 SAP Java Engine Administration 2005  /Q1 Material number: 50069563

Upload: mukesh-jha

Post on 07-Apr-2018

226 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 1/424

© SAP AG 2004

TADMBO Implementation&Operation II

THE BEST-RUN BUSINESSES RUN SAP

 © SAP AG 2004

TADMJ1

SAP Java Eng ine Admin is t ra t ion

2005 /Q1

Material number: 50069563

Page 2: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 2/424

1

© SAP AG 2004, Web AS Java Installation and Upgrade

Course: SAP Ja va Engine Adm inis t rat ion

1. Web AS Standalone Java Installation

2. Java Startup & Control Framework

3. Web AS Java Administration Tools Overview

4. SAP Java Administration

5. SAP Web Infrastructure

Units:

Page 3: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 3/424

2

© SAP AG 2004, Web AS Java Installation and Upgrade

Uni t : Web AS Standalone J ava Instal la t i on

Installation of the SAP J2EE Engine

Lesson:

Page 4: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 4/424

3

Inst a l la t ion of t he

SAP J2EE Eng ine

SAP AG

Page 5: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 5/424

4

© SAP AG 2004, Web AS Java Installation and Upgrade

Inst a l la t ion of SAP Web AS J ava: Lesson Objec t ives

After completing this lesson, you will be able to:

Plan your Web AS Java Installation.

Understand the document changes

Understand the changes in the SAPInst process

Migrate/upgrade your previous Web AS Java Installation.

Understand the J2EE Engine installation steps

Page 6: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 6/424

5

SAPInst Changes

Document Changes

J2EE Engine Migration and Upgrade

Introduction

Page 7: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 7/424

6

© SAP AG 2004, Web AS Java Installation and Upgrade

The Web App Server prov ides a c omm on foundat ion for  NetWeaver 

The Web Application Server isthe comple te in f ras t ruc ture

to develop, deploy and run:

All SAP NetWeaver components

mySAP Business Suite

Customer-developed

applications

3rd-party Java 2—Enterprise

Edition-compliant

applications

Integrates the proven ABAP

and the innovative in ternet -dr iven Java technology in one

application server 

SAP NetWeaver™

CRM

 mySAP Business Suite

BW EP XI MI MDM

Web Application Server 

ERP SRM

J2EE ABAP

The SAP Web Application Server is the technical platform for SAP NetWeaver,

providing the complete infrastructure to develop, deploy and run all SAP NetWeaver components, the mySAP Business Suite, customer-developed applications and 3rd-

party J2EE 1.3 compliant applications.

SAP Web AS fully supports both the proven ABAP technology and the open source

internet-driven technologies—Java and Java 2 Enterprise Edition, also called J2EE.

Page 8: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 8/424

7

© SAP AG 2004, Web AS Java Installation and Upgrade

Basic System Var iants of SAP Web AS

SAP Web Application Server 

Database Instance

SAP Web AS ABAP

ABAP

Schema

For SAP Web AS 6.40,

the following basic

system variants exist:

SAP Web AS Java

Java

Schema

• SAP Web AS Java

(J2EE Engine, but no

ABAP Engine)

• SAP Web AS

ABAP+Java (ABAP

Engine and J2EE

Engine)

Detailed view: central

instance consists of both ABAP and Java

parts, SCS instance

only required for Java

Central Instance

ABAPEngine

J2EEEngine

Central Services

Instance

(SCS)

• SAP Web AS ABAP(ABAP Engine, but

no J2EE Engine)

The SCS (Central Service Instance) is required only for Web AS Java.

The SCS consists of several Central Services which run on one physical server.

The Central Services comprise the message service and the enqueue service.

The SCS forms the basis of communication and synchronization for the Java cluster.

Central Services are always required when a Java cluster is installed. They are

started on a server with their own system number and the system ID (SID) of the

whole system.

Page 9: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 9/424

8

SAPInst Changes

Document Changes

Introduction

J2EE Engine Migration and Upgrade

Page 10: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 10/424

9

© SAP AG 2004, Web AS Java Installation and Upgrade

Main SAP docum entat ion types

Documentation types in the software life cycle

An overview of the most important documentation types that are needed in the

various phases in the life cycle of SAP NetWeaver..The changes to these guides are released as OSS notes, before going to the

documents, you should look for released notes.

Page 11: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 11/424

10

© SAP AG 2004, Web AS Java Installation and Upgrade

Document a t ion Roadmap

1. Master Guide – SAP NetWeaver  Which technical scenario do you want to install?

Technical system landscape

Required components

Installation sequence

2. Installation Guide – SAP Web AS ABAP and/or 

Installation Guide – SAP Web AS Java 

3. If relevant: Planning Guide – SAP Web AS on UNIX: Oracle 

Information about basic system variants, instances, distribution,

installation options (MCOD, LDAP, …), and detailed parameter tables for 

your installation service

4. UNIX only: SAP Software on UNIX: OS Dependencies 5. New Troubleshooting Guide for the Java installation

Master Guide

The Master Guide is the starting point for implementing SAP NetWeaver.. It lists the required SAP componentsand third party applications that are required for each scenario. It provides scenario-specific descriptions of 

preparation, execution, and follow-up of an implementation. It also offers references to other documents,such as Component Installation Guides and SAP Notes.

Target group:

Technology consultants

System administrators

Project teams for implementations

The Master Guide is regularly updated on SAP Service Marketplace at service.sap.com/instguidesNW04.

Make sure you have the latest version of the Master Guide by checking Service Marketplace immediatelybefore starting the installation.

Now there is only one NW - Master Guide, no longer separate master guides for the different components.

Component Installation Guide

The Component Installation Guide describes the technical implementation of an SAP component, taking into account

the combinations of operating systems and databases. It does not describe any business-related configuration.Target group:

Technology consultants

Project teams for implementations

Current version is located on SAP Service Marketplace at service.sap.com/instguidesNW04

Application server installation guides are separated by ABAP and Java part. When doing Add-in installation both of them must be considered.

There is also Java Support package guide it is required if patching older version of Web AS Java.

Page 12: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 12/424

11

© SAP AG 2004, Web AS Java Installation and Upgrade

Installation Guide

Concept o f Ins ta l la t ion Check l is t s in Ins ta l la t ion Gu ides

List chronologically the actions that you must perform:  You choose and print out the relevant installation checklist(s) for your 

installation (there is one checklist for each installation service).

If a step is required for your installation, you follow the link for that stepto the corresponding section.

 You perform the procedure described there.

After successfully completing the installation step, you mark thecorresponding entry in the printed table with ! to log the progress of your installation.

 You proceed with the next step in the checklist

General Information

Installation Checklists

Step 1

Step 2

Step n

Preparation

Installation

Post-Installation

Additional Information

Planning

Concept not new, but essential for 

navigation in installation guides

Installation Checklists

References

Print

This is not new but convenient way to follow the Installation steps.

Page 13: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 13/424

12

© SAP AG 2004, Web AS Java Installation and Upgrade

Evaluat ion of Planning Guide for UNIX/Orac le

All planning steps shifted to new guide

 You choose a basic system variant of SAP Web AS.

 You choose the SAP instances you want to install.

 You choose how you want to distribute the SAP instances to installation

hosts.

 You decide if you want to perform a MCOD installation.

 You decide if you want to use the LDAP for SAP Logon or the Microsoft

Management Console (MMC).

For every SAP instance, you collect the values of the installation

parameters listed in the corresponding parameter tables.

In the present installation guides, only tasks will remain that have to be

performed ‘on the system‘

There is one parameter table for every installation service of SAPinst,

contains description of the SAPinst dialogs for your installation

Usage of this documentation is mandatory for 

installations on UNIX/Oracle

This Planning Guide is new, and evaluated only for Unix/Oracle, evaluations for other 

platforms will come with the next releases.The Planning Guide is mandatory for Unix/Oracle, because the planning information is

removed from the normal installation guide..

Page 14: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 14/424

13

© SAP AG 2004, Web AS Java Installation and Upgrade

Where are a l l the doc uments s tored?

http://service.sap.com/instguides 

-> SAP NetWeaver -> Release 04 

NetWevaer 04 - Planning / Installation / Upgrade / Operation

-> SAP Components -> SAP Web Application Server 

Releases - 6.10 / 6.20 / 6.30

All the required documentation you can find under http://service.sap.com/instguides

Page 15: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 15/424

14

SAPInst Changes

Document Changes

Introduction

J2EE Engine Migration and Upgrade

Page 16: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 16/424

15

© SAP AG 2004, Web AS Java Installation and Upgrade

Shipment -Spec i f ic SAPinst Changes

SAP NetWeaver gets delivered exclusively on DVD

DVDs are only used as data carriers

If SAPinst prompts for a CD, it will be possible to select thecorresponding sub-directory (browse the DVD)

New supported OS and Database versions:

Linux and Windows IA64

MySQL MaxDB 7.5

IBM DB2 Universal Database for UNIX and Windows

IBM Informix (ABAP schema only)

See SAP Service Marketplace at http://service.sap.com/platforms 

for the latest information.

Check the installation guide before performing an installation for changes. For 

example immediately after the installation you may need to apply a support package. The installation now is shipped on DVD, however the installation is still pointing to

different CDs, you’ll find them all stored on this data carrier.

MySQL MaxDB is the former SAP DB

Oracle 10g will be released at the Q1/2005

J2EE Engine is using Unicode enabled databases. Informix doesn’t support Unicode

and is not possible to be used as J2EE Engine Database. For Add-in installation

where the ABAP stack is using Informix, other (Unicode supporting) database must

be used for the installation of the J2EE Engine.

Page 17: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 17/424

16

© SAP AG 2004, Web AS Java Installation and Upgrade

Tool -Spec i f ic SAPinst Changes

 You start SAPinst directly from the Master CD/DVD, manual creation

of an installation directory is no longer required (but still possible)

SAPinst normally createssapinst_instdir/<installation_service> automatically under:

UNIX: the temporary directory ($TEMP or $TMP or /tmp)

Windows: %ProgramFiles%

JRE is still required for the SAPinst GUI. Nevertheless, JRE is part of 

the SAPinst executable for Windows IA64, HP-UX, and Sun Solaris.

For all other operating systems, you must still install JRE (or JDK,

see below) as prerequisite.

Page 18: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 18/424

Page 19: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 19/424

18

© SAP AG 2004, Web AS Java Installation and Upgrade

Cor respond ing Insta l la t ion Serv ices

SAP Web AS

ABAP+Java System

SAP Web AS Java

System

When installing the Add-In installation, the ABAP installation is first, after comes the

Java stack. Different installation options are possible.

Central Instance on one box, Dialog instances on another.

Also you can install the Web AS Java on different box but the Database.

Page 20: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 20/424

19

© SAP AG 2004, Web AS Java Installation and Upgrade

Ins ta l la t ion Opt ions

Add Support

Package

Default Installation

Add additional

server instance

Installation options for different

databases

The installation provides possibility to install Web AS Java + Java Developer 

Workspace at once. This is fast and very convenient way for developer, where theyhave testing server and the developer IDE on one box. All configurations are

predefined.

The Java only installation is distributed by the different databases. The customer 

installation package contains one DB installation option only.

J2EE Engine is using Unicode enabled databases. Informix doesn’t support Unicode

and is not possible to be used as J2EE Engine Database. For Add-in installation

where the ABAP stack is using Informix, other (Unicode supporting) database must

be used for the installation of the J2EE Engine.

Page 21: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 21/424

20

© SAP AG 2004, Web AS Java Installation and Upgrade

Ins ta l la t ion Opt ions Spec i f ic SAPinst Changes

Simplified installation in default mode: Default values are used for most of the

installation parameters:Enables you to set up an SAP Web AS Java system in a more quick and easy way, if the default

values are sufficient for your purposes.

Default Installation, doesn’t support all Data Bases yet only Oracle and MaxDB. The non

supported will come in the next releases.

Although you can still change some values you like – flexible easy install mode.

Page 22: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 22/424

Page 23: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 23/424

22

© SAP AG 2004, Web AS Java Installation and Upgrade

Post Ins t a l la t ion: Check Ports

SAP Web AS Java port calculation:

50000+100*snr+port_index

snr= instance number 

Port_index= left table column

Examples:

AdminTool: port 50004

Telnet: port 50008

This way port conflicts should be

avoided.

 You can individually configure

every port the J2EE Engine uses

Port numbers are configured in

Visual Administrator 

Remember that all requests go

through dispatcher!

0 HTTP port

1 HTTP SSL port

2 IIOP Initial Context port

3 IIOP SSL port

4 P4 port

5 P4 HTTP Tunneling port

6 P4 SSL port

7 IIOP port

8 Telnet port

9 Monitor port

10 JMS port

Message Server port: 3600+instance number of the central services instance

Page 24: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 24/424

23

The Java Instances are using in general the same filesystem layout as it is known

from the ABAP Instances. The only different is the directory j2ee. In this directory most Java related files are

stored (other directries are /usr/sap/<SID>/sys/profile

/usr/sap/<SID>/>InstnaceName>/work).

/usr/sap/CCMS is the monitoring file tructure not shown in the graphic (see TADMJ5

for details)

© SAP AG 2004, Web AS Java Installation and Upgrade

Direct ory Struc t ure of WEB AS 6.40 ABAP+Java

 j2ee

Page 25: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 25/424

24

/usr/sap/<SID>/<InstanceName>/

data Data directory e.g. Cachefiles

exe executables e.g. startsap, stopsap, saposcoll

 j2ee

log Log files

SDM Executables and Data of SDM / SDM Repository

sec Security files

work Workdirectory

/usr/sap/<SID>/<CentralServicesInstanceName>/

data Data directory e.g. Cachefiles, Enqueue File

exe executables e.g. startsap, stopsap, saposcoll

log Logfiles e.g. Syslog

sec Security files

work Workdirectory

© SAP AG 2004, Web AS Java Installation and Upgrade

J ava Only Instanc e on Fi le Syst em

Different types of Instances

JC<Instance number>

J2EE Engine Instance

SCS<Instance number>

Central Services Instance

DVEBMGS<XX>

ABAP Instance

Page 26: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 26/424

25

 /usr/sap/C11/JC00/j2ee

admin Executables Visual Administrator  

cluster J2EE Cluster Executables and Configuration

configtool Executables ConfigTool

deploying Directory of Deploytool

 j2eeclient jar files for a P4 client

os_libs operating system dependend libraries and executables e.g. jcontrol, jlaunch …

 /usr/sap/C11/<InstanceName>/j2ee/cluster 

bootstrap JAR Files and properties for bootstrap

dispatcher JAR Files, logfiles and propertie files of the Dispatcher  

server<Number> JAR Files, logfiles and propertie files of the Dispatcher 

 /usr/sap/C11/JC00/<InstanceName>/cluster/dipatcher 

bin JAR Files of Dispatcher  

cfg propertie files for manager  

dtd Data type definitions

log log Files of Services and Managers

temp temporary files

 /usr/sap/C11/JC00/j2ee/cluster/server<number>

apps JAR Files of Applications

bin JAR Files of Server  

cfg propertie files for manager  

dtd Deployment Descriptoren

log log Files of Services and Managers

META-INF

temp temporary files

© SAP AG 2004, Web AS Java Installation and Upgrade

Directory St ruc t ure o f J 2EE Ins tanc e

Page 27: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 27/424

26

DEFAULT.PFL Default profile of the Systeme

START_JC00_P65028 Start profile of J2EE Instance withInstancenumber 00

START_SCS01_P65028 Start profile of Central Services Instance with

Instancenumber 01

C11_JC00_P65028 Instance profile of J2EE Instance with

Instancenumber 00

C11_SCS01_P65028 Instance profle of Central Services Instance

with Instancenumber 01

© SAP AG 2004, Web AS Java Installation and Upgrade

Syst em Prof i les

Page 28: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 28/424

27

You need a valid SAP license to log on to the SAP Web AS. When the SAP Web AS is installed, a temporarylicense is also installed, which you must replace with a permanent license.

Note that with a J2EE+ABAP installation (SAP Web Application Server with ABAP and J2EE), you have to importthe ABAP license (see SAP License).

This section only describes the procedure for the J2EE only Installation.

In the Visual Administrator choose Server -> Services -> Licensing Adapter. The system data that you need torequest the license from the SAP Service Marketplace appears.

Installation number (if it exists)

System ID,

System number (if it exists)

Hardware key

Current release

Under the Internet address service.sap.com/licensekey -> mysap Business Suite, you can get to the initial page

of the license key requests in SAP Service Marketplace. Here you will find all the information you need to requestlicense keys.

Enter your e-mail address in the request. The license key will be sent to you promptly by e-mail. Alternatively, youcan also download the license key from the SAP Service Marketplace.

Do not make any changes to the license key. To import the license key, the file must not have been changed.

In the Licensing Adapter in the Visual Administrator choose Install License from File.

Select the license file that you want from SAP.

You can view all the licenses installed in your SAP System, by choosing, in the Visual Administrator, Server ->Services -> Licensing Adapter, then tab Runtime -> Installed Licenses.

See SAP note 94998 for additional information about requesting license keys.

You could install multiple licenses, for example when running scenarios as EP and XI.

© SAP AG 2004, Web AS Java Installation and Upgrade

SAP License K ey

 You need a valid SAP license to log on to the SAP Web AS. When the SAP Web ASis installed, a temporary license (29 days) is also installed which you must replacewith a permanent license.

With an ABAP + J2EE installation you need an ABAP license!

In the Visual Administrator choose Server 0 → Services → Licensing Adapter. Thesystem data appears that you need to request the license from the SAP ServiceMarketplace.

Installation number (if it exists)

System ID

System number 

Hardware Key

Current Release

service.sap.com → Software Distribution Center →mySAP Business Suite → license key requests

Page 29: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 29/424

28

SAPInst Changes

Document Changes

Introduction

J2EE Engine Migration and Upgrade

Page 30: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 30/424

Page 31: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 31/424

Page 32: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 32/424

Page 33: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 33/424

Page 34: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 34/424

33

© SAP AG 2004, Web AS Java Installation and Upgrade

Overview : Java component & tec hno logy upgrade

2. Application

data

(FS, DB)

1. Customer-

modification

&

extension

SAP J2EE 6.20

4. Security /User 

man.

3. Application

config

(FS,

R/3)

SAPInst2.

Application

data (DB)

1. Customer-

modification

&

extension

SAP J2EE 6.30/6.40

4.

UME 4.0or ABAP backend

3. Application

config

(FS,

R/3,DB)

2.

Application

data (DB)

1. Modification

&

extension

framework

SAP J2EE 7.0

4.

UMEor ABAP backend

3.

C2-Server 

diff & merge diff & merge

migrate (if nec.)

merge & migrate merge & migrate

migrate (if nec.)

Engine config Engine config Engine config

Legend:

Application

specific

Tools

Standard /

Generic

Tools

:Conflict

standard

vs reality

manual ?

Standard ?

Framework ?

Standard ?

Framework ?

Modif adjust

tool ?

Modif adjust

tool ?

Standard ?

Repository ?

Standard ?

Repository ?

import

tool ?

import

tool ?

import

tool !

import

tool !

import

tool ?

import

tool ?

This slide shows the efforts made to consolidate the different areas of the SAP J2EE

Engine into a common infrastructure, so that the Java upgrade tools can work in asimilar way to the Abap upgrade tools.

In SAP J2EE 6.20 to 6.30/6.40 migration mostly all areas are should be handle by

application specific procedure.

In SAP J2EE 7.0 onwards the Java upgrade tools would be able to upgrade the most

of the engine and applications with minimal manual interaction.

Page 35: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 35/424

34

© SAP AG 2004, Web AS Java Installation and Upgrade

Appl ic at ions running on J 2EE Engine 6.20

Most customers …

only use one or two SAP Java apps productively

have modified .jsp, .css files (not .java)

have used app specific enhancement framework(s)

have developed their own J2EE apps using SAP J2EE 6.20

run Java apps on separate WebAS (with Java stack only)

Hard to tell exactly which source versions customers have

delivery hard to reconstruct without DTR

Only few applications have >100 customers

EP5/6

CRM

SRM (mostly use of UME)

This is the typical use of SAP in our customers J2EE Engine, and thus has been

taken into account to the current development of J2EE upgrade technology.

Page 36: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 36/424

35

Appendix – J2EE Engine Installation

Steps

Page 37: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 37/424

36

© SAP AG 2004, Web AS Java Installation and Upgrade

J 2EE Engine Inst a l la t i on Steps 0

Steps of Engine InstallationEngine CI

SAPInst

Page 38: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 38/424

37

© SAP AG 2004, Web AS Java Installation and Upgrade

J 2EE Engine Inst a l la t i on Steps 1

Steps of Engine Installation

1) Install Database

Database

Engine CI

SAPInst

Page 39: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 39/424

38

© SAP AG 2004, Web AS Java Installation and Upgrade

J 2EE Engine Inst a l la t i on Steps 2

Steps of Engine Installation

1) Install DB

2) Install SCS + bootstrap

component

Database

Engine CI

JControl SAPInst

Page 40: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 40/424

Page 41: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 41/424

40

© SAP AG 2004, Web AS Java Installation and Upgrade

J 2EE Engine Inst a l la t i on Steps 4

Steps of Engine Installation

1) Install DB

2) Install SCS + bootstrap

component

3) Install SDM

4) Configure SDM targets

Database

Engine CI

SDM Repository

SDM (standalone)

JControl SAPInst

Page 42: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 42/424

41

© SAP AG 2004, Web AS Java Installation and Upgrade

J 2EE Engine Inst a l la t i on Steps 5

Steps of Engine Installation

1) Install DB

2) Install SCS + bootstrap

component

3) Install SDM

4) Configure SDM targets

5) Configure JControl for SDM

Database

Engine CI

SDM Repository

SDM (standalone)

JControl SAPInst

Page 43: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 43/424

42

© SAP AG 2004, Web AS Java Installation and Upgrade

J 2EE Engine Inst a l la t i on Steps 6

Steps of Engine Installation

1) Install DB

2) Install SCS + bootstrap

component

3) Install SDM

4) Configure SDM targets

5) Configure JControl for SDM

6) Deploy Offline Deploy Tool, …

Database

Engine CI

SDM Repository

SDM (standalone)

Offline

Deploy

Tool

JControl SAPInst

Page 44: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 44/424

Page 45: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 45/424

Page 46: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 46/424

45

© SAP AG 2004, Web AS Java Installation and Upgrade

J 2EE Engine Inst a l la t i on Steps 9

Steps of Engine Installation

1) Install DB

2) Install SCS + bootstrap

component

3) Install SDM

4) Configure SDM targets

5) Configure JControl for SDM

6) Deploy Offline Deploy Tool, …

7) Deploy tables for Config-DB

8) Deploy Engine Components

9) Start J2EE Engine

Database

Engine CI

Config

DB:

Enginecomp's

SDM Repository

SDM (standalone)

Offline

Deploy

Tool

J2EE Server deploy service...

J2EE Dispatcher 

JControl SAPInst

Page 47: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 47/424

Page 48: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 48/424

Page 49: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 49/424

Page 50: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 50/424

49

© SAP AG 2004, Web AS Java Installation and Upgrade

Inst a l la t ion of SAP Web AS J ava: Lesson Objec t ives

 You should now be able to:

Plan your Web AS Java Installation.

Understand the document changes

Understand the changes in the SAPInst process

Migrate/upgrade your previous Web AS Java Installation.

Understand the J2EE Engine installation steps

Page 51: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 51/424

Page 52: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 52/424

  2

1-2 Install JDK 1.4 if is not installed.

Take the JDK installation from the trainer.

Or download it from SUN website.

Page 53: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 53/424

  3

2. Start the Web AS Installation

Go to the Web AS installation folder, provided from the trainer, or startthe provided CD.

Page 54: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 54/424

  4

2-1 Install with SAPInst

After SAPInst has started navigate to -> SAP NetWeaver ’04 JavaSystem (J2EE only) -> MaxDB -> Central System -> Custom Installation -Java System

And press Next.

Note: SAP distributes Web AS installation exclusively on DVD.Nevertheless SAPInst is looking for CDs which you can find copied as foldersin the DVD storage.

Choose SAP NetWeaver ’04 -> J2EE System -> Central System -> Install aJ2EE Server in Custom Mode

Click on the icon in the white label bellow Package Location

and navigate to the installation CD:

Page 55: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 55/424

Page 56: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 56/424

  6

G:/j2sdk1.4.2_03 (chosen by default) and press Next

On the next screen choose Local installation!

and press next.

On the next screen type the passwords of the users:

SAP Administrator Account: abcadm

Password: abcabc

SAP Service Account: SAPServiceABC

Password: abcabc

Page 57: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 57/424

  7

Press Next

On the next screen choose 40 as SCS instance number.

Leave empty the Message Server port.

and press Next

Page 58: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 58/424

  8

On the next screen type 43 for the ABC J2EE Engine instance number

Change the Number of J2EE Servers to 2.

Press Next

On the next screen choose J2EE DB as User Management Data Base.

Page 59: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 59/424

Page 60: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 60/424

  10

and press Next

On the next screen type the password of the SAP J2EE Engine schemaDB user:

User: SAPABCDB

Password: abcabc

Page 61: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 61/424

Page 62: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 62/424

  12

and press Next.

On the next screen click on the Package Location label

and navigate to the IGS installation folder

G:/setup/SAP_NetWeaver_04_Java/IGS

Page 63: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 63/424

  13

Press OK, and press OK to go to next screen MaxDB CD:

On the next screen MaxDB CD

Page 64: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 64/424

  14

Choose the folder:

G:/setup/MAX_DB_7.5.0_Build 07_RDBMS for the Package Location ofMaxDB

and press OK to go to the next screen.

On the next screen MaxDB CD

Page 65: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 65/424

  15

Choose the folder:

G:/setup/MAX_DB_7.5.0_Build 07_RDBMS for the Package Location ofMaxDB

Page 66: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 66/424

  16

and press OK to go to the next screen.

Leave the values as default on the next screen and press next.

Page 67: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 67/424

  17

On the next screen choose G:/ as DB Log folder and 500 MB as volumesize:

and press Next.

On the next screen choose G:/ as DB Data folder and 500 as volumesize:

Page 68: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 68/424

  18

and press Next

Leave the next screen with the default values and press next.

Page 69: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 69/424

  19

Check all the values on the next screen and press Start if everything isfine:

Press Start to start the installation process.

Page 70: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 70/424

  20

You see the installation screen:

You can monitor the installation process clicking on the Log button:

Page 71: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 71/424

  21

If you get this message just press OK

The message saying that the installation has finished:

After opening the SAPMMC you’ll se the new instance as well.

Page 72: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 72/424

  22

Note: You can monitor the installation steps and the SAPInst log file duringthe installation process.

Use the SAPInst log files if a troubleshooting required.

Page 73: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 73/424

  23

3-1 Check installation.

When the installation finish start SAPMMS

Go to : Start -> Programs -> SAP Management Console

Check is the SAP Java engine up and running.

Page 74: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 74/424

  24

4-1 Installation of NetWeaver Developer Studio.

If the SAP NetWeaver Developer Studio is not installed on the mastersystem…

…you can install it from: Navigate to the installation folder of Web AS ->sapinst -> opt -> J2EE-CD -> IDE

Click on JDTsetup.exe

Page 75: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 75/424

  25

Note: When performing SAP NetWeaver ’04 Developer WorkplaceInstallation, the NetWeaver Developer Studio is also installed!

Page 76: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 76/424

  26

4-1 Installation of SP7.

Now you have to continue with the upgrade to Support PackageSP7.

The SP7 upgrade for MaxDB is available under folder:

G:\setup\ATP_Web_AS_6.40_TC_Track\TADMJ1\WAS_Installa

tion\SP7_Upgrade

Start the sapinst.exe from folder:

G:\setup\ATP_Web_AS_6.40_TC_Track\TADMJ1\WAS_Installation\SP7_Upgrade\SAPINST-CD\SAPINST\NT\I386\sapinst.exe

Navigate to

Page 77: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 77/424

  27

and click Next.

On the next screen click Browse and navigate to the ABCCentral instance profile:

G:\usr\sap\ABC\SYS\profile\ABC_SCS40_xxxx

and press OK.

Page 78: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 78/424

  28

and press Next.

On the next screen fill the Windows Domain name,

And the passwords of abcadm and SAPServiceABC users:

The passwords should be abcabc if you haven’t chosen differentones during the previous installation.

Page 79: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 79/424

  29

and press Next

Press Start on the installation screen.

You see the upgrade running.

Page 80: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 80/424

  30

Check whether the ABCDB is running (with the SAPMMC), if itnot - start it.

And press OK

You can monitor the upgrade pressing the log button.

Page 81: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 81/424

  31

Page 82: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 82/424

  32

The upgrade finishes successfully.

You can call the ABC main page using URL:http://localhost:54300/index.html

The Web AS Java SP7 is up and running.

Page 83: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 83/424

1

© SAP AG 2004, Web AS Java Installation and Upgrade

Course: SAP Ja va Engine Adm inis t rat ion

1. Web AS Standalone Java Installation

2. Java Startup & Control Framework

3. Web AS Java Administration Tools Overview

4. SAP Java Administration

5. SAP Web Infrastructure

Units:

Page 84: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 84/424

2

© SAP AG 2004, Web AS Java Installation and Upgrade

Uni t : Web AS St andalone J ava Instal lat ion

Java Start & Control Framework

Lesson:

Page 85: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 85/424

3

J ava St ar t up and

Cont ro l Framew ork

SAP AG

Page 86: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 86/424

4

© SAP AG 2004, Web AS Java Installation and Upgrade

Java Star tup and Cont ro l F ramew ork : Lesson Object ives

After completing this lesson, you will be able to:

Understand the startup process of SAP Web ApplicationServer Java

Understand the bootstrapping procedure.

Understand what role they do play to locate and identify

errors during server startup.

Page 87: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 87/424

5

J2EE Startup Framework

Java Cluster Architecture

Page 88: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 88/424

6

This system provides the following functions:

Operation using SAPGUI

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

Processing Web requests.

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

For each incoming HTTP request, the ICM must decide whether it should forward the request forprocessing to the ABAP engine (the ICF) or to the SAP J2EE engine. This decision is made using theURL prefix. A separate protocol is used for the communication between the ICM and Java Dispatcher.The ICM can be set up so that the communication with the J2EE Engine is SSL-encrypted.

The ICM server cache saves HTTP(S) objects before they are sent to the client. The next time an object isrequested, then, the application gets the content directly from the cache before sending it to the client.

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

The HTTP request handler uses the ICM Server Cache when, for example, response pages need to be re-used,such as the entry page of an online shop application. The ICM server cache saves the pages before they are sentto the client. When the page is next called, then the application gets the page directly from the ICM and sends itto the client.

Additionally to the ICM server HTTP(S) cash, the Java Dispatcher implements HTTP(S) cash as well.

To be able HTTP request to be redirected to the J2EE Engine, the following services must be active in the HTTPservice 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 of logon groups, server load, etc.

© SAP AG 2004, Web AS Java Installation and Upgrade

Overv iew Arch i tec tu re Web AS ABAP and Java

Page 89: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 89/424

7

One Java Engine installation consists of:

One or more Java instances (Java Dispatcher, Server) and the Software DeploymentManager (SDM)

The Central Services (Messaging Service, Enqueue Service), which also create aninstance (Central Instance)

Ax external database.

Changes in architecture of J2EE – Engine are made since 6.20

A J2EE Cluster now consists of an Central Service Instance. One Central ServiceInstance is required in the J2EE Cluster.

The Configuration of the J2EE Engines are now stored in a Database. Not any morestored in XML-Files in the file system. A database for the J2EE Cluster is required.

An Startup and Stop Framework is used.

In a large Java cluster installation, the load is distributed from a load balancer ontothe different Java dispatchers.

© SAP AG 2004, Web AS Java Installation and Upgrade

J2EE Instance

Consists of a dispatcher processand one ore more server processes

Processes run on one host

Are started and stopped together

All server processes of all instancesof a system are grouped in a cluster

SAP Central Services

Cluster wide communication

Central locking objects

Central Database

System Software

Applications

All configuration data

Software DeliveryManager

keeps track of distributed software

Web AS J ava Clust er Archi t ec ture

SAP Web AS JavaCentral Instance

SAP Web AS JavaCentral Instance

J2EE Dispatcher

Server ProcessServer Process

Server Process

SDM

CentralServices

SAP Web AS JavaSAP Web AS Java

J2EE Dispatcher

Server ProcessServer Process

Server ProcessSAP Web AS JavaSAP Web AS Java

J2EE Dispatcher

Server ProcessServer Process

Server Process

J2EEJ2EE schemaschema

DBDB

SAP Web AS JavaCluster

Page 90: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 90/424

8

The Central Services run on one physical server and are one Java instance. They comprise theMessage service and the Enqueue service.

The Central Services form the basis of communication and synchronization for the Java cluster.

Central Services are always required when a Java cluster is installed. They are started on a serverwith their own system number and the system ID (SID) of the whole system.

When Central Services are running, further Java instances (Dispatcher, Server) are started with theprogram JControl 

The message service is a separate program used for communication between the elements of a Javacluster. It keeps a list of all processes (dispatchers and server) of the Java cluster. It represents theinfrastructure for data exchange (small datasets only) between the participating nodes. The messageservice also supplies information to the SAP Web Dispatcher about Load Balancing.

Processes on Operating system level

NT: msg_server.exe

UNIX: msg_server

Trace file:

dev_ms in work directory of Central Service Instance

The settings and the status of the message service are made accessible to the administrator via themessage Info Service in Visual Administrator described bellow.

Message server and Message Service are used synonymously. The correct expression would be thatthe Message Server is a process or program that provides the Message Service.

© SAP AG 2004, Web AS Java Installation and Upgrade

Cent ra l Serv ice - Message Serv ice

Tasks of the Message service:

Notification of events that arise in the cluster.

Communication between different services Forwarding of messages and requests to all participants

(broadcast)

Prepare logon information for the SAP Web Dispatcher

Support for message server failover

Guaranteed message transmission

Exchange of cache information in the cluster

Page 91: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 91/424

9

The message info service is the interface between the J2EE Engine and the

Message Service, it is used it to monitor and administrate the message server. The message service doesn’t communicate direct to the Message Server, but it is

using the cluster manager, which has a direct connection to the message server.

The message info service is not automatically started when the J2EE Engine isstarted. If should be started manually:

Using the SAP J2EE Engine visual administrator.

1. Choose Cluster → Server 0 → Services 

2. Choose Message Info 

3. Choose Start Service in the toolbar

Using the telnet console.

1.In the console where the server process is running, enter the command:startservice msp

• The Message Info Service data should be used mostly for supportability purposes, becareful

© SAP AG 2004, Web AS Java Installation and Upgrade

Message In fo Serv ice in the Visua l Admin is t ra tor  

Page 92: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 92/424

10

The Enqueue service runs on the Central Services instance of the Java cluster. It

manages the lock table in the main memory and receives requests for setting orreleasing locks.

It also maps the logical locks to the database.

The Enqueue service can be configured for high availability, by setting it up with thereplication server and a platform-independent high availability solution.

The status of the Enqueue service are made accessible to the administrator via theLocking Adapter Service in the Visual Administrator.

The terms Enqueue server and Enqueue service are used synonymously. Thecorrect expression is that the Enqueue server is the program or process that provides

the Enqueue service.

Enqueue Service is represented by an en.sap<SAPSID> process

© SAP AG 2004, Web AS Java Installation and Upgrade

Centra l Servic e - Enqueue Serv ice

Enqueue Service manages logical database locks, which areset by the executed application program in a server process.

Enqueue Service synchronizes data across the cluster.

Page 93: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 93/424

11

The locking adapter service establishes the interface between the J2EE Engine and the enqueue service.

You can display and manage locks, carry out tests, and display statistics.

The locking adapter service is available on each server process, but it is not available on the dispatcher. It connects to theEnqueue Service and fetches requested data or sends changed data to it. As there is only one enqueue server in the system,all the locking services of the various server processes have the same information. Therefore it is not important on whichserver process you use the locking adapter service.

Locks are used for example during deployment of applications. The configuration manager requests a lock from the Locking

Manager. The Locking Manager in turn requests the lock from the Enqueue Service. The relevant area in the database islocked

To look into the Locking Adapter use the following path:

1. Start the SAP J2EE Engine visual administrator.

2. Choose Cluster -> Server 0 -> Services

3. Choose Locking Adapter

Choose the Runtime tab page to see a list of the functions offered in the locking adapter service:

To display existing locks; choose Display Locks.

To set and release locks, choose Create/Release Lock.

To delete existing locks, select the locks and choose Delete Selected Locks.

To run test programs, choose Run Tests . To run functional tests choose Execute Functional Tests, and to load testschoose Execute Load Tests ).

To display files, choose View Files . You can view the profile data or the trace file of the lowest layer of the enqueueservice. This is useful for looking for errors.

To display statistics, choose Time Statistics .

© SAP AG 2004, Web AS Java Installation and Upgrade

Lock ing Adapte r i n t he V isual Adm in is t r ato r  

With the Locking Adapter checks and tests of the EnqueueService can be done.

Page 94: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 94/424

12

A Java instance is a unit in the SAP Web Java cluster, which can be started,

stopped, and monitored separately. It runs on a physical server; but it is also possibleto run several instances on one server. An instance is identified by the system ID(SID) and the instance number.

One Java instance contains at least one Dispatcher and one Server Process, theCentral Services (Message, Enqueue) and the SDM.

A Java instance is started and stopped by the Java Startup and Control Framework.

The Java dispatcher receives the client request and forwards it to the server processwith the lowest capacity usage. If there is already a connection to the client, therequest goes to the server process that processes this client.

Dispatcher processes are represented by a jlaunch processes

The Java Dispatchers do not communicate to each other, they are light applicationsused for load balancing to the local servers only.

Interprocess communication Dispatcher on one box – Server on other box is notpossible.

© SAP AG 2004, Web AS Java Installation and Upgrade

Java Instance – Java Dispa tcher  

Java Dispatcher components:

Connection request handler

receives the first request from aclient. From this time point on, theclient has a fixed connection tothe dispatcher.

Connection manager manages theexisting connections to theclients.

Session level services areservices that are assigned to asession.

Communication handler forwardsthe request to the server process.

Accumulating requests are storedin the request queue.

Page 95: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 95/424

13

The Server Processes of the J2EE Engine actually execute the J2EE application.

Each server process is multi-threaded, and can therefore process a large number ofrequests simultaneously. Java Dispatcher assigns requests to the server processes.

The identification of the jlaunch processes can be easy done with their PID, the PIDis also represented in the monitoring tools as the SAP Management Console.

© SAP AG 2004, Web AS Java Installation and Upgrade

Java Ins tance – Server Process

Server Process components:

Connection request handlerreceives the first request from aclient. From this time point on, theclient has a fixed connection to thedispatcher.

Session level services are servicesthat are assigned to a session.

Application-level services or theactual application program.

Page 96: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 96/424

14

Another special instance is the one that installed the SDM (Software Deployment Manager). This oneusually runs with the database and Central Services on the same machine and is then indicated as the

central instance .

The Software Deployment Manager (SDM) is a tool with which you can manage and deploy softwarepackages that you receive from SAP or created with NetWeaver Developer Studio.

The Software Deployment Manager (SDM) groups several different deployment types in a singlenetwork interface for the deployment of any software that you develop with the SAP NetWeaverDeveloper Studio.

In all modes SDM is only able to handle one access at a time.

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM Inst anc e

Software Deployment Manager (SDM)

SDM Server

started automatically as part of WEB AS6.40

one SDM Server per WEB AS 6.40 withJ2EE Engine is necessary

SDM Interfaces

Commandline Interface (sdm.bat orsdm.sh)

A new SDM process is started each time acommand is executed

No SDM Server may run at the same time(this is checked).

JAVA API (SDMclient.sda) needs a

running SDM Server

SDM Gui (sdmgui.bat or sdmgui.sh)needs a running SDM Server

   J   2   E   E

   D   i  s  p

  a   t  c   h  e  r J2EE Server

process

SDM

Page 97: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 97/424

15

J2EE Startup Framework

Java Cluster Architecture

Page 98: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 98/424

16

The Java startup and control framework comprises the programs JControl and Jlaunch. JLaunch is

started by JControl and itself starts the bootstrap Java program or an element of the Java Instance

(dispatcher or server process). Whereas the Jcmon is a command line monitor program and is used toadministrate the framework.

Java startup and control framework is used to start , monitor , and stop a Java instance:

Integration of Java Processes into the SAP instance concept

Inherit all management concepts from the ABAP stack

Integration into existing SAP instance management

Control and Restart functionality of J2EE processes (Watchdog)

Daemons for NT (sapserv.exe)

Remote Control of all J2EE instances in the cluster

Cluster wide management (shutdown, restart ...)

Integration of the Startup Framework Client into the IDE

Preparation of Remote Debugging Support

© SAP AG 2004, Web AS Java Installation and Upgrade

J2EE Star t up Framew ork – Overview

The J2EE Startup and Control Framework

… is an infrastructure, situated between the operating system and

the Java VM

… is used to start, stop, and monitor a Java Instance

… loads the JVM and restarts processes, which have died/crashed

… comprises the programs Jcontrol, Jlaunch and Jcmon

Page 99: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 99/424

17

© SAP AG 2004, Web AS Java Installation and Upgrade

Star t ing and Stopp ing

The Java startup and control framework is called in different

ways according to the operating system and the installationtype:

Under Windows the SAP Management Console is used.If you choose an instance containing a J2EE engine Action→Start, the JControl program is called.

Under UNIX platforms and OS/400 the scripts startsap andstopsap are used, which call the program.

Page 100: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 100/424

18

On the SAP system host, choose Start  -> Programs  -> SAP Management Console .

You use this procedure to start/stop and monitor the processes of the SAP systemafter the installation. You can use also the SAP NetWeaver Developer Studio when indevelopment to start and stop the SAP system.

You have to start/stop monitor the following components:

Database (SAP DB)

Central Services (Enqueue Service and Message Service)

J2EE instances

Software Deployment Manager (SDM)

© SAP AG 2004, Web AS Java Installation and Upgrade

Star t and Stop w i th SAPMMC (Window s)

J2EE Instance:DispatcherServer 0...nSDM

Central Services:Message ServerEnqueue Server

Database

J2EE EngineSystem ID = C11

Start/Stop withContext Menu

Process List withState sign

Process Table withdetailed info

Page 101: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 101/424

19

The start and stop of the SAP system are done using the scripts startsap and

stopsap in the exe directory. You have to be logged on to the SAP system hosts as user <sapsid>adm.

If there are multiple SAP instances on one host – for example, a central instance anda dialog instance you have to add an extra parameter to the scripts:

startsap <instanceID>; stopsap <instanceID>

For example, enter: startsap DVEBMGS00

SAP Web AS J2EE only system: The instance name (instance ID) of the centralinstance is JC<Instance_Number>, the instance name of a J2EE dialog instance isJ<Instance_Number>.

To view all the processes use command: ps -ef | grep jlaunch

© SAP AG 2004, Web AS Java Installation and Upgrade

Star t ing and Stopp ing w i th sc r ip ts (UNIX & Window s)

Starting the SAP System

startsap [db|r3|j2ee|ccms|all|check] [<instance>] [<virtual hostname>]

Examples

startsap - to start the whole system startsap j2ee DVEBMGS00 - to start the J2EE-Engine of the instance

DVEBMGS00. The instance name is required if more than one instance isconfigured.

startsap r3 - to start only the ABAP part of the system

Stopping the SAP System

stopsap [db|r3|j2ee|ccms|all|check] [<instance>] [<virtual hostname>]

Examples stopsap - to stop the whole system

stopsap j2ee DVEBMGS00 - to stop the J2EE-Engine of the instanceDVEBMGS00. The instance name is required if more than one instance isconfigured.

stopsap r3 - to stop only the ABAP part of the system

Page 102: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 102/424

20

You can manage the Java Engine from the SAP Web AS ABAP, however the Java Engine it is not startedautomatically. The parameter disp/j2ee_start activates or deactivates starting the J2EE Engine, it

should be set to 1 so that the J2EE server is started automatically.

Note: The start of the J2EE Engine is automatically deactivated (disp/j2ee_start = 0) if a specificnumber of attempts to start the server failed (rdisp/j2ee_error).

Profile parameter within the J2EE Engine in transaction RZ11:

icm/HTTP/j2ee_<xx> Determines the ICM’s communication with the J2EE Engine.

Exe/j2ee full path to JControl

rdisp/j2ee_error Number of incorrect attempts to start a J2EE Enginebefore the restart is deactivated.

rdisp/j2ee_start Activates or deactivates starting the J2EE Engine.

rdisp/j2ee_start_lazy

If 1 and if the rdisp/j2ee_start is set - the J2EE Engine it is not started until the ABAP runtimeenvironment has been fully initialized. This avoids problems that are caused by a long initializationphase.

If 0 (default) – the J2EE Engine can be started without waiting for the ABAP initialization.

rdisp/j2ee_timeout Time span, the J2EE Engine must log on to the Web Dispatcher.

© SAP AG 2004, Web AS Java Installation and Upgrade

St a rt i ng t h e SA P We b AS J a va w i t h t h e A BA P Sy st e m

Open RZ10 and choose theprofile of your SAP Web AS.

Double click theparameterrdisp/j2ee_start

Set the parameter value to 1

Go back to the parametermaintainance. Check thepaths to the startup framework,e.g. exe/j2ee, exe/jlaunch, jstartup/instance_properties

Page 103: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 103/424

21

You can use the ICM to manage the Java Engine as well. You can find the functions in the ICM monitor(Transaction SMICM or by choosing Administration → System Management → Monitor → System 

Monitoring → Internet Communication Manager ) choose Administration → J2EE Server on the initialscreen.

The following functions are available:

Sending a Soft Shutdown (With or Without a Restart):

The (ABAP) dispatcher of the SAP Web Application Server sets the restart flag for the J2EEEngine and sends the SOFTSHUTDOWN message to the J2EE Engine. The dispatcher doesnot actively close the connection, the J2EE Engine must close itself instead. If the applicationserver is restarted, the J2EE Engine is restarted by the dispatcher.

Sending a Hard Shutdown (With or Without a Restart):

The (ABAP) dispatcher of the SAP Web Application Server sets the restart flag for the J2EEEngine and sends the HARDTSHUTDOWN message to the J2EE Engine. The dispatcher

does not actively close the connection, the J2EE Engine must close itself instead. If theapplication server is restarted, the J2EE Engine is restarted by the (ABAP) dispatcher.

Ending the Process (With or Without a Restart):

The SAP Web Application Server’s dispatcher sets the restart flag for the J2EE Engine andsends a signal to the process (shell or Java process). If the application server is restarted, theJ2EE Engine is restarted by the dispatcher.

Restart Yes/No

This sets the J2EE Engine’s restart flag.

© SAP AG 2004, Web AS Java Installation and Upgrade

Star t /Stop o f Java Eng ine processes in ICM Mon ito r  

SMICM

Page 104: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 104/424

22

Jcmon is a J2EE instance monitor program.

To start jcmon enter with the <SAPSID>adm user

 jcmon pf=/usr/sap/<SAPSID>/sys/profile/<SAPSID>_<INSTANCE_ID>_<HOST>.

Enter command ‘20’ to display the main menu.

© SAP AG 2004, Web AS Java Installation and Upgrade

JCMon – Moni to r Program

Command line tool

Overview about the instance and process state

Local administration menu for the local instance and their

processes

Cluster administration menu for remote operations------------------------------------------------------------

SAP System Name : C11

SAP System : 00

  MS Host : pcj2ee01

  MS Port : 3601

Process Count : 4

PID of JControl : 7244

State of JControl : All processes running

State inside MS : All processes running

  Admin URL :

------------------------------------------------------------

|Idx|Name |PID |State |Error|Restart|

|---|--------------------|--------|--------------------|-----|-------|

| 0|server0 | 5784|Running | 0|yes |

| 1|server1 | 2216|Running | 0|yes |

| 2|dispatcher | 4748|Running | 0|yes |

| 3|SDM | 436|Running | 0|yes |

------------------------------------------------------------

Page 105: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 105/424

23

These all the commands, which can be used to administrate the processes using the

JCMon Monitoring tool.

© SAP AG 2004, Web AS Java Installation and Upgrade

JCMon – Com m and desc r ip t i ons

Disable debugging9

Restart process5

Enable bootstrapping on

restart

6

Dump stack trace10

Disable bootstrapping onrestart

7

Enable debugging8

Disable process4

Enable process3

Shutdown instance2

Refresh list1

Exit0

Decrement trace level16

Enable process restart17

Extended process list on/off99

Disable process restart18

Synchronize instanceproperties

98

Increment trace level15

Deactivate debug session14Active debug session13

Port list12

Process list11

Page 106: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 106/424

24

Startsap and stopsap have to be launched by user <sid>adm.

The J2EE startup and control framework mainly comprises the programs JControl and Jlaunch.

JControl: A native program that starts, stops, and monitors the processes of a Java instance (usually a dispatcher and

several server processes). The program implements the SAP signal handling to stop the instance. JControl starts theJLaunch processes.

JLaunch: Starts a Java program. It loads the JVM into its own address space and then represents the required clusterelement. The program can receive notification from the JControl process via named pipes to stop the cluster element,and terminates, if the JControl stops running (fork emulation under Windows).

Bootstrap: This JLaunch process synchronizes the binary data from the Java database with the local file system andcreates a property file, which describes the configuration of the Java instance. Note 710663 shows the different modesconfigurable for bootstrapping.

I. Start of JControl - JControl is started (in Windows by the SAP start service; on UNIX platforms by the startsap script).This script must be executed by the <SAPSID>adm user.

II. Signal handling - JControl initializes the SAP signal handling to be able to handle signals received. Signal can be sendvia kill command (Unix) or sapntkill.exe (Windows NT). Important Signals:

SIGINT - Initiates a soft shutdown

SIGSEGV - Initiates a hard shutdown

SIGUSR1 - Increment the trace level.

SIGUSR2 - Decrement the trace level

The bootstrap.property can be found under the folder: /usr/sap/<SID>/<InstName>/j2ee/cluster/bootstrap

The instance.property can be found under the folder: /usr/sap/<SID>/< InstName >/j2ee/cluster

© SAP AG 2004, Web AS Java Installation and Upgrade

SAP WebAS Java System 6.40 – SAP J 2EE Detai l s

JControl• Reads J2EE instance description from profile and instance.properties• Create SHM segment holding administrative instance data• Starts/Stops JVM hosting processes (JLaunch)

JLaunch (J2EE Dispatcher, J2EE Server, SDM)• Reads process specific properties• Attach to SHM segment created by JControl• Parametrizes, loads and hosts JVM

startsap (UNIX) / SAP Service (Windows) starts 1 instance of …

Database Instance (if local)

J2EE Message Server

J2EE Enqueue Server

starts n instances of …

SAPOsCol

SAP J2EEStartup

Framework

Page 107: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 107/424

25

© SAP AG 2004, Web AS Java Installation and Upgrade

Arc hi t ect ure of SAP J2EE Star t up Framew ork 6.40

The graphic above provides a functional view on the J2EE startup and control framework.

JControl starts JLaunch with the bootstrap.properties file (1). This executes the following steps: The first argument of JLaunch is the PID of the parent process (JControl). JLaunch starts a thread,

which ends the JLaunch process, if the parent process, JControl, fails.

Creates JVM arguments and initializes hosting of the VM.

Loads the VM into its own process, initializes the VM and starts the bootstrap program.

The bootstrap program synchronizes the binary data of the Java database with the local file system(2).

The bootstrap program reads the Java instance description from the Java database and writes the fileinstance.property (3). The file instance.property contains the description and the arguments of theJ2EE cluster elements that are to be started.

JControl reads and creates a list of the Java cluster elements to be started (4).

JControl starts a JLaunch process for each cluster element (5). This executes the following steps:

The first argument of JLaunch is the PID of the parent process (JControl). JLaunch starts a thread, whichends the JLaunch process, if the parent process, JControl, fails.

Creates JVM arguments and initializes hosting of the VM.

Loads the VM into its own process, initializes the VM and starts the Java cluster element. This executesthe following steps:

Starts the “ offline“ configuration manager to read the properties for the Java Enterprise runtime fromthe database and to save them in various hash tables (6).

Stops the “offline“ configuration manager and starts the Enterprise Java runtime with the savedproperties.

Starts the service framework and the services.

Page 108: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 108/424

26

Signals and named pipes trigger a Java instance to stop. The process ensures that

following a shutdown time interval all cluster elements of the instance are exited. An instance is stopped as follows:

The SAP start/stop environment (start script or SAP Start Service on Windows),which started the JControl process, sends a SIGINT to the JControl process (1).

JControl sets the status of the Java instance to STOPPING in its list and sends anotification using a named pipe to all of the running cluster elements (2).

The JLaunch process of the Java cluster element must respond to the notificationwithin a defined time interval. (If this soft shutdown does not work, the JLaunchprocess is completely terminated by JControl.) It triggers the shutdown of the Java

Instance element in the JVM and waits for its own VM to terminate (3).

JControl exits.

© SAP AG 2004, Web AS Java Installation and Upgrade

Stopp ing a J ava Ins tance

Page 109: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 109/424

27

JControl: A native program that starts, stops, and monitors the processes of a Java

instance (usually a dispatcher and several server processes). The programimplements the SAP signal handling to stop the instance. JControl starts the JLaunchprocesses.

JControl controls J2EE processes …

is the master process of all J2EE worker processes

controls the lifecycle of the J2EE instance

Restart of crashed processed

Termination of hanging processes

Sends shutdown signal to instance processes

responsible for starting the processes in the right order (bootstrapping..)

integration of different processes into one J2EE instance (SDM, ICM, ...)

provides the monitoring information in a shared memory segment

supports SAP profiles to share configurations with the ABAP Stack

© SAP AG 2004, Web AS Java Installation and Upgrade

JCont ro l – Java Ins tance Cont ro l le r  

Page 110: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 110/424

28

JLaunch starts a Java program. It loads the JVM into its own address space and then

represents the required cluster element. The program can receive from notificationfrom the JControl process via named pipes to stop the cluster element, andterminates, if the JControl stops running (fork emulation under Windows).

© SAP AG 2004, Web AS Java Installation and Upgrade

JLaunch – Java Program Launcher  

JLaunch has following

tasks: Read the properties of the

program to host

Read the VM properties

from the database duringstartup process

Attach to theadministration sharedmemory segment

Load the shared library ofthe Java VM

Page 111: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 111/424

29

Additional information in trace-files:

Dispatchers and servers are started by JLaunch processes. In the jlaunch trace file,the JlaunchISetState can be checked. The start of the server process is correct, ifstatus 3 is reached:JLaunchISetState: change state from 2 to 3

© SAP AG 2004, Web AS Java Installation and Upgrade

How t o c hec k t he c orrec t st ar t up using J CMon

JCMON

displays the serverprocess in status“Running” only, if allapplications havebeen started upsuccessfully.If an application is stillin the startup process,JCMON will describethe status as “Startingup”.

SAPMMC

has to change theserver status from“RED” to “GREEN”.

Page 112: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 112/424

30

Only 2 versions of the log files are kept representing the last 2 restarts.

After the restart the new log files are stored, and the previous ones are renamed as.old. The previous .old files are lost.

© SAP AG 2004, Web AS Java Installation and Upgrade

Troubleshoot ing and Suppor t

Most relevant information about startup of the different Java

processes can be found in the jlaunch traces:

dev_server<x> = Trace-file of the jlaunch process

std_server<x>.out = output of the JVM jvm_server<x>.out = output of J2EE engine (like error.log and

output.log in SAPJ2EE 6.20)

Trace files and JVM output files are in the work directory of theinstance (e.g. /usr/sap/<sid>/<instance>/work)

Low level process trace in the SAP developer trace files dev_*

All processes are started with the SAP instance profile

Single point of management

Profile parameters for the startup framework

Profile directory /usr/sap/<sid>/SYS/profile

Page 113: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 113/424

31

Log files: The important log files involved in the startup process.

Most of the log files are located in the directoryUnix : /usr/sap/<SAPSID>/< INSTANCE_NAME >/work

Windows : c:\usr\sap\<SAPSID>\< INSTANCE_NAME >\work

Some of the sapstart logfiles are located in the home directory of the <SAPSID> user directory

The startup process has run correctly for the dispatcher and server instances if status 3 is reached

in dev_dispatcher : JLaunchISetState: change state from [Starting (2)] to [Running (3)]

in dev_server0 : JLaunchISetState: change state from [Starting applications (10)] to [Running(3)]

Log files types:

dev* Tracefile of Process

std* Standardoutput

 jvm* Messages of the Java VM

© SAP AG 2004, Web AS Java Installation and Upgrade

Log fi l es Sta r t up J2EE Ins tance

dispatcher

dev_dispatcher

std_dispatcher.out

jvm_dispatcher.out

server

dev_server<Number>

std_server<Number>.out

jvm_server<Number>,out

Jcontrol

dev_jcontrol

bootstrap

dev_bootstrap

std_bootstrap.out

jvm_bootstrap.out

dev_bootstrap<ClusterID>

std_bootstrap<ClusterID>.out

jvm_bootstrap<ClusterID>.out

SDMdev_sdm

std_sdm.out

jvm_sdm.out

Work Directory: /usr/sap/<SID>/JC<InstanceNumber>/work

Page 114: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 114/424

32

The developer trace files can be seen for every process in the process tree from the

SAPMMC (in Windows). Right click on the process and choose “Developer Trace”. The developer trace files can be watched directly from their location as well (for all

OS). All the files are all stored into the jlaunch traces and the output files in the  /usr/sap/<sid>/<instance>/work folder.

© SAP AG 2004, Web AS Java Installation and Upgrade

Developer Trace F i les of t he Star t up Framew ork

dev_jcontrol – Trace file ofJControl

Detailed property description Description of the processes

started by JControl

dev_bootstrap – Trace file of theinitial bootstrap process

dev_bootstrap_ID.... – Trace fileof the node bootstrap process

dev_dispatcher - Trace file ofthe J2EE dispatcher node

dev_server<x> - Trace files ofthe J2EE server nodes

dev_sdm – Trace file of the SDM

process

Page 115: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 115/424

33

Execute the following steps to update the Startup Framework.

Use SAPInst normally, only use this manual procedure in case of problems

© SAP AG 2004, Web AS Java Installation and Upgrade

Update o f the Star tup Framew ork

I. Shutdown the already running J2EE instances.

I. In the mixed mode with the ABAP Stack, please choose“shutdown without restart” in the transaction smicm.

II. Check, if there are jcontrol or jlaunch processes running(Task manager on Windows NT, “ps –ef | grep <SAPSID>”).Kill first the jcontrol process and afterwards the jlaunchprocesses, if there are such processes running.

III. Copy the latest Startup Framework into the os_libs directoryof the J2EE instance:

I. Unix: /usr/sap/<SAPSID>/< INSTANCE_NAME >/j2ee/os_libs

II. Windows: c:\usr\sap\<SAPSID>\< INSTANCE_NAME > \j2ee\os_libs

IV. Cleanup the administration shared memory. Execute“jcontrol pf=<SAP instance profile> -c” to invoke the sharedmemory cleanup.

V. Start the J2EE instance.

Page 116: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 116/424

Page 117: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 117/424

35

© SAP AG 2004, Web AS Java Installation and Upgrade

Java Star tup and Cont ro l Framew ork : Lesson Summ ary

You are now able to:

Startup & Stop the SAP Web AS Java.

Describe the bootstrapping procedure.

Locate and identify errors during server startup.

Page 118: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 118/424

1

© SAP AG 2004, Web AS Java Installation and Upgrade

Course: SAP J ava Engine Adm inis t rat ion

1. Web AS Standalone Java Installation

2. Java Startup & Control Framework

3. Web AS Java Administration Tools Overview

4. SAP Java Administration

5. SAP Web Infrastructure

Units:

Page 119: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 119/424

2

© SAP AG 2004, Web AS Java Installation and Upgrade

Uni t : Web AS St andalone J ava Instal lat ion

Java Engine Administration Tools

Lesson:

Page 120: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 120/424

3

J ava Engine

Adm in is t ra t ion Too ls

SAP AG

Page 121: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 121/424

4

© SAP AG 2004, Web AS Java Installation and Upgrade

After completing this lesson, you will be able to:

Get an overview of all the Administrative tools

around the J2EE Engine in the Web AS 6.40.

Explain the main purpose and restrictions of eachtool.

Choose the right tool for the each task.

Web AS Admin is t ra t ion Too ls Overv iew : Top ic Objec t ives

Page 122: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 122/424

5

Administration Tools Overview

System Info Web Page

Visual Administrator

Shell Console Administrator

Config ToolConfiguration Editor

Deployment Tools

Appendix

Page 123: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 123/424

6

© SAP AG 2004, Web AS Java Installation and Upgrade

Administ rat ion and Conf igurat ion Opt ions

Administration andConfiguration Needs

Add, delete, configure additional

server processes Configure pool sizes, thresholds,

etc.

VM settings

Stop/Start services

Deploy applications

Performance recommendations

Memory settings

Visual Administrator: Remote monitoring and management of managers, services, libraries, and interfaces ofeach element of an instance.

GUI Config Tool: Offline configuration of the J2EE Engine cluster elements.

Text-Only Config Tool: Offline configuration of the J2EE Engine cluster elements.

Configuration Editor: Configuration of the current state of the Configuration Database.

Shell console Administrator: Text based alternative to the Visual Administrator.

Software Deployment Manager: Manage and deploy software packages.

System Info Page: Overview of System Configuration and its state.

Page 124: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 124/424

7

© SAP AG 2004, Web AS Java Installation and Upgrade

Admin is t ra t ion Tools Compar ison

Remote

Remote

Remote

Local

Local

Remote

Conn.

JVMOnline ONLYJava

GUI

- Deploy/Undeploy SCA/SDA.

- Manage Applications Repository

Software 

Deployment Manager 

WebBrowser

Online ONLYWebGUI

- System/instance/Node propertiesinfo.

System Info Page 

Telnetclient

Online ONLYText- Start/Stop and configure Servicesand Managers.

- Start/Stop nodes.

Shell console Administrator 

JVMOffline ONLYJavaGUI

Configuration of the current state ofthe Configuration Database.

Configuration Editor 

JVMOnline or OfflineJavaGUI

- Add/Delete instance nodes.

- Java memory settings.

- Permanent configuration changes

GUI Config Tool 

JVMOnline ONLYJavaGUI

- Start/Stop and configure Servicesand Managers at runtime.

-Start/Stop nodes.

-Runtime administration of Services

Visual Administrator 

REQ.J2EE ENGINEUIMAIN FEATURESTOOL

The “J2EE Engine” column refers to the status of the server node while working with thetool. In same cases even an Online tool would have to restart the node so the changestake effect.

Page 125: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 125/424

8

© SAP AG 2004, Web AS Java Installation and Upgrade

SAP J 2EE Engine Port s

SAP J2EE Engine Dispatcher ports default to

50000+100*instance_nr+port_index

JMS Port

Monitor Port

Telnet Port

IIOP Port

P4 SSL Port

P4 HTTP Tunneling Port

P4 Port

IIOP SSL Port

IIOP Initial Context Port

HTTP SSL Port

HTTP Port

Dispatcher Service

10

9

8

7

6

5

4

3

2

1

0

Index

The following ports are used by the Administration tools:

HTTP(S) Port is used by the Web Browser to access the System Info Web Page:

P4 Port is used by the Visual Administrator to access the server

P4 with SSL Port is used by the Visual Administrator to access the server securely

P4 over HTTP(S) Port is used by the Visual Administrator to access the server through firewalls and proxies

Telnet Port is used by the Telnet client to access the Telnet Service in the dispatcher node (default configuration)

Page 126: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 126/424

9

Administration Tools Overview

System Info Web Page

Visual Administrator

Shell Console Administrator

Config ToolConfiguration Editor

Deployment Tools

Appendix

Page 127: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 127/424

10

© SAP AG 2004, Web AS Java Installation and Upgrade

Syste m Inform at ion Web Page

Java Message and EnqueueServer Host and Port number.

SDM Server Info.

Node version Info.

Dispatcher nodemain ports

License Info.

Database Info.

This is a good starting point to see a overview of the most important information of theSAP Web AS running system:

System/Instance/nodes identification

Instance and node state

Hostnames and Open ports

DB and OS version

Installed Java software

Java Runtime Environment version and settings

Licensing information

You have to log on to the J2EE Engine server as an Administrator to access the page:http://<hostname>:50000 -> System Information

The VM Parameters link shows the Java Virtual Machine (JVM) settings for theselected node. This is the better place to see these settings for a running node.

Page 128: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 128/424

11

Administration Tools Overview

System Info Web Page

Visual Administrator

Shell Console Administrator

Config ToolConfiguration Editor

Deployment Tools

Appendix

Page 129: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 129/424

12

© SAP AG 2004, Web AS Java Installation and Upgrade

Visual Admin is t ra t or : Log in on

Log in using a user name withadministrator permissions

Standard Login:

User: Administrator

Password: sapHost: <localhost> or otherP4 Port: default 50004

Connect → Login: Allows you to connect to the server.

If there isn’t any connection created, you need to follow these 4 steps to log on to aSAP J2EE Engine:

1. Choose a name for the connection and a Lookup Method to use (via Message Server or DirectConnection to Dispatcher).

2. Configure and save the connection properties (user name, host, port, protocol…).

3. Select a connection from the list of previously configured entries.

4. Specify the password of the user and log on.

If a Connection has already been created just go to step 3.

Page 130: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 130/424

13

© SAP AG 2004, Web AS Java Installation and Upgrade

Visual Admin is t ra t or  : Connect ing v ia Message Serv ice

Transport Layers

Default: use Java RMI / P4

NI: SAP Network Interface

Load Balancing Method

Random: The Message Server will select a dispatcherrandomlyManual: The Message Server will select a dispatchermanually

Use this type of Connection if you like to balance your administration connections between the differentserver processes of your system or you don’t know the host name and P4 port number of any dispatcher

(or you are not certain which one is running).

Remember that the Message Server is only used to obtain a Dispatcher. After the Dispatcher is chosen adirect network connection to it is created.

Follow these steps to create this type of Connection:

1. Specify the user name.

2. Specify the host and the HTTP port of the Message Server (you can find this in the trace of the messageserver of the Java Central Instance).

3. Choose a load balancing method for the connection – that is, whether the dispatcher to connect to will beselected randomly by the Message Server or manually by you.

4. Specify the transport layer type:

Default – the connection is done using RMI/P4 protocol (P4 is a proprietary protocol, RMI is RemoteMethod Invocation)

NI – the SAP Network Interface (NI) layer enables you to connect to a SAProuter.

If you use this layer, you have to specify the Route String that defines the connection path to the SAProuter by

choosing Settings .

5. Choose Save .

Page 131: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 131/424

14

© SAP AG 2004, Web AS Java Installation and Upgrade

Visual Admin is t ra tor : Connec t ing to a D ispatcher  

Transport Layers

Default: use Java RMI / P4

SSL: Provides privacy over the Internet using

cryptographic securityHTTP Tunneling: Allows communicationthrough proxies and firewall

HTTPS: Using SSL with HTTP Tunneling

NI: SAP Network Interface

Use this type of Connection if you know the host name and port number of a running dispatcher and/or you want touse HTTP as the communication protocol between the Visual Administrator and the Dispatcher.

Follow these steps to create this type of Connection:

1. Specify the user name.

2. Specify the host name (or IP address) and the port of the Dispatcher.

3. Specify the transport layer type:

Default (P4) – the connection is done using RMI/P4 protocol

SSL (P4 over SSL) – use this option if you want to enable encrypted client-server communication

HTTP Tunneling (P4 over HTTP) – use this option if the communication is through a proxy or firewall.

If you use this layer, you have to specify the HTTP Tunneling proxy host and port by choosing Settings . HTTPS (P4 over HTTPS) – this transport layer includes both HTTP Tunneling and SSL features. The

communication between the Visual Administrator tool and the SAP J2EE Engine is performed through proxies andfirewalls, using cryptographic security.

If you use this layer, you have to specify the HTTP Tunneling proxy host and port by choosing Settings .

To use the SSL or HTTPS layer you must have the Key Storage Service and SSL Provider Service running. Touse HTTP Tunneling you must also have the HTTP Tunneling Service started.

NI – the SAP Network Interface (NI) layer enables you to connect to a SAProuter.

If you use this layer, you have to specify the route string that defines the connection path to the SAProuter bychoosing Settings .

4. Choose Save .

Page 132: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 132/424

15

© SAP AG 2004, Web AS Java Installation and Upgrade

Visual Admin is t ra t or : Main Features

Log in/out of theVisual Administrator

Shutdown/Restart

Node or Service

System ABC

Dispatcher Node

Server Node

Runtime/Properties/Additional Info Tabs

WINDOWS: <drive>:\usr\sap\<SID>\j2ee\admin\go.bat

UNIX: /usr/sap/<SID>/j2ee/admin/go

Information of the node selected

SAP J2EE Engine Visual Administrator is a graphical user interface (GUI) that enables administration ofthe whole cluster, all cluster elements, and all modules running on them. It provides remote monitoring andmanagement of managers, services, libraries, and interfaces working on each element in a single GUI.

Features

Start/Stop of nodes (not instances or systems)

Start/Stop of Services/Managers

Obtaining the properties of a service, manager, interface, or library (for example, its name, group, and soon)

Administrating and changing the properties for an specific node or globally for all nodes of the same type(dispatcher or server).

Runtime administration and control, and perform large parts of the system monitoring

Constraints

You cannot create new server processes using the Visual Administrator. Use the Config Tool to do this.

You can use the Deploy Service of the Visual Administrator to deploy and update your applications.However the use of the Software Deployment Manager (SDM) is recommended.

Page 133: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 133/424

16

© SAP AG 2004, Web AS Java Installation and Upgrade

Visual Admin is t ra t or : Acc ess ing Local Conf igurat ion

LocalProperties

Dispatcher node

components(Managers expanded)

Server node components(Services expanded)

Runtime tab of theClass Loader Service

Info tab of theWeb Service Interface

Additional Info tab of the

HTTP Provider Service

Properties tab of theHTTP Service

From the Visual administrator you have access to the properties of the nodes of an specific instance (Cluster tab) or to the generic properties of a dispatcher or server node (Global Configuration tab).

The Runtime tab shows dynamic information and let you do online administration of the service.

The Info tab shows information about the naming, versioning, references to other components, JARscontained and a description.

The Additional Info tab shows the name, version, references to other services and startup information of theselected service.

The Properties tab shows, and let you edit, the static parameters of the selected service (to change aproperty just select it, enter the new value, click update an then saving icon).

For every Manager, you’ll have a Properties tab.

For every Service you’ll find the Properties , and Additional Info tabs (some of them also show a Runtime tab, see appendix).

Interfaces and Libraries only show an Info tab.

Page 134: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 134/424

17

© SAP AG 2004, Web AS Java Installation and Upgrade

Visual Admi nist rator : Changing Proper t ies

1.- Click on a property

to edit its custom value

2.- Press Update when done editing

3.- Click on Save 

to commit changes on the node selected 

Custom Values Default Values

Working on the Dispatcher 0

Cluster Tab

The J2EE Engine components have two types of properties: global and local. Globalproperties are common for all cluster elements while local properties are only validfor a specific cluster element.

Each property has a default value and a custom value.

The default value of a property is assigned by the time of its creation (you can not create local default properties withthe Visual Administrator).

The custom value of a property is created the first time a default value is modified.

When, for example, a property value is changed using the Visual Administrator in aspecified node, this property is saved as a local custom property for that node.

The runtime value of a property is formed in the following way: if a custom valueexists, this is the actual value of the property, else the default value is used.

Page 135: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 135/424

18

© SAP AG 2004, Web AS Java Installation and Upgrade

Visual Administ rator : Acc essing Global Conf igurat ion

1.- Click on a property

to edit its custom value

2.- Press Update 

when done editing

3.- Click on Save 

to commit changes on all dispatcher nodes 

Working on the

Global Configuration of a Dispatcher

Procedure

1. Choose the Global Configuration tab.

2. After Saving the Properties changes, the Apply global changes to cluster elements dialog appears, which gives you the option of applying the changes to the localproperties of the selected cluster elements only.

3. Choose Yes to save the changes (If you deselect all the cluster elements or justchoose No , the changes made to the global properties will still be valid).

The properties of the services and managers are formed by posting their localproperties upon their global ones.

The property priority is as follows:

1. global default – the lowest priority

2. global custom

3. local default

4. local custom – the highest priority

Page 136: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 136/424

19

Administration Tools Overview

System Info Web Page

Visual Administrator

Shell Console Administrator

Config ToolConfiguration Editor

Deployment Tools

Page 137: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 137/424

20

© SAP AG 2004, Web AS Java Installation and Upgrade

Shel l Console Adminis t rat or  

telnet <hostname> <port number>

ADD without parameters list all available command groups

MAN without parameters list all available commands

Username and Password

The Console Administrator enables remote administration through Telnet clients. This function providesTelnet clients with a distributed, scalable Telnet server that supports remote shell administration using theTelnet protocol. Telnet administration function is implemented in SAP J2EE Engine using the TelnetProvider Service.

By default, the Telnet shell is opened on the dispatcher. Once you are connected you can access and useall shell commands available on the different J2EE Engine cluster elements. Use the LSC command todisplay all server components with their ID, component name, host, port, and type. The first componentdisplayed is the current one.

To pass over from one component to another, use the JUMP command and specify the ID of the targetelement. For example, executing jump 4001 enables the remote administration of a cluster element with ID

4001. You can obtain an overview of the available commands with the command MAN. MAN <command>

displays a short explanation of a command.

The commands are grouped into a number of groups that can be activated and deactivated. You canobtain an overview of the groups with the command ADD. To activate a group of commands, enter thecommand ADD <group>.

In the path SAP Library -> SAP NetWeaver -> Application Platform -> Java Technology in SAP Web Application Server -> Reference Manual -> SAP J2EE Engine Reference -> Shell Administration Commands of the NetWeaver’04 documentation you can find all the Shell Administrator commands.

Page 138: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 138/424

21

Administration Tools Overview

System Info Web Page

Visual Administrator

Shell Console Administrator

Config ToolConfiguration Editor

Deployment Tools

Appendix

Page 139: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 139/424

22

© SAP AG 2004, Web AS Java Installation and Upgrade

Conf ig Tool: Overvi ew

The Config Tool enables offline configuration of the J2EE Enginecluster elements.

The Config Tool connects directly to database to apply the changes,thus it is not required to have a SAP J2EE Engine running.

When you run the J2EE Engine Config Tool via a GUI or text-only

interface, it connects to the database and scans the serverconfiguration. The information provided is passed to the corresponding

interface that is used for configuration.

All modifications made using the J2EE Engine Config Tool can be

exported to an XML file for later use.

Page 140: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 140/424

23

© SAP AG 2004, Web AS Java Installation and Upgrade

Conf ig Tool : Connec t i ng

Secure store file – contains the path to thesecure store properties file. This file containssecure data for connecting to the database orvisual administrator. It is encrypted for securityreasons.

Secure store key file – contains the path to thesecure store key file. The key file contains thepassword for the encrypted store file.

System name – displays the name of thesystem to which this data applies.

Secure store lib – contains the path to the IAIKpackage. It enables the encrypting of theproperties file.

RDBMS connections – contains a property keyof which the value contains the DB connectionsettings.

RDBMS driver location – contains the path tothe RDBMS driver.

RDBMS initial connections.

RDBMS maximum connections.

To start the tool use: usr/sap/<SID>/<InstanceName>/j2ee/configtool or<drive>:\usr\sap\<SID>\<InstanceName>\j2ee\configtool.bat

The database is initialized and the connection to it is configured for the first time at installation. Theinstallation procedure creates the tables in the database, copies all the necessary data to it, and sets theproper parameters for establishing a connection. You can configure a DB connection manually. If youwant to switch to another database, you must make sure that the database has been properly initializedand that all the data necessary to run the J2EE Engine is in the database.

It is strongly recommended that you use the automatic configuration

Manual procedure

1. If you want to change some of the default settings for connecting to the database, then choose File →

Connect 

2. If secure storing fails, you can use the Overwrite RDBMS Settings option:

Enter the URL of the RDBMS

Enter the user name for connecting to the database

Enter the password for this user

3. Choose Load 

Page 141: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 141/424

24

© SAP AG 2004, Web AS Java Installation and Upgrade

Conf ig Tool : Managers/Serv ic es Conf igurat ion

Add/Removeinstance nodes

Configureconnectionencryption andUME data

GlobalDispatcherand GlobalServersConfiguration

All instancesin the Web AS

Java System

Switch to Configuration Editor mode

Use the“Connect to DB” button to refreshthe information

The J2EE Engine Config Tool enables the modification of service or manager module properties in the DB.The current server configuration is scanned from the database to which you have connected anddisplayed in the main frame as a tree structure.

No start/stop of any service/manger or node can be done in the Config Tool

The root element of the tree is the J2EE Engine cluster. It contains:

A global dispatcher configuration and a global server configuration

Contain the global services and managers properties for each type of node. Changing these propertiesreflects to all cluster elements. The global properties include default and custom values. You cannotchange the default values, you can set a new custom value and it will has a lower priority than thelocal values (default or custom) for this property.

All instances listed

Each instance contains one Java dispatcher and a specific number of server processes. Each nodecontains a list of managers and services.

You can change them according to your needs. To delete the local values of a property, so the globalvalues are taken, use the SET TO GLOBAL button.

For more information on UME and LDAP configuration refer to the TADMJ8 course.

Page 142: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 142/424

25

© SAP AG 2004, Web AS Java Installation and Upgrade

Config Tool: Creat ing/Delet i ng Server Nodes

You can Add or delete Servernodes in an already created instance

To create new J2EE Engine instancesyou have to use the installation tool

SAPInst

Create/Remove Server node

1. Select the instance on which you want to create the new server process

2. Choose Server→ Add Server

Only one dispatcher is allowed per J2EE Instance, and only SAPInst can create newinstances, thus, the Config Tool doesn’t allow to create any dispatcher node.

Page 143: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 143/424

26

© SAP AG 2004, Web AS Java Installation and Upgrade

Conf ig Tool : Instanc e Conf igurat ion

This procedure enables you to configure instance properties such as Java settings (Java home, Heap Size, Java parameters, classpath),server process debug settings, message server settings, and bootstrap settings that refer to the instance itself and all server nodes containein it.

Dispatcher properties are managed only in the Dispatcher node.

The Java settings are read from DB by the Bootstrap processes. Because this process only runs when the Instance/node starts, theInstance/node need to be restarted in order to make affective any change in this area.

Instance tabs (see appendix for details)

Message Service & Bootstrap : View or edit the message server host and port, view or edit the Java settings of the Instance Bootstrap proce

Servers General : Startup Framework default settings and JVM default settings of every Server node created in this instance.

Servers Debug : Debugging default settings of every Server node created in this instance.

Page 144: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 144/424

27

© SAP AG 2004, Web AS Java Installation and Upgrade

Conf ig Tool : Instanc e Conf igurat ion

Node tabs (see appendix for details)

General : Startup Framework custom settings and Java custom settings of the nodeselected (same configuration options than the Servers General tab of the Instanceproperties).

Bootstrap : Java settings of the Bootstrap process of this node.

Log configuration : Logging and tracing configuration of this node (see TADMJ5 or thedocumentation path: SAP Library -> SAP NetWeaver -> Application Platform -> Java Technology in SAP Web Application Server -> Administration Manual -> Server 

Administration -> Logging -> Log Configuration )

Debug : Debug Settings in the Servers nodes only. (same configuration options thanthe Servers Debug tab of the Instance properties) .

Page 145: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 145/424

28

Administration Tools Overview

System Info Web Page

Visual Administrator

Shell Console Administrator

Config ToolConfiguration Editor

Deployment Tools

Appendix

Page 146: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 146/424

29

The Configuration Manager is related to all J2EE Engine modules. In addition, there are services thatstore extra information in the database. The container services (EJB Container Service, Web

Container Service, Connector Container Service, and so on) store the data for the applications that aredeployed on the server.

Configuring a Database Connection

The rdbms.maximum_connections property defines how many connections can be established to thedatabase at a time. These connections are used by the Configuration Manager to access theunderlying database. If you set a small number of connections such as one, some of the services willhave to wait for an idle database connection while accessing the Configuration Manager.

You have to change the properties shown on both the server and dispatcher elements to connect thecluster elements to the same database. Server and dispatcher nodes do not need the same number ofinitial and maximum connections, but they must access the same

When connecting to the database, the J2EE Engine as well as the applications deployed on itauthenticate themselves by means of a user name and a password. They are specified only once,when the DataSource that is used to provide the database connection is created. The DataSource isinitialized with the supplied credentials and uses them for the authentication of all physical connectionsthat it provides. The user name and password for the default DataSource are stored encrypted in asecure store. The parameters for this secure store are the following properties of the ConfigurationManager:

secstorefs.keyfile

secstorefs.lib

secstorefs.secfile

© SAP AG 2004, Web AS Java Installation and Upgrade

Conf igurat ion Manager  

The Configuration Manager enables Java Engine modules to accessand store data from the Java Engine DB.

It uses the Open SQL for Java to connect and work with the RDBMS.

The location of the file that contains the secret key used forencryption of the data for the default database connection.

secstorefs.keyfile 

The location of the libraries used by the J2EE Engine to encryptthe data.

secstorefs.lib 

The location of the file that contains the encrypted data for thedefault database connection

secstorefs.secfile 

The name of the J2EE Engine system, such as C11.system.name 

The maximum number of connections that can be established tothe database simultaneously

rdbms.maximum_connections 

The database connections that are initially established and storedin a connection pool to be used by request

rdbms.initial_connections 

The location of the driver archive file in the file system.rdbms.driverLocation

The name of the secured property entry where the databaseconnection settings are stored.

rdbms.connection

Page 147: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 147/424

30

Configuration objects are persistent objects that hold information about the J2EE

Engine cluster elements, components and the applications deployed on them;configuration objects contain parameters as key-value pairs and files.

The configuration objects exist in the database in a tree structure. You can edit thestructure and its substructures as well as the configuration objects themselvesdirectly in the database using the means provided by the Configuration AdapterService.

The Service Manager communicates with the Configuration Manager toenable storage of configuration data about the services.

© SAP AG 2004, Web AS Java Installation and Upgrade

Conf igurat ion Adapt er Serv ice

This component enables you to manage the Configuration

Manager and the configuration objects in the database. It uses theinterfaces that the Configuration Manager provides, enabling you

to access and modify configurations.

The Configuration Adapter Service provides the following means

for administration:

Graphical user interface (GUI)

The GUI part of the service is available in the Visual Administrator and inthe Configuration Editor tool for offline editing.

Shell commands

The service is running both on Java dispatcher and on server

processes.

Page 148: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 148/424

31

© SAP AG 2004, Web AS Java Installation and Upgrade

Conf igurat ion Edi t or : Main Func t i onal i t y

Online/Offline access tothe Configuration Database.

All J2EE Engine nodes

must be offline.

Can be started by:•Visual admin: Configuration Adapter Service of the Server nodes.•Config Tool: Switch to Configuration mode button.•UNIX script:  /usr/sap/<SID>/JC<inst-nr>/j2ee/configtool 

•Windows script: <drive>:\usr\sap\<SID>\JC<inst-nr>\j2ee\configtool.bat 

File entry

containing a

Binary file

Property Sheet

Configuration

Edit the configuration objects directly in the database only in extreme cases.When you need to edit the configurations, always use the Runtime tab of ConfigurationAdapter Service in Visual Administrator.

Only J2EE Engine administrators have permission to edit the configurations.

Purpose

exploring the content of the Configuration Database (e.g. problem analysis in the case of suspectedmissing or corrupted configurations)

deleting/changing/updating configuration entries (to be used carefully)

The shell commands in the CONFIGURATION group enable you to view details aboutconfigurations and locks.

Page 149: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 149/424

32

© SAP AG 2004, Web AS Java Installation and Upgrade

Conf igurat ion Edi tor : changing the c onf igurat ion

Double-click to edit

the Property Sheet

Right-click toedit theConfigurations

Configurations are cached in a distributed cache within the cluster.

Stores objects, files and property sheets

A property sheet is a flat set of properties and distinguishes between default and custom settings(if the custom flag is not flagged the value is default and vice versa).

The global properties are common for all dispatcher and server elements. The configurations of thisproperties are situated in the following configuration Propertysheets (this Propertysheets can be seenusing the Configuration Adapter Service):

1. Dispatcher elements:

a. for managers: cluster_data/dispatcher/cfg/kernel/<manager_name> 

b. for services: cluster_data/dispatcher/cfg/services/<service_name> 

2. Server elements:

a. for managers: cluster_data/server/cfg/kernel/<manager_name> 

b. for services: cluster_data/server/cfg/services/<service_name> 

Page 150: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 150/424

33

Administration Tools Overview

System Info Web Page

Visual Administrator

Shell Console Administrator

Config ToolConfiguration Editor

Deployment Tools

Appendix

Page 151: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 151/424

34

© SAP AG 2004, Web AS Java Installation and Upgrade

Deploym ent Overv iew

DB Schema Data Filesystem ContentJ2EE AppDB Content

IDE

Database

J2EE Server

Filesystem

DB SchemaDeploy Tool

FilesystemContent Deploy

Tool

DB ContentDeploy Tool

J2EE EngineDeploy Tool

• Deployment is the process of

delivering a Java application to the

runtime environment of the J2EE

server

•During deployment the different

parts that compose the application

are stored in the correct runtime

repositories.

• The Deployment Descriptor file,contains the information needed by

the Deploy Tool to deploy the

application.

The word deploy has roots as a military term, used to describe the placement ofequipment and troops in a battlefield.

As a J2EE term, is the final step in the software delivery process; it’s used to describethe process (automatic or manual) of placing the files and other resources in the correctruntime repository (Database, File system, J2EE system) and assuring that all theinformation the J2EE Server needs to run the application is available.

The information the Deploy tool needs to deploy an application is contained in an XMLfile called Deployment Descriptor (DD)

The standard deployment API included in the J2EE specification is described inhttp://www.jcp.org/en/jsr/detail?id=88 (see the appendix for more information of theJ2EE standard deployment process).

Page 152: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 152/424

35

© SAP AG 2004, Web AS Java Installation and Upgrade

Various deployment scenarios require different ways to perform the deployment tasks. Thefollowing means for deployment are provided:

Software Delivery Manager (SDM)It is especially suitable for:- Administrators/Developers when they want to deploy other people’s applications.- Administrators when deploying SPs for SAP Java applications (necessary for correct versioning).- Developers deploying software with the SAP NetWeaver Developer Studio in a local target.

Deploy Service (Visual Administrator)suitable for runtime administration:- deploying, updating, removing, starting, and stopping an application- updating a single file- getting Client Jar

- getting application information

Deployment Tools Overv iew

• The Deploy Tool is another solution suitable for generating, assembling anddeploying J2EE applications and application components.

• It was the only deployment tool on WAS 6.20 but on Web AS 6.40 The softwareDeployment Manager is recommended.

• It will not be supported on NetWeaver’05

Page 153: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 153/424

36

© SAP AG 2004, Web AS Java Installation and Upgrade

DB Schema Data Filesystem ContentJ2EE AppDB Content

IDE

Database

J2EE Server

Filesystem

DB SchemaDeploy Tool

FilesystemContent Deploy

Tool

DB ContentDeploy Tool

J2EE EngineDeploy Tool

IDE

Database

J2EE Server

Filesystem

DB Schema Data SDADB Schema Data

DB Content SDADB Content

J2EE App SDAJ2EE App

Filesystem Content SDAFilesystemContent

Software Deployment Manager

Deploym ent : SDM Overvie w

With SDM, the deploying of various content types is facilitated

The deployment user interface for all kinds of content and systems is unified

The Software Delivery Manager – SDM – unifies the deployment process for several ofdifferent content types by providing a unique deployment interface for all these typesand by using a standardized delivery/transport format.

SDM serves as a single access point for SAP tools like CMS, IDE, SAPINST whichneed to deploy content into different runtime systems.

Page 154: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 154/424

37

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM: Sof tw are Component s

The foundation for SDM is the (development) component model.

2 major file formats supported: SDA: Software Deployment Archive corresponds to the deployable

part of a Development Component

SCA: Software Component Archive corresponds to the deployableparts of a Software Component

Support Packages and products are concepts put on top of thecomponent model.

Software Deployment Archive (SDA): The Software Deployment Archive (SDA) is thedelivery format for SAP applications in programming languages other than ABAP. AnSDA is the smallest unit that you can deploy. Furthermore, the SDA is the smallest unitfor which patches can be created and delivered.

Software Component Archive (SCA): A Software Component Archive (SCA) is thephysical representation of a version of a software component. It contains a specificnumber of SDAs, whose quantity describes a precisely-defined version level. An SCAupdate always results in a new version level of the software component.

Refer to the course TADMJ8 “Java Development Infrastructure Administration ” or to theonline help: Architecture Manual -> SAP NetWeaver Java development Infrastructure -> Component Model for more information about the Component Model.

Page 155: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 155/424

38

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM: Fi les and Component s

SDA It is an archive format that is compatible with ZIP and that can be used as acontainer for other archives.

An SDA contains at least the following files:

MANIFEST: File with meta information on the content of a Java archive (jar).

SAP MANIFEST: Manifest that also contains information on software logistic processing. Among otherthings, this includes the Descriptions of dependencies and the Internal SAP descriptions of versions.

SDA Deployment Descriptor: XML file that must contain all information required for the deployment.The development team responsible for the SDA is responsible for providing this file.

The EAR archive is a special case in the J2EE context. If an EAR archive contains anSAP manifest, it is also an SDA. The SDM recognizes the EAR archive as an SDA, butdoes not rename the archive extension as <archive_name>.sda.

Larger entities can be created in SCA format in the second step from the different SDAs.

Page 156: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 156/424

39

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM: Operat ion M odes

SDM Server Server handles requests sent by a SDM Client Lib or a SDM Remote GUI

Simple Web Server to browse log files written by SDM

Remote GUI Requires a running SDM Server

Swing based (as of SP3 using frog Look and Feel)

Command line interface A new SDM process is started each time a command is executed

No SDM Server may run at the same time (this is checked)

Java Client API Requires a running SDM Server

Delivered as one jar: SDMClient.jar (and one required jar: Net.jar)

Very lightweight implementation (using generic Proxy-mechanism)

IN ALL OPERATIONS MODES SDM IS ABLE TO HANDLE ONE ACCESS AT A TIME

The Command line interface is used by SAPInst

The command line interface is found in:

/usr/sap/<SID>/<InstanceName>/SDM/program/sdm.sh

<drive>:\usr\sap\<SID>\<InstanceName>\SDM/program/sdm.

The Java Client API is used by the IDE and CMS

SDM can also work in Auto install / update Mode , this means that the softwaredelivered with the SDMKit is able to do installations and updates of SDM.

In all operation modes SDM is able to handle only one access at a time

Page 157: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 157/424

40

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM: s t ar t ing and s t opping t he SDM server 

SDM Integrated Server

on windows Java only instance:

Right click to Enable/Disable Server

SDM Integrated Server

on UNIX (or windows):

StartServer.sh and StopServer.sh 

StartServer.bat and StopServer.bat 

To exclude SDM of the Java Startup Framework:

1. Stop the SDM Integrated Server 2. Switch startup mode: sdm jstartup "mode=standalone“ 

3. Start SDM Standalone Server: StartServer or sdm server 

To include SDM of the Java Startup Framework:1. Stop the SDM Standalone Server: sdm shutdown 2. Switch startup mode: sdm jstartup "mode=integrated“ 

3. Start SDM Integrated Server

As standard, the Software Deployment Manager (SDM) is integrated into the JavaStartup framework of the SAP J2EE Engine, which means that it is started and stoppedautomatically with the Engine.

Situations can arise in which you need to start and stop the SDM independently of theSAP J2EE Engine. For example, for security reasons, you may want to run the SDMduring the current deployment only.

SDM Server can also run in an standalone mode with the help of the command lineinterface (sdm.bat for Windows or sdm.sh for UNIX).

Remember that, in standalone mode, the SDM is no longer started and stoppedautomatically with the SAP J2EE Engine. You can then only use the command line tocontrol the SDM (for more information, see the file SDM_Commandline_en_final.pdf inthe directory <sdm_home>/doc).

Page 158: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 158/424

Page 159: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 159/424

42

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM GUI: Reposit ory by Target Syste m

ShowingRepositorycontentsgrouped byTargetSystems

PossibleDeployment typesfor this TargetSystem

ComponentModelInformation

Information onTarget SystemSAPJ2EEEngine

When deploying SDAs/SCAs, the Software Deployment Manager stores the data inthe SDM Repository, where it then manages the installed archives. The SDMrecognizes dependencies between archives and provides support when you installand maintain shared applications

A Target System represents a physical runtime system in conjunction with itsdeployment relevant configuration.

The following target systems are possible: File system, Database or SAP J2EEEngine.

The SDM Repository tab on the initial screen gives you an overview of the installedtarget systems and the archives they contain. When you expand the target systemsnode, you see the SCAs and SDAs that are assigned to the corresponding targetsystems.

Expanding and SCA you see all the SDAs contained in it.

The following tab pages appear in the right screen when you select a target system:

Page 160: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 160/424

43

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM GUI: Reposit ory by Arc hive

Right click to see

more information

Component

Model

Information

SDA (DC)

dependencies

Showing

Repository

contents

grouped by

Archive

Each SDA is assigned a Software Type which is declared within the SDA-DD inside theSDA – the Software Type determines the kind of deployment which is executed for theSDA

Software Types:

DBSC: Database content

JDDSCHEMA: Database schema objects

J2EE: J2EE applications (Servlet, JSP, EJB, ...)

engine-bootstrap, engine-kernel, primary-service, primary-library, primary-

interface: engine components to be deployed offline

library

single-module: rar archive for standalone deployment connector

FS: File system content

Page 161: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 161/424

44

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM GUI: Reposit ory. Conf ig urat ion

Ports in used bythe SDM Server

Connection with

the SLD for version

updating

Substitution Variables

The Configuration tab shows information about the current settings of the SDM server

The Substitution Variables tab shows the catalog of Deploy time Substitution Variablesthat SDM understands.

Deploy time Substitution Variables can be referenced by name inside the SDADeployment descriptor. To distinguish a parameter reference from a fixed string theDeploy time Substitution Variables has to be enclosed in a pair of start and stopdelimiters "${" and "}".

Substitution Variables can be used for file system and engine deployment.

Page 162: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 162/424

45

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM GUI: Deploym ent

1 .- Select the

Archives from the

file system

2.- Choose archives to be deployed

3.- Information ofTarget System

3.- Starts

deployment

4.- Confirmsfinisheddeployment

The deployment of new software components is divided into several steps:

1. To select additional SCAs, or SDAs, choose Add SCA/SDA to Deployment List . Todelete superfluous SCAs or SDAs, choose Delete SCA/SDA from Deployment List .Choose Next .

2. The SDM determines the Deployment Action from the manifest data and displays thedata in the archive list. The Repository Preview shows how the SDAs are distributed inthe SDM Repository. Choose Next .

3. The SDM tells you that it is ready for deployment. Choose Start .

If an error occurs and you have to perform the deployment again, deployments that were successfullyperformed are not repeated.

4. A success message appears at the end of the deployment process. Choose Confirm toconfirm the deployment

You can always go back during the deployment steps

Page 163: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 163/424

46

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM GUI: Deploym ent set t ings

Settings for Updating SCAs/SDAs

Update deployed SCAs/SDAs that have lower component versions than the selected SCAs/SDAs only With this option, you can deploy new archives only, or update existing archives with a newer version.

Update deployed SCAs/SDAs that have the same or lower component versions than the selected SCAs/SDAs With this option, you can redeploy existing archives. This overwrites the previous deployment.

Update deployed SDAs/SCAs that have any version With this option, you can deploy any archive, without its version being checked by the SDM.

Handling in case of deployment errors Stop when the first error occurs

With this setting, the deployment terminates as soon as it encounters an error. Any deployments that have already been completedare retained.

Skip deployment of SCA/SDAs depending on the erroneous deploymentWith this setting, any archives that cause deployment errors are skipped. The SDM still processes the list of archives until the end.

Settings for Updating SCAs/SDAs 

Update deployed SCAs/SDAs that have lower component versions than the selected SCAs/SDAs only 

With this option, you can deploy new archives only, or update existing archives with a newer version.

Update deployed SCAs/SDAs that have the same or lower component versions than the selected SCAs/SDAs 

With this option, you can redeploy existing archives. This overwrites the previous deployment.

Update deployed SDAs/SCAs that have any version 

With this option, you can deploy any archive, without its version being checked by the SDM.

Handling in case of deployment errors

Stop when the first error occurs 

With this setting, the deployment terminates as soon as it encounters an error. Any deployments that have already beencompleted are retained.

Skip deployment of SCA/SDAs depending on the erroneous deployment 

With this setting, any archives that cause deployment errors are skipped. The SDM still processes the list of archives untilthe end.

Page 164: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 164/424

47

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM GUI: Undep loym ent

1.- select the SDAs to undeploy andpress Start Undeployment 

2.- Confirm when finish successfully

Your SAP J2EE Engine contains SDAs of applications that you can select to beundeployed.

You can only undeploy applications that do not have dependencies on other SDAs.

Page 165: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 165/424

48

© SAP AG 2004, Web AS Java Installation and Upgrade

SDM GUI: Log Vi ew er 

Choose between Server/GUI or other log

Here you can see a

deployment of an SDA

(Encyclopaedia_Pages_DDIC)with DB content (table

PAGES)

You use the Log Viewer tab to display the log for the SDM work steps.

You can also Choose Other Log to display other logs created by the SDM. You canchoose from the following logs:

sdm_server.out: Server output to Stdout

sdm_server.err: Server output to Stderr

sdm_remotegui.out: GUI output to Stdout

sdm_remotegui.err: GUI output to Stderr

sdmlogYYYYMMDD.log: SDM log created by SDM Server

sdmguiYYYYMMDD.log: GUI log created by SDM Server

sdmclYYYYMMDDHHMMSS.log: Client session log. For example, deployment with SAPNetWeaver Developer Studio.

 jddilogYYYYMMDDHHMMSS.log: Log of a JDDI deployment. The content of this log isalso included in sdmlog.

The logs are all located under <sdm_home>/log.

Page 166: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 166/424

49

© SAP AG 2004, Web AS Java Installation and Upgrade

Dep loy Service

The Deploy Service manages the deployment of J2EE

applications and the distribution of their modules to thecorresponding containers across the cluster.

It controls all actions that can be performed on applicationsduring their lifecycle, such as requesting containers for

information about deployed applications and their modules, orinitiating a demand to modify them. It also ensures that all

deployed applications in the cluster are homogeneous and up-to-date.

The Deploy Service runs only on server processes.

Page 167: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 167/424

50

Some of the runtime administration operations you can perform include:

• Manage the deployment of applications

• Observe the status of the deployed applications

• Request information about the application components or

• Remove applications and to change the application status

Depending on your needs, you can specify different application startup modes for yourapplications.

As a response to your actions in the runtime management, the Deploy service performsdeployment operations. They change the application status of the targeted

applications.

Go to the documentation for more information of the Deploy Service (AdministrationManual -> Server Administration -> SAP J2EE Engine Administration -> DeployService)

© SAP AG 2004, Web AS Java Installation and Upgrade

Deploy Serv ice Runt im e

Page 168: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 168/424

51

Administration Tools Overview

System Info Web Page

Visual Administrator

Shell Console Administrator

Config ToolConfiguration Editor

Deployment Tools

Appendix

Page 169: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 169/424

52

Shell Console Commands

Servers Configuration

Configuration Manager

J2EE Deployment

Page 170: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 170/424

53

© SAP AG 2004, Web AS Java Installation and Upgrade

MAN [Command] 

Dexcription: Provides help on a command. If no parameters are specified, it shows all availablecommands

LSC [-state] 

Description: Lists all active cluster machines

JUMP [ClusterID] 

Description: Jump to the specified Cluster element

STARTSERVICE [ClusterID] <serviceName> 

Description: Starts a service on the specified cluster element

STOPSERVICE [ClusterID] <serviceName> 

Description: Stops a service on the specified cluster element

RESUME[-status] 

Description: Resumes a cluster element. If no parameters are specified, the current status is shown

SUSPEND [-status] 

Description: Suspends a cluster element. If no parameters are specified, it shows the current status

SHUTDOWN [-mark <timeout>] [ClusterID] 

Description: Shuts down a cluster element or the whole cluster

Shel l Console: Im port ant Comm ands 1

Page 171: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 171/424

54

© SAP AG 2004, Web AS Java Installation and Upgrade

LSM [ClusterID] 

Description : Lists all managers running on the specified cluster element

LISTMP [clusterID] <ManagerName> 

Description : Lists the properties of the specified manager SETMP <[[-f <fileName1>] [-f <fileName2>]...] [[-p <key1> <value1>] [-p <key2> 

<value2>]...]> [clusterID] <managerName> 

Description : Loads the new property values for the specified manager

LSS [-d] [ClusterID] 

Description : Lists all services installed on the specified cluster element

LISTSP [clusterID] <ServiceName> 

Description : Lists the properties of the specified Service

SETSP <[[-f <fileName1>] [-f <fileName2>]...] [[-p <key1> <value1>] [-p <key2> <value2>]...]> [clusterID] <serviceName> 

Description : Loads new property values for the specified service.

Shel l Console: Im port ant Comm ands 2

Page 172: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 172/424

55

Shell Console Commands

Servers Configuration

Configuration Manager

J2EE Deployment

Page 173: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 173/424

56

© SAP AG 2004, Web AS Java Installation and Upgrade

De t ai l Se rv er s c o nf ig ur at i on 1 /3

Message Service & Bootstrap Tab 

View or edit the message server host and port

Message server host

Message server port

view or edit the Java settings of the Instance Bootstrap process

Max heap size – The maximum size of heap memory used by the JVM

Java parameters – Contains additional parameters to be passed to the JVM. By default, no additional Java parameters are available

Classpath – Holds the classpath to the bootstrap launcher file for a particular cluster element

Parameters – Specifies additional Java parameters that will be appended to the existing Java parameters

Page 174: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 174/424

57

© SAP AG 2004, Web AS Java Installation and Upgrade

De t ai l Se rv er s c o nf ig ur at i on 2 /3

Servers General Tab 

Startup Framework default settings of every Server node created in this instance:

Execute – specifies whether the selected cluster element is executable.

Show console – to see the console for starting a server process

Java default settings of every Server node created in this instance:

Max heap size – The maximum size of heap memory used by the JVM

Java parameters – Contains additional parameters to be passed to the JVM. By default, no additional Java parameters are available

Classpath – Holds the classpath to the bootstrap launcher file for a particular cluster element

Parameters – Specifies additional Java parameters that will be appended to the existing Java parameters

Page 175: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 175/424

58

© SAP AG 2004, Web AS Java Installation and Upgrade

De t ai l Se rv er s c o nf ig ur at i on 3 /3

Servers Debug : Debugging default settings of every Server node created in this instance.

Debuggable – specifies that the selected server process is debuggable (that is, the “debug mode” feature for this server process is enabled)

Enabled debug mode – specifies whether the server process is in debug mode

Restricted load balance – specifies whether the server process is part of the load balancing system.

Debug port – enables debugger clients connections. This port is opened by the virtual machine and must not be among the ports that the J2EE Engine uses. Bydefault, it is set to 33561

Page 176: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 176/424

59

Shell Console Commands

Servers Configuration

Configuration Manager

J2EE Deployment

Page 177: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 177/424

60

© SAP AG 2004, Web AS Java Installation and Upgrade

Genera l Conf igurat ion Manager Arch i t ec t ure

CentralInfrastructure

Configuration Manager one cluster node

open configurations of Configuration Handler

ConfigurationCache

ConfigurationHandler

Read AccessConfiguration

R

RDBMS

Write AccessConfiguration

Ropen / close

configuration

Modifications

R

getConfigurationForRead(...)

getConfigurationForWrite(...)releaseConfiguration(...)commitModifications()

R

getDelta()

R

readData(...)

CacheInvalidation

Event

Enqueue

Server

R

Otherclusternodes

R

HierachyLock

R

ConfigChangedEvent

PersistencyHandler

Open SQL

MessageServer

R

R

R

R

Read &BatchUpdate

Configuration Manager Main functionality:

Provides an Infrastructure for global (cluster wide) hierarchical storage for configuration data

Cluster wide change event notification

Provides transactional access

Configurations are cached in a distributed cache within the cluster.

Stores objects, files and property sheets

A property sheet is a flat set of properties and distinguishes between default and custom settings

Page 178: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 178/424

61

© SAP AG 2004, Web AS Java Installation and Upgrade

Centra l Clust er Conf igurat ion

instance.properties

Binaries

Cluster NodeSettings

Instance Host1

DBR

Cluster_data

Binaries

Global settings

Instances

Host 1

Settings cluster node 1

Settings cluster node n

Host nServer/Dispatcher

Process

R

ConfigManager

BootStrap

OfflineConfigurationManager

Cluster

ConfigurationTool

Cluster Admin

R

BootstrapBinaries

BootstrapSettings

JControl

Installed by SAPInst

Page 179: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 179/424

62

Shell Console Commands

Servers Configuration

Configuration Manager

J2EE Deployment

Page 180: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 180/424

63

© SAP AG 2004, Web AS Java Installation and Upgrade

J2EE Dep loyment 1 /4

Development Assembly Deployment

IDE

Archive (.jar)

Archive (.jar)

EJB components(Enterprise Bean)

Archive (.ear)

Bean developer ApplicationAssembler

Deployer

J2EE Server

Service

Server ProviderContainer Provider

Systemadministrator

Deploymenttools

Admin-Tools

Archive (.war)

Web components(e.g. Servlet, JSP etc.)

Web Container

EJB Container

Separation of Tasks (Role Concept)Bean Bean developers develop Enterprise Beans that implement the business logic for a developer

specific specialist area as reusable SW components. Bean developers forward theircomponents as jar-archive files, which contain meta data in an XML file(deployment descriptor) in addition to the compiled classes and interfaces. Componentfeatures and their requirements of the (as yet unknown) runtime environment arecontained in a declarative format.

Application Application assemblers use the components provided for a specific application by assemblercombining several components as larger conglomerates. They have the option of adding

additional Java beans here. The overall archive created here is also known as aDeployment Unit or EJB Module.

Deployer Deployers are experts for a specific system environment and are familiar with the serverand container products used. They use deployment tools to integrate the deploymentunit in the server.

Container Container providers provide the specialist tools for the respective container and server.Provider

System The system administrator is responsible for the infrastructure required to operate theAdmin server, configures and binds the system services and resources required and uses tools

provided by the Container Provider here.

Page 181: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 181/424

64

© SAP AG 2004, Web AS Java Installation and Upgrade

J2EE Dep loyment 2 /4

Assembly

IDE

Archive (.jar)

Archive (.jar)

Bean developer

Archive (.war)

DeploymentDevelopment

Enterprise Java Beans contain business logic orrepresent data from a database.

Separation of Business Logic and PlatformJ2EE defines strict encapsulation of business logic as components (Enterprise Java Beans,EJBs). These components are installed to be run on a specific platform (Web Container fora J2EE Server). EJBs communicate with the container for the application server viastandard interfaces and are therefore platform-independent.

Enterprise Java BeansEJBs are the smallest components within the EJB architecture. This means that they canonly be forwarded or exchanged as a total unit. An additional significant characteristic hereis the fact that bean developers can focus on implementing business logic. Runtime logic

(such as transaction control) has been implemented in the EJB Container. The beandeveloper uses the corresponding entries in the deployment descriptors to determinewhether they can use the runtime logic for the container. Bean developers can alsoimplement the runtime logic themselves.

Page 182: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 182/424

65

© SAP AG 2004, Web AS Java Installation and Upgrade

Assembly

IDE

Archive (.jar)

Archive (.jar) Archive (.ear)

Bean developer ApplicationAssembler

Archive (.war)

w eb.x m l e jb-jar .x m l appl ic at ion.x m l

DeploymentDevelopment

Runtime logic such as transaction control or security checks is requestedvia entries in deployment descriptors.

Each archive contains a deployment descriptor (XML format).

J2EE Dep loyment 1 /4

WAR/JAR/EAR: Declarative Specification by Deployment DescriptorsA series of formats in which the compiled form of J2EE applications (class-files, JSP, HTMLfiles, pictures etc) are packed, have been defined for J2EE so that these can be installed onan application server for execution.EJB-JAR All (auxiliary) classes and interfaces for EJB are saved here with a standardizedXML deployment descriptor (ejb-jar.xml).

The deployment descriptor describes the EJBs and their contexts and features,such as the JNDI name, transaction features etc.WAR W(eb)AR(chive) files contain the "web section" of J2EE applications, such as

servlets, JSPs, HTML files, pictures etc. A corresponding Web Archive DeploymentDescriptor is also available here.EAR JAR and WAR files are bundled ("assembly") as a J2EE total application inJ2EE E(nterprise) AR(chive) files.

Page 183: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 183/424

66

© SAP AG 2004, Web AS Java Installation and Upgrade

EAR file

Deployer

Deployment

tools

Deployment

Web Container

EJB Container

EJB Verifier

Container Compiler

Remote Compiler

Remote Object

1 . . .

2 public String doSomething() {

3 // authentificate user

4 // start transaction

5 String s = bean.doSomething();

6 // stop transaction

7 return s;

8 }

9 . . .

Deployment descriptors contain information on how components areinstalled on the respective application server (declarative specification).

Entries in the DD

are used togenerate

additional classes

J2EE Dep loyment 4 /4

DeploymentThis work step has not been standardized in the J2EE Specification. Each containerproduct has its own solution here.During deployment of an EJB Jar file, the following steps are usually executed by thecontainer:

The system checks whether components in the EJB Jar file adhere to the rules in the EJBspecification.

The container tool generates the EJB and home classes for the Enterprise Beans.Methods in the remote object correspond to methods in the Enterprise Bean.

However, methods in the remote object contain additional code that is added using entries in thedeployment descriptor. The remote object then acts as a proxy object.Line 2: The generated class provides the same method as the actual bean.Line 3: Implementation of the runtime logic takes place within the remote class. The

deployment tool inserts additional code here, e.g for transaction control etc.Line 5: Actual calls of the bean method take place here..

The container tool generates all stub and skeleton classes that are required to support RMI-IIOP.

Page 184: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 184/424

67

© SAP AG 2004, Web AS Java Installation and Upgrade

You should now be able to:

Start/Stop the Visual Admin, Config Tool, SDM, Shell

console and Configuration Editor

Change the configuration of the J2EE server usingthe Visual Admin. Config Tool, and Shell Console.

Offline configuration of the J2EE Engine with the

Configuration Editor

Mange the J2EE Engine Repository with the SDM

Do (Un-)Deployments with the SDM

Web AS Admin is t ra t ion Too ls Overv iew: Top ic Summ ary

Page 185: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 185/424

  1

SAP Java Engine Administration –

Exercises and Solutions

Unit: Web AS Java Administration Tools Overview.Lesson: Exercise – Work with Web AS Java

Administration Tools.

At the conclusion of this exercise, you will be able to:

•  Start the Visual Administrator

•  Log on to the Visual Administrator

Use a tool to manage online the J2EE Engine

SIDNumber 0 for DEV, 1 for QAS

Sysnr.: 00, 01 for DEV; 10, 11 for QAS

ABAPInstance: D<sysnr>, DVEBMGS<sysnr>

Visual Administrator

1-1 Start the Visual Administrator Tool.

1-1-1 Double click on G:\usr\sap\<SID>\DVEBMGS<ABAP instance

 number>\j2ee\admin\go.bat 

1-2 Create a new Connection

1-2-1 Choose New in the pop-up window Connect to SAP J2EE Engine

Field Name ValueDisplay name  <SID> J2EE_Admin by Dispatcher 

Lookup method Connection to a dispatcher node

1-2-2 Choose Next

Page 186: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 186/424

  2

Field Name Value

Username J2EE_Admin

Host localhost

 Port   50004 for DEV 

 51004 for QAS 

Transport Layer Default

1-2-3 Choose Save

1-3 Log on as Administrator

1-3-1 Double click on the <SID> J2EE_Admin entry.

1-3-2 Enter the password (enjoy)

1-3-3 Click on Connect

1-4 Which are the ID numbers of the instances and nodes in your system and with

which ABAP instance are they related?

1-5-1 Select the node in the left tree and you will see and Info tab with

information on the node on the right panel.

1-5-2 Open the JControl trace file at:

G:\usr\<SID>\<ABAPInstance>\work\dev_jcontrol  

Find the Worker nodes section to find the nodes associated with that

particular ABAP instance

ABAP Instance <InstanceID> Node Type <NodeID>

  DVEBMGS<sysnr> 37030

  Dispatcher 3703000

Server 3703050

  D<sysnr> 157697 

  Dispatcher 15769700

Server 15769750

For the rest of the exercise use the Java Instance associated with the central ABAPInstance.

1-4 List all the Managers that are not in the Dispatcher and Server nodes

ApplicationThread Manager is only in Server nodes

ConnectionsManipulator is only Dispatcher nodes

Page 187: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 187/424

  3

1-5  Find information about these managers

1-5-1 Go to http://help.sap.com → Search Documentation on Area SAP

NetWeaver, Application SAP NetWeaver, Release 04 

1-5-2 Enter “ApplicationThread” →  Narrow by BACKGROUND Info-Class and 

Select “ApplicationThread Manger”

1-5-3 This manager supplies the threads in which client applications’ source

code is executed. It provides a set of properties for starting and managing

client threads in the Java Virtual Machine. This manager runs on servers

only.

1-5-4 In the left hand side tree, under click on the Connections Manipulator

Manager”

1-5-6 This manager is responsible for managing client connections to the

cluster. It provides a set of properties for managing the pools where the

TCP connection objects are stored. The Connections Manipulator 

 Manager runs on dispatchers only

Page 188: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 188/424

  4

1-6  Which Data Sources are configured in the JDBC Connector Service of your J2EE

Engine and how many free connections do they have left?

1-6.1  The only JDBC connector is in the server node (which is the only process that

connects to a DB)

1-6.2  On the left tree go to Server→ JDBC Connector

1-6.3  On the right panel choose Runtime tab→ Datasources 

1-6.4  There is only one data source called SAP<SID>DB (the default datasource)

1-6.5  In the monitoring tab you can see 2 free connections of a maximum of 10

(20% available).

1-8 Check the Telnet Service port and change it to 50088 for DEV and 51088 forQAS with the Visual Administrator using the local properties of the node.

1-8-1 To find the correct Telnet Port of the dispatcher you can have a look to the

“System Info” page with the J2EE_Admin user:

 http://<full qualified DNS name>:50000 for DEV 

 http://<full qualified DNS name>:51000 for QAS

1-8-2 Check the Service opening a Telnet connection to that port. Open a

command port and execute telnet localhost 50008 for DEV or telnet

localhost 51008 for QAS

1-8-3 Navigate to the Telnet Provider Service on the Dispatcher and the Server 

nodes. Only the Dispatcher one is configured to listen on port 50008. The

Telnet service on the Server node is not been using

1-8-4 Select the property Port of the Telnet Provider Service on the Dispatcher 

and edit its value to 50088 for DEV or 51088 for QAS.

1-8-5 Click on Update and then on Save Properties.

1-8-6 Restart the Telnet Service on the Dispatcher node

1-8-7 Refreshing the System info page should update the change.

The Dispatcher trace also logs the open telnet ports at:

G:\usr\sap\<SID>\<ABAPInstanceID>\work\dev_dispatcher

Look for “Telnet Port”.

Page 189: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 189/424

  5

Shell Console

2-1 Log on to the Shell Console with an administrator user

2-1-1 execute in a command prompt telnet <hostname> <custom port> where

<custom port> is 50088 for DEV and 51088 for QAS.

2-1-3 Log on with Administrator and password provided by your instructor

2-2 Which commands are available?

2-2-1 Type MAN to see the available commands and commands groups:

ADMIN, SYSTEM and TELNET

2-3 List all active Cluster Elements.

2-3-1 use the LSC to get and overview of the nodes in the current instance

Node ID

 Dispatcher  <Instance1ID>00

Server  <Instance1ID>50

 Dispatcher  <Instance2ID>00

Server  <Instance2ID>50

2-4 Use the GET_FREE_CONN command of the DBPOOL group of the server node to

find the free available DB connections of the DB pool.

2-4-1  Jump to the Server node of the J2EE Engine: JUMP <InstanceID> 

2-4-2  Add the DBPOOL commands group: ADD DBPOOL 

2-4-3  Ask for the free connections of the DB pool : GET_FREE_CONN 

SAP<SID>DB (you can also use GET_DS to get the available

datasources)

Page 190: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 190/424

  6

Config Tool

3-1  Connect to the default database with the Config Tool

3-1-1 Start the config tool on the server: G:\usr\sap\<SID>\ DVEBMGS<ABAP

instance number>\\j2ee\configtool\configtool.bat

3-1-2 Once the tool is started you are already connected to the default database

3-2 Check the Local and Global custom/default properties of the Dispatcher Telnet

Service. 

3-2-1 Click on the Telnet Provider service of your instance dispatcher .

Property Values

Global custom blank 

Global default 2323  Local custom 50088 for DEV, 51088 for QAS

  Local default 50008 for DEV, 51008 for QAS

3-3 Change the Telnet port of every dispatcher of every instance of the system to

50089 for DEV or 51089 for QAS.

3-3-1 Click on the Telnet Provider service of one dispatcher of your System ( . 

3-3-2 Select the Local property Port and click on Restore to Global  

3-3-3 Click on the Telnet Provider service of the global dispatcher.

3-3-4 Select the Port property and edit its value to 50089 for DEV or 51089 forQAS.

3-3-5 Press SET then  APPLY CHANGES and confirm the information popup.

3-3-6 Go the Visual Administrator, check that the Telnet Port value of the

appropiate Dispatcher hasn’t change yet, and Restart the Dispatcher node.

3-3-7 After the restart of the Dispatcher check the Telnet port is 50089 for DEV

or 51089 for QAS.

Page 191: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 191/424

  7

3-4 Check the Local and Global custom/default properties of the Telnet Service of the

Dispatcher node in the Config Tool.

3-4-1 Click on the Telnet Provider service of the instance dispatcher.

Property Values

Global custom 50089 50089 for DEV or

51089 for QAS. 

Global default 2323

 Local custom Blank 

 Local default  Blank 

3-5 Modify the Max Heap Size of the JVM of any server node in your Java instance

3-5-1 Go to the Servers General tab of your instance, increase the Max heap size(in MB) value to 333.

3-5-2 Click  Apply Changes and confirm both information pop ups (do not restart

the instance yet)

3-6 Add a new node. Write down the new node ID, the name of the node and the path

associated with the binary files. Finally check the existence of the new node

3-6-1 Select your instance in the right tree of the config tool (or one of its

components) and click on the Add Server button 

3-6-2 Confirm the information pop-up

3-6-3 The log pop-up shows the information asked:

Property Values

 Name Server 1 0_<InstanceID> 

 Node ID <InstanceID>51 

Path G:\usr\sap\DEV\DVEj2ee\server1

3-6-5 Apply Changes and Restart the instance.

3-6-6 To check the existence of the new node, check the System Info page.

3-7 What’s the Max Heap size of each server node?

3-7-1 You can read it in the Config tool, General tab of the selected node. Or

looking for the –XMx parameter in the JVM propertoes of the System Info

Page:

Page 192: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 192/424

  8

Node ID Max Heap Size

<InstanceID>50 333 Mb

<InstanceID>51 333 Mb

Page 193: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 193/424

  9

Offline Configuration Editor

4-1  Start the config tool in the server box.

4-1-1  You can start it directly with a script: 

G:\usr\sap\<SID>\JC00\j2ee\configtool\offlinecfgeditor.bat

4-1-2  Or from the Config Tool: Switch to Configuration Editor button. 

4-1-3  Or from the Configuration Adapter service in the Visual Administrator 

4-2 Write down the Global/Local custom/default values for the Port property of the

Dispatcher Telnet Service and the path of the PropertySheet that contains it. Try

with the instance you have been working during the previous exercises and with

the instance that you haven’t used.

For example if you have been only using the Java instance associated with the

Central Abap Instance of the DEV System (Java instance number 3703000) you

should find the following Property Sheetes and values:

Editor Path Property Values

Global custom 50089Cluster_data/dispatcher/ 

cfg/services/PropertySheet telnet  Global default 2323

  Local custom 50108Cluster_data/dispatcher/ 

 ID15769700 /services/PropertySheet telnet    Local default 2323

SDM GUI

5-1 Verify that the SDM Server is running

5-1-1 In the Web info page

5-1-2 Connecting to the http port of the SDM Server: http://hostname:50019 

5-2 Start the SDM GUI:

5-2-1 Execute: G:\usr\sap\<SID>\JC00\j2ee\SDM\program\RemoteGUI.bat 

5-3 Connect to the SDM Server

5-3-1 Click on the Connect to the SDM Server button

5-3-2 Use the password provided by your instructor (sdm)

5-3-3 Use the standard port 50018

Page 194: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 194/424

  10

5-4 What’s the Port number for Admin-Communication?

5-4-1 In the Repository Configuration you’ll find an entry showing 50017

for DEV and 510017 for QAS as the Admin port.

5-5 Add the CustomerEAR.ear archive in N:\setup\ATP_Web_AS_6.40_TC_Track\TADMJ1\WAS_Admin_Tools to the

deployment list and find information about the vendor and the software type of the

application.

5-5-1 Go to the deployment tab.

5-5-2 Select Hello.ear file provided by your instructor.

5-5-3 Add an archive to the list with the Add SCD/SDA to the Deployment list

(Local file Browser).

5-5-4 You can right click of the SDA to be deployed to find out that the vendor

is sap.com and that the software type is J2EE (it will be deployed against

the J2EE Target System)

5-5 Deploy the CustomerEAR application, but be sure that it stops if an erroroccurred.

5-5-1 Check the settings option:

5-5-2 

Choose Next to Go to step 2/4.5-5-3  Choose Next to go to step ¾

5-5-4  The SDA is ready for deploy

5-5-5  Choose Next to start.

5-5-6  Confirm after the deployment is finish correctly

5-6 Did the deployment switch off the J2EE engine after the deployment?

5-6-1 In the Log tab you’ll find the information. The SDM Server didn’t change

the previous status of the J2EE Engine. So if the engine was online itshould be still online. (In some cases the deployment has to be done with

the Engine offline, so the SDM Server might need to change the state of 

the J2EE Engine).

5-7 Execute the application.

5-7-1 open the following URL: http://<hostname>:<httpPort>/Hello

Page 195: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 195/424

  11

Unit 4: SAP Java Administration

Lesson 2: Configure different system services

Topic 4: Exercise for working with the Deployservice 

At the conclusion of this exercise, you will be able to:

•  Work with the option provided by the Deploy service runtime GUI

•  Deploy and manage a deployed application, and to remove an

application from the J2EE Engine

Your company wants to implement a new web application. As system

administrator, you would like to deploy this application.

Deploying and Updating an Application

1-1 Choose Server -> Services -> Deploy -> Runtime.

1-2 Choose Deploy

The Deploy dialog window appears.

Note:

If you choose “Deploy”, the application will be deployed but will be placed in

stopped mode.

If you choose “Deploy&Start”, the deployed application will be started

automatically.

If you choose “Update”, the application will be started after the update finishes,

only if it was started when the update began.

The dialogs of the “Deploy”, “Deploy&Start”, and “Update” options are

absolutely the same, so the procedure below can be relevant for each of them.

Page 196: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 196/424

  12

1-3 In the “File” field, specify the application EAR file. You can also browse to it in

the file system.

1-4 Specify a new “Work dir”, if you want to change the default one. This is the folder

in which the application file will be extracted.

Caution:

All files in the folder that you specify as a “Work dir” will be deleted! Back up thecontent of the folder in advance.

1-5 If some additional class files are necessary for loading and deploying or updating

the application, modify the list of “Additional Class Path”.

1-6 For “Remote Support” of the application, specify a transport protocol.

Note:

If you do not choose a transport protocol, P4 is set by default.

1-7 Choose “OK”.

Page 197: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 197/424

  13

1-8 The “Deploy Dialog” appears. If you have missed to make some of thedeployment configurations during the time you have created the application, you

have one more time a chance to set some of the application properties. In our case

there is no need for this, so directly choose “OK”.

The successful deployment is marked with green on the status bar:

Page 198: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 198/424

  14

Note:

An application is assumed to be deployed/ updated in the cluster if it is

successfully deployed/ updated on one server process in the cluster. The Deploy

service is responsible for its deployment/update on the other cluster elements. If 

the deploy/update is not successful, the cluster is not homogeneous. With each

restart of the server processes, the Deploy service tries to synchronize the

applications, their versions and their status in the cluster, until it is successful.

1-9 Choose “Applications” from the bottom of the screen to list the deployed

applications on J2EE Engine.

Page 199: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 199/424

  15

You will see that our application (Calculator ) is deployed but is in a stopped

mode.

1-10  Select the application and choose the “Start Application” option:

Page 200: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 200/424

  16

The “Start Application” dialog box appears. It provides a list of the server

processes on which this application is available.

1-11  Select the server process where the application should be started by selecting the

appropriate checkboxes. You can also use the “Select All” option:

1-12  Choose “OK”.

If the application is started successfully, a green icon will appear on the statusbar

and the application will be marked with a blue check:

1-13  Choose the container option on the screen to assure that the application is

successfully started in the containers of the different server processes:

Page 201: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 201/424

  17

Our application contains both EJBs and Web components and has to be deployed

only on one server process. As can be seen from the screenshot above, the

application is startied both in the web conatainer (servlet_jsp) and in

EJBContainer of one server process. Comparing the server process number with

the one we have selected on step 11, we can see that this is the same server.

Therefore, the deployment has finished successfully.

Setting a Failover Mode

This option enables you to set a failover mode for the application.

2-1 Select the “Calculator” application from the “Deployed Components” list.

2-2 Choose the “App Info” option:

Page 202: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 202/424

  18

2-3 From the “Fail Over Mode” drop-down list, select a mode. The possible values

are:

•  disable – failover is disabled.

•  on_request – the HTTP session is serialized after completing each HTTP

request.

•  on_attribute – the HTTP session is serialized every time an attribute us added,

changed or removed from the HTTP session.

2-4  Choose “OK”.

Removing an Application

3-1 Select the “Calculator” application from the Deployed Components tree.

3-2 Choose “Remove”:

Page 203: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 203/424

Page 204: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 204/424

1

© SAP AG 2004, Java Engine Administration

Course: SAP J ava Engine Adm inis t rat ion

1. Web AS Standalone Java Installation

2. Java Startup & Control Framework

3. Web AS Java Administration Tools Overview

4. SAP Java Administration

5. SAP Web Infrastructure

Units:

Page 205: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 205/424

2

© SAP AG 2004, Java Engine Administration

Uni t : SAP Java Admin is t ra t ion

Java Engine Administration

Configure different system services

Web AS Java Backup & Recovery

J2EE Engine Configuration and Tuning

Lessons:

Page 206: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 206/424

Page 207: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 207/424

4

© SAP AG 2004, Java Engine Administration

After completing this lesson, you will be able to:

Point out the basic J2EE Engine components andtheir role in the system

Work with their main properties and runtime GUIs

Differentiate and work with the J2EE Engine coresystem components

Differentiate the J2EE Engine basic services

Explain the main functionality and features of each

service and handle its properties and runtime GUIs

J ava Engine Administ rat ion: Lesson Objec t i ves

Page 208: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 208/424

Page 209: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 209/424

6

Server Process

The server processes of the J2EE Engine actually execute the J2EE application. Eachserver process is multi-threaded, and can therefore process a large number ofrequests simultaneously. Java Dispatcher assigns requests to the server processes.

The server process consists of the following components: Some of these are the sameas in the Dispatcher.

• Communication handler

• Session level services

• Application-level services or the actual application program

Java Dispatcher

The Java dispatcher receives the client request and forwards it to the server processwith the lowest capacity usage. If there is already a connection to the client, therequest goes to the server process that processes this client.

© SAP AG 2004, Java Engine Administration

Java Ins tanc e

A Java instance is a unit in the SAP Web AS Java cluster, which

can be started, stopped, and monitored separately. It runs on aphysical server; but it is also possible to run several instances on

one server. An instance is identified by the system ID (SID) andthe instance number.

Structure

A Java instance contains at least one Server Process, but

normally it comprises one Java Dispatcher and several serverprocesses.

A Java instance is started and stopped by the Java Startup and

Control Framework.

Page 210: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 210/424

7

Managers simplify the administration of the Java Virtual Machine, using thread management or memorymanagement. The Managers don’t have runtime administration and administration require process restart.

Monitoring the Managers is done vie the Monitoring capabilities of the server.J2EE Engine Components

Built on top of the runtime and being able to communicate and use each other, these components form the completesystem infrastructure to run both J2EE and SAP proprietary applications.

Three types of J2EE Engine components are defined:

• Interfaces – you can think of them as “contracts” that define how different components of the system worktogether. Those components do not provide any runtime functions. At runtime, they provide the system with theirname and classes (no objects). They are used by services components that provide their implementation.Interface components can also be implemented directly by applications.

• Libraries – they provide name, classes and objects to the system. These objects are created by the system whenit loads the library, or when an object is first requested. Other library components or services components usuallyaccess them using static methods.

Services – they are more powerful than the previous two types of components. They provide the system with their

name, classes and runtime objects. The runtime objects are registered on the system once the componentsclasses have been loaded. Service components can access and utilize functions of the runtime through theFramework API. Some of the services support runtime administration and have runtime view in the Administrationconsole. Some services run only on the dispatcher or the server, some run on both procesess.

Applications

The applications form the third level of the J2EE Engine architecture. The boundary between the applications leveland the J2EE Engine components level is defined by the J2EE 1.3 APIs along with a few SAP proprietary APIs.Applications use them to utilize the functions of the different types of components on the lower level in thesystem.

The SAP Enterprise Portal for example is a J2EE Application.

© SAP AG 2004, Java Engine Administration

Web AS Java - System Arch i t ec t ure

Java Engine logical layers:

1. Java Enterprise Runtime  –comprises low-level subsystems that

provide functions such as classloading, cluster communication,

persistent configuration data

management. The layer is built ofseveral low-level subsystems calledManagers.

2. J2EE Engine Components  – consists

of interfaces, libraries and servicescomponents that provide various

runtime functions and programming

APIs.

3. Applications  – refers to theapplications that are deployed and

run on the Java Engine.

       S      t     a     r      t     u     p

     o     r      d     e     r

Page 211: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 211/424

8

J2EE Engine Services

J2EE Engine Managers

Introduction

Page 212: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 212/424

9

A thread is a thread of execution in a program. The Java Virtual Machine allows anapplication to have multiple threads of execution running concurrently. Every thread has a

priority. Threads with higher priority are executed in preference to threads with lower priority.

The J2EE Engine thread system is responsible for handling system and client threads. It

comprises two managers – Thread Manager and Application Thread Manager. All threads in

which J2EE Engine system operations are executed (core, services, and so on) use system

threads supplied by the Thread Manager. Application Thread Manager supplies the threadsin which the client application’s code is executed. When an HTTP request reaches the J2EE

Engine, an application thread receives it.

The separation of the thread system into application and system thread pools enables the

J2EE Engine to sustain greater system load without disrupting its normal work.

Application Thread Manager - When a client request comes, the system tries to find a free

thread in the Application Thread Manager and to assign the execution of the request to this

thread. If no free thread is available, the thread system queues the request in a requestqueue.

Thread Manager - The logic is similar to the application logic – the system uses a queue for

system requests if a free thread is not available.

Monitoring the Thread System Managers is done through the Monitoring APIs of the Web ASServer.

© SAP AG 2004, Java Engine Administration

T hr ead Sys tem

Handles systemactivities such asmaking backup,background jobs,optimizations forload/store data.

ThreadManager

Handlesclient/applicationrequests.

ApplicationThread

Manager

The Java Engine thread system is responsible for handling

system and client threads. It comprises two managers – Thread 

Manager and Application Thread Manager .

Page 213: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 213/424

10

© SAP AG 2004, Java Engine Administration

Conf igur ing t he Thread System 1/2

Change the maximum number of threadsthat the Thread Manager will manage.

MaxThreadCount

Sets the absolute minimum number of thethreads in the Thread Manager’s pool.

MinThreadCount

Changes the step size of the thread pool.ChangeThreadCountStep

Sets the initial size of the thread pool.InitialThreadCount

Configuring the Thread Pool 

InitialThreadCount - Specifies the number of threads that will be started during the

initialization of the Thread Manager. ChangeThreadCountStep - If the current number of running threads is not sufficient,

this number of threads will be raised or destroyed during the next resize of theThread Pool.

MaxThreadCount - This limit is necessary to avoid overload due to too many runningthreads.

MinThreadCount - Even if the Java Engine has absolutely no requests, this will bethe minimum number of threads that will be kept running/idle.

Page 214: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 214/424

11

© SAP AG 2004, Java Engine Administration

Conf igur ing t he Thread System 2/2

Change the maximum size of the RequestQueue.

MaxRQSize

Set the minimum size of the RequestQueue.

MinRQSize

Change the resize step of the RequestQueue.

ChangeRQSizeStep

Set the initial size of waiting objects in the

Request Queue.

InitialRQSize

Configuring the Request Queue 

InitialRQSize - This is a structure that holds the requests to start a thread, until a free

thread is available and able to process the request. ChangeRQSizeStep - This approach eliminates the number of small resizes by

making one big resize.

MaxRQSize - This property can be used to avoid infinite wait.

MinRQSize - Set the minimum size of the Request Queue.

Page 215: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 215/424

12

Two types of references are available: component and application. Each type has a different way forregistering references.

Modifying Component References 

You can register references at runtime using the Configuration Adapter service in the J2EE Engine VisualAdministrator.

1. Choose Server -> Services -> Configuration Adapter Runtime -> Display Configuration tab.

2. Choose the Edit mode option.

3. Select cluster_data -> server/dispatcher -> cfg -> ext/interfaces/service -> <component_name>-provider.xml.In the dialog box that appears, modify the component references.

4. Choose OK to save changes. Then restart the corresponding cluster element.Note: this procedure is only available if you are administrator of the system.

Modifying Application References 

The deployed applications have a set of default references to services, libraries and interfaces that areloaded each time the application is started. You can add, edit and remove these references at runtimethrough Telnet using the CHANGE_REF shell command.

Weak Reference - component A sets weak reference to component B if it needs to use classes of B.

Strong Reference - component A sets strong reference to component B if it needs to use classes andruntime objects that B provides.

Hard Reference -  is equal to the “Strong Reference ” type, however, “Hard Reference ” is deprecated!

© SAP AG 2004, Java Engine Administration

ClassLoader Manager  

The ClassLoader Manager is the central instance for registering,removing and accessing loaders and references between them.

It registers the loaders of all components and applications in the J2EEEngine.

The references are used by the Service Manager to manage thecomponent’s startup order and integrity.

Available reference types:

notify

weak

hard

strong

Page 216: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 216/424

13

There are two different cluster element types – dispatcher and server. These elements

can be organized in groups according to their GroupID.Configuring Cluster Elements 

Modify the required property values depending on the tasks you want to perform:

element.clusterId - The ID is unique for the cluster. The value of this property mustbe greater than zero.

element.groupId  - The value of this property must be greater than zero.

element.joinPort  - The port value must not be: greater than 65535, less than 1024,or a “well known” port.

This property is available only on servers. element.name - There are no restrictions about the name.

element.type - Specifies the type of the cluster element – server or dispatcher.

Choose Save Properties icon on the toolbar to save your changes.

© SAP AG 2004, Java Engine Administration

Clust er Manager  

The Cluster Manager is responsible for handling the elements in the cluster. Itupdates the information about the status of each cluster element and the servicesrunning on it.

You can use the Cluster Manager to configure the properties of each element inthe cluster.

Specifies the type of the cluster element –server or dispatcher.

element.type 

Specifies the name of the cluster element.element.name 

Specifies the port on which the serverprocess listens for connections.

element.joinPort 

Specifies the group ID of the element.element.groupId 

Specifies the identification number of the

cluster element.element.clusterId 

Page 217: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 217/424

14

Connections Manipulator provides threads in which the processing of the received requests, their transfer

from the dispatcher to the server, and the return of the response back to the user is accomplished.

The Connections Manipulation Manager runs in the following modes:

• Mode 1 - there are N number of client requests and N threads are waiting to read information from the

client connections. Each connection is processed by one thread until the value specified in theMaxSoTimeOutConnections property is reached.

• Mode 2 - the number of client connections is bigger than the number of the threads. In this case acommon time (t) for all threads is defined, which determines the milliseconds during which each thread

must wait for data in a particular client connection. After this time the thread moves to the next freeconnection (the connection in which there is no thread).

• Mode 3 - the thread spends more time taking the next free connection than the time it spent waiting inthe previous one. In such cases, the J2EE Engine starts working in a busy read mode. The time for

reading is switched off and waiting in the connection is substituted with a check whether there is datain the connection. If there is data, it is processed; if there is no data, the thread passes to the nextconnection.

The Connection Manipulator switches automatically between the working modes when the boundarymarks are reached. The mode can be monitored using the server monitoring capabilities.

Refer to the Web AS Documentation for more information.

The Connections Manipulator properties can be monitored through the monitoring service of the Web AS.

© SAP AG 2004, Java Engine Administration

Connec t ions Manipula to r  

Connections Manipulator manages the client connections in the

cluster.

Specifies the minimum value of sockettimeout in milliseconds.

MinSoTimeOut

Specifies the maximum number of

checks one thread can make to one

connection before going to a “sleep”mode.

MaxThreadRepeatCount

The number of connections, after whichthe system starts working in Mode 2.

MaxSoTimeOutConnections

Specifies the maximum time for reading

the data from a socket.

MaxSoTimeOut

Specifies the maximum number of

connections for Mode 2.

MaxRepeatConnections

Defines the number of users that can be

processed in parallel. When this numberis exceeded the users are rejected.

MaxParallelUsers

Page 218: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 218/424

15

Hosts File 

If the file specified as a value for the HostsFileName property is missing, the system creates defaulthosts.txt files in the ../dispatcher/cfg/kernel and ../server/cfg/kernel directories. The contents of the

generated files are: allow = *.*.*.*The content of the hosts file must be correct. Each line of this text file must have the following syntax:

allow / deny= hostIP / hostRange / mask [, port [ , protocol]] 

These components have the following semantics:

A line beginning with the # sign is not interpreted. This denotes a comment line.

mode specifies if the host (or range of hosts) on this line is allowed or denied

hostIp represents one or more IP addresses

hostRange is a single number or a range of numbers. Range of numbers are two numbers divided with“–".

number is a positive integer number (0 – 255)

mask is a subnet mask. Bitewise and operation is calculated between the given IP (range of IPs) andthe mask.

port is a positive integer number. A range of ports can be specified using the “–" sign

protocoldefines the used protocol. Possible values are tcp, udp and * (both)

The name and allocation of the Hosts File is specified in the HostsFileName property. The file iscreated, or must exist, in the corresponding ../dispatcher or ../server directory.

The IpVerification Manager enables many resources to share the common configuration file for easiermanagement.

© SAP AG 2004, Java Engine Administration

I pVer if i ca t ion Manager  

The IP Verification manager controls the access of IP

addresses to cluster elements. It stands between an incomingrequest and the requested resource.

IpVerification Manager advantages:

Hosts File  Contains a list of allowed and denied IP addresses.

Users in the allow list will connect to the resource without

noticing any peculiarities.

Users in the deny list will never receive any (additional)

information as to why their connections failed.

The client establishing the connection is unaware that the

manager is running.

Page 219: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 219/424

16

Setting Service Load Timeout 

1. From the list of properties, select LoadTimeout.2. In the Value field, set the required timeout in minutes.

3. Choose the Save Properties icon from the toolbar to save the changes.

Setting Event Timeout 

1. From the list of properties, select the EventTimeout.

2. In the Value field, set the required timeout in minutes.

3. Choose the Save Properties icon from the toolbar to save the changes.

The Service Manager is a distributed module that runs on both servers and dispatchers.

© SAP AG 2004, Java Engine Administration

Serv ice Manager  

The Service Manager acts as a container in which all

services in the cluster work.

The Service Manager defines the main controlimplementation for each service through which the

administration of a separate service is accomplished.

The time the Service Manager waits for

the event to be processed beforeundertaking another action.

Event timeout

The maximum time for which oneservice has to be started.

Load timeout

Page 220: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 220/424

17

J2EE Engine Services

J2EE Engine Managers

Introduction

Page 221: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 221/424

18

Administration Services

Web Container

EJB Container

JNDI Registry Service

Transactions and Resource Handling

Deploy Service

JCo RFC Provider Service

JMS Provider Service

Remote Objects Communication Services

ClassLoader Viewer Service

Configuration Adapter Service

Page 222: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 222/424

19

Basic Administration Service -  Registers MBeans that can be used for managing a single cluster node or thewhole cluster.

Administration Adapter Service -  These interfaces can be used to invoke operations on the MBeans. They alsoprovide methods for cluster administration and for viewing all registered MBeans.

JMX Adapter Service properties:

DefaultDomain – value for the MBeanServer default domain

MessageTimeout – timeout for synchronous requests sent to an MBeanServer on a remote cluster node (inmilliseconds)

[NotificationQueue] – Within the J2EE Engine JMX notifications are usually sent asynchronously. Thenotifications are queued and get processed by several worker-threads.

NotificationQueueMaxThreads – maximum number of worker-threads that process the notification queue

NotificationQueueEngTimeout – timeout for adding a new item to the notification queue (in milliseconds)

NotificationQueueThreadThreshold – number of notification queue items that cause the creation of a new worker-thread

[ObjectNameCompletion] – JMX ObjectNames have to meet certain conventions. There is a factory whichsupports the creation of ObjectNames that include the necessary location information. The factory uses a cacheto optimize the naming process.

ObjectNameCompletionCacheMinSize – initial cache size for ObjectName completion

ObjectNameCompletionCacheMaxSize – maximum cache size for ObjectName completion

Additional Administration Services which provide different types of administration:

Shell Administration Service – provides console administration using shell commands.

Telnet Provider Service – provides remote administration using the Telnet protocol. The administration is doneusing shell commands.

© SAP AG 2004, Java Engine Administration

Admin is t ra t ion Serv ices

Provides notifications for events connected withthe MBeans.

JMX Notification Service 

Manages the configuration and lifecycle of the

MBeanServer and provides access to it for

applications, services, and libraries.

JMX Adapter Service 

Provides a remote connector to the MBean serverbased on RMI/P4 and convenient interfaces for

working with the MBeans registered by the Basic

Administration Service.

Administration Adapter Service 

Provides instrumentation of the kernel and the

server components (services, libraries andinterfaces).

Basic Administration 

Service 

The Web AS Java administration is based on the Java 

Management Extensions (JMX) 1.1.

Services which provide a means for working with MBeans :

Page 223: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 223/424

20

Administration Services

Web Container

EJB Container

JNDI Registry Service

Transactions and Resource Handling

Deploy Service

JCo RFC Provider Service

JMS Provider Service

Remote Objects Communication Services

ClassLoader Viewer Service

Configuration Adapter Service

Page 224: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 224/424

21

HTTP Provider Service implements Hypertext Transfer Protocol (HTTP) version 1.1 (specified by RFC

#2616).

HTTP Provider Service runs on both dispatcher and server nodes. That allows for using load balancingalgorithms and fast requests processing.

From a client’s point of view, HTTP Provider Service represents a server socket that listens for clientHTTP connections to the Java Engine.

HTTP is a request-response protocol. Based on that paradigm, HTTP Provider Service takes care ofparsing the URL of the incoming HTTP requests, dispatching them to the proper SAP WebAS Java

Engine’s module for processing, and returning the generated responses back to the client. It providesimportant features to secure a robust, high performance communication infrastructure for running high-volume business Web applications.

The heterogeneous load balancing is an important function when you run distributed applications in a

cluster environment. It gives the opportunity to run an application on a few cluster nodes, thisguaranties that the client request to that application is dispatched to the correct server where theapplication is available.

© SAP AG 2004, Java Engine Administration

HTTP Provider Servic e

HTTP Provider Service provides the low-level communication andtransportation services for the Web AS Java - Web Container towork properly.

Features of the HTTP Provider Service :

Supports communication through proxy environment

Supports multipart requests parsing

Integrated mechanism for heterogeneous load balancing for requeststo web applications

Supports virtual hosting

Supports applying gzip transfer encoding to requests and responsesto static Web resources

Provides efficient configurable HTTP cache

Page 225: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 225/424

22

You can perform the following tasks with the HTTP Provider Service running on the Java

Dispatcher:

• Configuring Heterogeneous Load Balancing

• Setting up HTTP Provider Service to Accept Incoming Requests

• Mapping Ports

• Tracing HTTP Requests

• Setting Timeout for Persistent Connections

• Limiting the Length of the Requests Headers

© SAP AG 2004, Java Engine Administration

HTTP Prov ider Serv ice on Java D ispatc her

Page 226: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 226/424

Page 227: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 227/424

24

Task and the properties of the service:

• Response Chunking – use the EnableChunkedResponse property - applies chunked transfer encoding(defined by HTTP 1.1 specification) to dynamically generated responses that are sent back to theclient. It is an important feature when transferring responses with large message bodies.

• Specifying Compilation Time of JavaServer Pages – use the CompileOnStartUp property - Configuresthe Web Container Service behavior concerning compiling JSP files of your web applications intoservlet implementation classes.

• Specifying Servlet Execution Destroy Timeout – use the DestroyTimeOut property

• Setting up the Compiler – use the Internal Compiler property or the External Compiler propertydepending on type of compiler you want to use

• Configuring the Header Preventing Dynamic Responses Compression – use theHeaderForNoCompression and HeaderForCompression properties

• Configuring the Name of the Multipart Body Request Attribute – use the MultipartBodyParameterName property

• Delaying User Authentication – use the DelayAuthentication property

• Providing Custom Response Messages When Requesting Stopped Applications – use theApplicationStoppedFile property

• Isolating Running Web Applications from Productive Client Requests – use theApplicationStoppedAliases  property

Using Telnet you can list the HTTP sessions and the security policy domains in all running applications ofthe Web Container.

Strong reference - If the referenced service stops for some reason, the correspondent services stops aswell.

© SAP AG 2004, Java Engine Administration

Web Contain er Servic e

The Web Container service is an implementation of a container of

J2EE Web components.

The Web Container service:  Enables the life cycle management of Web applications

Helps developing and running session-aware and security-awareWeb applications.

Complies with Java Servlet 2.3 Specification and JavaServer Pages

1.2 Specification.

Integration of the Web Container service: 

The Web Container service has a strong reference to the HTTPProvider Service.

Runs only on server processes.

Page 228: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 228/424

25

The Runtime screen of Web Container service provides information and means of administration of all

applications deployed on the J2EE Engine. It contains:

• Global Web Descriptor – defines initial settings, which are relevant to all web applications runningwithin the Web Container. It is XML based and its DTD is equivalent to that of the web.xml , and the

web-j2ee-engine.xml deployment descriptors of the web application.

• Deployed applications – each application is defined and configured using the web.xml and web-j2ee- engine.xml deployment descriptors. Those configuration settings have greater priority over the globalsettings of the global-web.xml .

Viewing Web Application Components via Runtime Screen 

To view the Global Web Descriptor or to change the deployed web application settings, select the

component and choose “View”.

Displaying Servlets and Filters 

When selecting a servlet or filter, the displayed screen contains the following information:

• Name and class of the component

• Initial parameters

• Mappings

• Security settings

© SAP AG 2004, Java Engine Administration

Runt im e Admin is t ra t ion o f Web App l ica t ions

Page 229: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 229/424

26

Administration Services

Web Container

EJB Container

JNDI Registry Service

Transactions and Resource Handling

Deploy Service

JCo RFC Provider Service

JMS Provider Service

Remote Objects Communication Services

ClassLoader Viewer Service

Configuration Adapter Service

Page 230: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 230/424

27

You can use the EJB Container Service to: 

View and/or store in files information about all enterprise beans, their JAR files and applications

Change at runtime the properties of the deployed enterprise beans

Generate persistent.xml for the container-managed entity beans to be deployed

Create database tables for container-managed entity beans

Enable IIOP Support for EJB Applications - The EJB 2.0 specification defines a standardinteroperability protocol with which the applications deployed on different vendors’ application servers

can effectively communicate with each other. This protocol is based on CORBA/IIOP.During the typical application deployment procedure, the EJB Container generates only P4 support. Toenable the IIOP support, use the runtime tab of the EJB Container service, select the desired

application and choose the “Deploy IIOP Support” option.

© SAP AG 2004, Java Engine Administration

EJB Conta iner Serv ice

The EJB Container Service manages all enterprise bean instancesdeployed on the server.

The EJB Container Service provides all services that are required by anEJB application:

Transaction and security management

Clustering

Persistence

Network distribution of remote clients

Scalable management of resources

and so on…

The service provides options for runtime administration of the enterprise

beans running on the J2EE Engine EJB Container .

The EJB Container service runs only on server processes.

Page 231: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 231/424

28

By selecting an enterprise bean, you can modify some of its properties at runtime.For all types of Enterprise Beans you can change: 

Description - description of the bean and its functions

Display Name - A short name for the bean. This name is displayed by tools.

JNDI Name - The name under which the bean must be registered in the JNDI and by which it can be looked up.

Container Size - The initial size of the EJB Container when the bean is loaded.

For Stateful Session Beans: 

Session Timeout - The period (in seconds) since the session was last used, after which the EJB Container maydestroy it.

For Entity Beans: 

Reentrance - Specifies whether the entity bean is reentrant or not.

For Message-Driven Beans: 

Connection Factory Name - The name of the connection factory, which will be used by the EJB Container toobtain connections in order to register the bean as a message listener.

Destination Name - The name of the Topic or the Queue to which the bean wants to be subscribed.

Message Selector - The JMS message selector, which will be used to determine the messages that the bean willreceive.

Destination Type - The type of the destination – Topic or Queue.

Subscription Durability - Defines whether the JMS topic subscription is intended to be durable or nondurable.

Acknowledge Mode - Defines the message acknowledgment semantics that should be used for the onMessagemessage if the message-driven bean uses bean-managed transaction demarcation.

© SAP AG 2004, Java Engine Administration

Runt ime Changes in Deployed Enterpr ise Beans

The Runtime tab of the EJB Container service displays a tree structure of

all EJB applications that are deployed on the server.

Page 232: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 232/424

29

Administration Services

Web Container

EJB Container

JNDI Registry Service

Transactions and Resource Handling

Deploy Service

JCo RFC Provider Service

JMS Provider Service

Remote Objects Communication Services

ClassLoader Viewer Service

Configuration Adapter Service

Page 233: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 233/424

30

The SAP J2EE Engine naming system is developed in accordance with the JNDI 1.2 Specification to

meet the Java 2 Enterprise Edition (J2EE) requirements. The system provides functions based on the

JNDI 1.2 Specification, as well as some additional features related to its work in a cluster.

© SAP AG 2004, Java Engine Administration

J NDI Regist ry Serv ic e

JNDI Registry Service  provides a way by which names are

associated with objects, and objects are found based on theirnames. The service performs binding, rebinding, and unbinding

operations.

JNDI Registry Service basic concepts:

Operations are provided, through which can be associatenot only an object with a specified name, but also with

specified attributes.

Directory 

concepts 

Associating an object with a particular name as binding it

in the J2EE Engine naming system. Once the object isbound, it can be accessed through the lookup operationsand through the operations for working with names

(rename, rebind, unbind).

Naming concepts 

Page 234: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 234/424

31

Information collection – As long as the data is stored into an nonresistance storage, rebooting the J2EE

Engine ensures that all stored objects will be removed from the naming system.

Tree-like structure –  The client gets an abstraction called “root context”, which is the starting point for allfollowing operations in the naming system.

Global objects – The global operations in all servers’ naming systems objects appear with the same nameand data. These (global) objects can be accessed from all over the cluster.

Non-serializable objects - The service provides an opportunity for non-serializable objects also to bebound in the naming system, but their data is kept on the client side and they are available only to the

client that has bound them.

Additional Features 

Redirection – Each remote client is using the JNDI Registry service of one of the server processes inthe cluster through a context instance. This instance is connected to the naming system of this server

process and all naming operations are performed there. In case this server process goes down, thenext naming operation will be directed to another server process for procession.

Load balancing – The JNDI Registry service uses the P4 Provider service to make the connectionbetween the client side and one of the servers in the cluster. This server is chosen with the load

balancing mechanism of the P4 Provider service.

© SAP AG 2004, Java Engine Administration

J NDI Regist ry Serv ice Speci f ic Features

All bindings in the naming system consist of an

object name, serialized object data, and attributes (if

provided). Only serializable objects can be kept in thenaming storage.

Non- 

serializable 

objects 

The JNDI Registry service enables each naming

operation to be replicated in the cluster – the socalled global operations.

Global objects 

The naming contexts and objects are arranged in ahierarchy. In every context object can be placed

bindings or other contexts called sub-contexts.

Tree-like structure 

The JNDI Registry service stores the data in a

nonpersistent storage (the data is stored in the

memory).

Information collection 

Page 235: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 235/424

32

The JNDI Registry service provides a GUI which helps you to monitor the naming tree and to check the

bound objects at runtime. If you have bound an object to the naming system, you can check if this

object is bound successfully. You can also monitor the available naming system contexts. Theinformation displayed can be easily exported to a file.

To access the runtime GUI, open the Visual Administrator tool and choose Cluster -> Server -> JNDI

Registry Service -> Browser.

The bound objects and the available contexts are listed in a tree view:

The blue objects represent the available contexts

The red objects represent the bound objects. Each object is associated with a class name and anobject value. When the object is non-serializable, this is displayed in the [Object Value] sub-node (non-

serializable means that only server-side clients can look it up).

© SAP AG 2004, Java Engine Administration

Brow sing the Naming Tree

Page 236: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 236/424

33

Administration Services

Web Container

EJB Container

JNDI Registry Service

Transactions and Resource Handling

Deploy Service

JCo RFC Provider Service

JMS Provider Service

Remote Objects Communication Services

ClassLoader Viewer Service

Configuration Adapter Service

Page 237: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 237/424

34

The Transactions and Resource Handling component is a system that manages the execution of the

transactions in the Java Engine, transaction propagation to other clients or application servers, as well

as the usage of resources in these transactions.

Integration 

This component defines a uniform way for transaction usage and access to resources. It is used by thecontainer services (EJB Container, Web Container, Application Client) to provide access to resources

for the J2EE application components deployed in them.

Features 

The functions of the Transactions and Resource Handling system are provided by the following J2EEEngine services:

• Transaction Service

• Connector Container Service

• JDBC Connector Service

• JMS Connector Service

The last three services are also part of the J2EE Connector Architecture implementation in the J2EE

Engine.

© SAP AG 2004, Java Engine Administration

Transact ions and Resource Handl ing

The Transactions and Resource Handling component enables theexecution of local and distributed transactions and the usage of resourceswithin these transactions.

The Transactions and Resource Handling enables the Java Engine to: Work in a distributed environment to provide scalability and increased

performance.

Access other resource systems, such as databases, Java Message Service(JMS) providers, and Enterprise Information Systems (EIS).

Transactions and Resource Handling services:

Enables the use of JMS resources in both localand distributed transactions.

JMS Connector Service

Enables databases connectivity and providesfunctions for creating and managing DataSourceobjects.

JDBC Connector Service

Manages the overall connectivity to back-endresource systems.

Connector Container

Service

Manages all transactions on the SAP J2EEEngine server elements.

Transaction Service

Page 238: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 238/424

35

Features 

With the implementation of both JTA and JTS, Transaction Service offers a broad range of functionsregarding transaction execution on J2EE Engine. Among them are:

Support for distributed transactions – in a clustered environment distributed transactions are a basic

factor for the functioning of the business system

Support for local transactions – this enables local transaction optimization, which is defined in the

J2EE 1.3 Specification.

Support for the two-phase commit protocol (2PC) – Transaction Service uses it when completing

distributed transactions to ensure synchronization between them.

Using the functions that Transaction Service provides, you can:

Enable the enlisting of local resource in a propagated transaction – to do this, use the

EnableLocalResourceInOTS property

Manage the transaction timeout – to do this, use the TransactionTimeout property

© SAP AG 2004, Java Engine Administration

Transact ion Service

The Transaction Service component manages all transactions on

the Java Engine server processes.

Modules of the Transaction Service :

Enables management and execution of transactions

from other servers (either J2EE Engine server processesor application servers by other vendors) by providing a

low-level Java mapping of the Object Transaction

Service (OTS) standard by Object Management Group

(OMG).

Java Transaction 

Service (JTS) 

Enables communication between the managing modulesof the service, the application server and the other

components that participate in a distributed transaction(the application components and resource managers).

Java Transaction API (JTA) 

Page 239: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 239/424

36

The adapters are modules that are deployed on a J2EE compatible application server and provide unified

access to the resource system for any application components that are also installed on the server.

Implementation You can use the Connector Architecture implementation in the J2EE Engine to access any back-end

system from your application. For example, you can easily connect your entity enterprise bean to arelational database using a DataSource created with the JDBC Connector service, or your message-

driven bean to an external JMS provider using the JMS Connector service.

The Connector Architecture in the J2EE Engine enables:

easy and uniform connectivity to external resources using resource adapters or the interfaces that theconnector services provide.

the deployment of resource archives (RAR files) on the J2EE Engine. It also provides overallconnection management by registering all client requests for connections. The Connector Container

service offers support for connection pooling. You can use the functions this service provides todevelop and deploy a resource adapter following the requirements of the J2EE Connector Architecture1.0 standard.

© SAP AG 2004, Java Engine Administration

J2EE Connector Arc h i tec ture

The J2EE Connector Architecture enables connectivity to back-

end systems such as Enterprise Information Systems (EIS), usingresource adapters.

The Connector Architecture involves integration of threeunderlying mechanisms:

Connection pooling

Transaction management

Security management

The J2EE Connector Architecture comprises services:

Connector Container

JDBC Connector

JMS Connector

Page 240: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 240/424

37

The Connector Container service provides you the possibility to:

• view the configuration of the resource adapters that are deployed and started on the server

• modify the properties of a ManagedConnectionFactory - when a resource adapter is deployed, a

ManagedConnectionFactory (MCF) is configured with a set of specific properties (configurableproperties). You can change their values at runtime using the Connector Container service runtime.

Note: changing the property values may significantly alter the function of the resource adapter, whichmay also affect other applications that use it. Therefore, you must be careful when modifying the MCFproperties.

• modify the loader references - you can use the Connector Container service runtime to change the

reference to the class loader that loads a resource adapter. You can also add loader references toexternal resources that the adapter uses.

• clone the resource adapter - when deploying the resource adapter, you can only register a single MCFinstance. To configure another MCF derived from the same adapter, use the cloning function, available

in the Connector Container service runtime. With this function you create a MCF instance, which youbind in the JNDI registry by a different name and can configure with the appropriate settings for yourapplication. Thus, you do not need to re-deploy the whole resource adapter to create another MCF

configuration.

The resource adapters are deployed on the J2EE Engine similarly to the other J2EE components – enterprise beans, web components, and application clients.

© SAP AG 2004, Java Engine Administration

Connect or Conta iner Serv ice

The Connector Container Service is service manages the overallconnectivity to back-end resource systems. It provides a runtime

environment for resource adapters that enable you to connect toheterogeneous Enterprise Information Systems (EIS).

The Connector Container service :

Implements the J2EE Connector Architecture 1.0

Enables access to various resource systems in a unified way, usingresource adapters.

Enables connection pooling.

Runs only on server processes

Page 241: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 241/424

38

You can check the following settings:

• General – the properties set in the standard ra.xml, such as resource adapter display name,description, vendor name, specification version, EIS type and version. You can also see if a license isrequired for the adapter and if it has been deployed within an application or it is a standalone resource

adapter. The adapter is standalone, if the Is Real Application indicator is not selected.

• Resource Adapter – the connector group and the loader references. These properties are related tothe resource adapter classloading.

• Managed Connection Factory – the configuration of the ManagedConnectionFactory (MCF) thatprovides a ConnectionFactory, which the applications can lookup from the JNDI registry and use toobtain a connection to the EIS. The settings are related to the transaction support and the

authentication mechanism of the MCF, its specific properties, and the ConnectionFactory provided bythe MCF and registered in the JNDI registry.

• Security – you can check the authentication type of the resource adapter and the identity subjectsdefined for it.

• Drivers – you can check if any JDBC drivers have been registered with the resource adapter.

© SAP AG 2004, Java Engine Administration

Connect or Conta iner Runt ime

Page 242: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 242/424

39

Using the JDBC Connector Service, you can:

• Create either JDBC 1.x or JDBC 2.0 compatible DataSource objects• Import and export DataSource objects

• Manage the connection pools

• Manage the transaction isolation levels for the connections

• Manage DataSource aliases

• Deploy and remove JDBC drivers

• Define and un-define JDBC drivers

• Define the type of connections using the SQL Engine

• Initialize your database

• Monitor DataSource objects

© SAP AG 2004, Java Engine Administration

J DBC Connect or Serv ic e

The JDBC Connector Service is a resource adapter based on theJava Database Connectivity (JDBC) standard to enable databases

connectivity. It provides functions for creating and managingDataSource objects, as well as database connection pooling.

JDBC Connector Service enable easy and fast connectivity todatabases by various vendors: Support for both JDBC 1.x and JDBC 2.0 drivers

Connection pooling and re-using

Support for both local and distributed transactions

Database independence using the Database Interface (DBI)

Page 243: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 243/424

40

© SAP AG 2004, Java Engine Administration

J MS Connect or Serv ice

The JMS Connector Service provides connectivity to JavaMessage Service (JMS) systems. It enables the use of JMS

resources in both local and distributed transactions.

The JMS Connector service :

combines the functions defined in the J2EE Connector Architecture

and in the JMS standard as well.

presents the middle tier between the client and the JMS provider.

is implemented as a resource adapter.

As a part of the connector architecture in Java Engine, the JMS Connector Service is closely related to

the Connector Container Service . It processes the requests for connections, manages their allocation,

and handles the resources involved in the transactions.

The JMS Connector Service It enables the client to use the JMS administered objects in anenvironment that also provides transaction and resource handling logic. The JMS Connector Service is

therefore related to the JMS Provider Service in the J2EE Engine as well.

Page 244: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 244/424

41

The functions that JMS Connector Service provides enable you to:

• Register ConnectionFactory objects using either JNDI-based or object-based providers• Register JMS destination objects

• Import and export JMS objects

• Edit JMS objects

• Deploy and remove JMS libraries

• Define and un-define JMS libraries

• Manage connection number

© SAP AG 2004, Java Engine Administration

J MS Connect or Runt im e

Page 245: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 245/424

42

Administration Services

Web Container

EJB Container

JNDI Registry Service

Transactions and Resource Handling

Deploy Service

JCo RFC Provider Service

JMS Provider Service

Remote Objects Communication Services

ClassLoader Viewer Service

Configuration Adapter Service

Page 246: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 246/424

43

The RFC is an SAP interface protocol, which simplifies the programming of communication processes

between systems. The RFCs enable you to call and execute predefined functions in a remote system,

or in the same system.

The JCo RFC Provider Service processes RFC calls from the SAP systems. It dispatches the calls toa stateless session bean, which is registered in the J2EE Engine naming system. By naming

convention the JNDI name used is identical to the name of the SAP function module.

The JCo RFC Provider Service offers two types of connection – though a TCP/IP, and through ashared memory.

RFC Scenario:

1. On startup the JCo RFC Provider Service connects to the Web AS repository.

2. On startup the JCo RFC Provider Service registers itself at the Gateway with a defined name. It ispossible to register it under different names and at different Gateways.

3. The Web AS calls a function for the registered RFC destination.

4. The Gateway forwards the call to the JCo RFC Provider Service.

5. The JCo RFC Provider Service looks in the JNDI for the EJB, which is registered under the function

name.

6. The JCo RFC Provider Service calls the processFunction(JCO.Function) method of the EJB found.

7. The results of that call (the modified JCO.Function) are passed to the Gateway.

8. The Gateway passes the results back to the Web AS.

© SAP AG 2004, Java Engine Administration

J Co RFC Prov ider Serv ice

The JCo RFC Provider service processes RFC requests - ABAP toJava.

A feature is provided for receiving calls from the SAP systems –the J2EE Engine should be registered as an RFC destination.

SAP J2EE Engine

JCo RFC Provider Service

JCO

JNDIContext

EJB

R5 R6

Repository

Gateway Web AS

R

R

R

R1

2

4

7

R

3

R

8

Page 247: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 247/424

44

1. In the JCo RFC Provider use the RFC destination pane to specify the destinations parameters:

a. Choose the Program ID field and enter the program ID of the JCO server which is configured at the

gateway service.b. In the Gateway host field, specify the host of the gateway, through which the requests are passed.

c. In the Gateway service field, enter the gateway service that will receive requests for handling JCOfunctions.

d. Choose the Number of processes (1 to 20) field and specify the number of JCO Servers simultaneouslyrunning with the same Program ID.

2. Use the Repository pane to define the repository parameters:

a. In the Application server host field, specify the host of the SAP Web AS for the repository.

b. In the System number field, enter the system number for the client connection to the repository.

c. Choose the Client field to specify the client used to connect to the repository.

d. Choose the Language field and specify the language for the specific connection (for example – En ).e. Choose the User field and enter the user name for the client connection to the repository.

f. In the Password field, enter the user password for the client connection to the repository.

3. Select the Local bundle indicator, if you want the bundle to run only on the current cluster element.

4. Use the Unicode indicator, if you want to use a Unicode mode.

5. Add the destination as a bundle.

6. After the RFC destination is registered along with the defined repository, choose Set in the bottom of

the right-hand pane to add it as a new bundle.

© SAP AG 2004, Java Engine Administration

Regist er ing a Dest i nat ion

Page 248: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 248/424

45

Administration Services

Web Container

EJB Container

JNDI Registry Service

Transactions and Resource Handling

Deploy Service

JCo RFC Provider Service

JMS Provider Service

Remote Objects Communication Services

ClassLoader Viewer Service

Configuration Adapter Service

Page 249: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 249/424

46

The JMS Provider Service is the administration service of the Java Message Service (JMS), than the JMSConnector Service which is rather a resource adapter and provides connectivity to Java Message Service(JMS) systems.

The JMS Provider has the following configuration properties:

• agentThreadCount – The maximum number of threads that can work simultaneously to delivermessages to the destinations.

• cleanUpServiceSleepInterval – The time interval in milliseconds after which the Clean Up service iscalled.

• messageExpirationDelta – Removes all expired messages before (currentTime – messageExpirationDelta). The time interval is in milliseconds.

• clientMemorySize – The total amount of memory the client can distribute in the buffer.

• clientConsumerBuffer – The size of the buffer the client can use.

• countLimitInMasterQueue – The limit of the number of messages in the master queue.

• sizeLimitInMasterQueue – The total size of the messages in the master queue.

• fetchSizeOnStartupInMasterQueue – The number of messages that are loaded at startup of adestination.

• maxFetchSizeInMasterQueue – The maximum size of the loaded messages at startup of a destination.

• transactionStorePath – Defines the directory with enough free space where the transactions are to bewritten.

Note: Each working destination (the one with at least one producer/consumer) may take up tosizeLimitInMasterQueue bytes, which means that you should ensure that N * sizeLimitInMasterQueue(where N is the number of expected working destinations) does not exceed the virtual machine heapsize.

© SAP AG 2004, Java Engine Administration

J MS Provider Servic e

The JMS Provider Service enables you to manage the JMSdestinations and connection factories on J2EE Engine.

The JMS Provider Service provides functions to:

Manage Instances.

Manage Topics and Queues.

Manage JMS Connection Factories.

It runs on both the server and dispatcher processes.

Page 250: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 250/424

47

Administration Services

Web Container

EJB Container

JNDI Registry Service

Transactions and Resource Handling

Deploy Service

JCo RFC Provider Service

JMS Provider Service

Remote Objects Communication Services

ClassLoader Viewer Service

Configuration Adapter Service

Page 251: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 251/424

48

The P4 Provider Service dispatcher part uses the Load Balancing mechanism to dispatch the requests.

Customization of the P4 Provider Service by:• Managing the underlying transport layers:

If you want to use P4 :

• with no underlying transport layer – assign value to the port property

• over HTTP Tunneling – assign value to the httptunneling property

• over SSL – assign value to the ssl property

• over secure HTTP – assign value to the https property

• Allowing access to a host – use the bindHost property

• Limiting the size of P4 requests – use the MaxRequestSize property

• Determining how is the communication between remote objects in a single JVM conducted – use the

Instantiate Local Stubs property

The service also provides runtime information about active remote objects and brokers.

© SAP AG 2004, Java Engine Administration

P4 Provider Servic e

The P4 Provider Service provides the implementation of the SAP

specific P4 protocol for communication between Java remoteobjects. This protocol is an alternative of the standard Java RMI

protocol for Java-to-Java remote communication.

It runs on both the server and dispatcher processes.

Contains the implementation of the

P4RemoteObject broker and is responsiblefor executing methods on the

implementation of the remote object andreturning the results.

P4 Provider Service -server processes part

Accepts requests from the remote clients

and dispatches them to the appropriatecluster element, where the implementation

of the remote object resides.

P4 Provider Service -dispatcher processespart

Page 252: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 252/424

49

The IIOP Provider Service - dispatcher part uses the Load Balancing mechanism to dispatch the

requests.

The service provides the following properties to be configured:

• port  – specifies the port on which SAP J2EE Engine listens for IIOP connections

• ssl_socket  – specifies the port on which the server socket for SSL connections is opened

© SAP AG 2004, Java Engine Administration

I IOP Provider Servic e

IIOP Provider Service provides an implementation of the standard

Internet Inter-ORB Protocol (IIOP) used for interoperability betweenCORBA and Java objects. It is also capable of serving Java-to-Java

remote objects communication.

It runs on both the server and dispatcher processes.

Provides the parameters of the remote call to

the actual method of the implementation ofthe remote object and returning the results ofthe method call to the client. This part

contains the implementation of the ORBobject that takes major part in the remoteobjects communication.

IIOP Provider Service -

server processes part

Dispatches the client requests to theappropriate server process where the remote

object resides.

IIOP Provider Service -

dispatcher processespart

Page 253: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 253/424

50

© SAP AG 2004, Java Engine Administration

Rem ote Ob jec t Conta ine r Se rv ice

The Remote Object Container service is a container for the

implementations of the server-side remote objects. It manages thelife-cycle of those objects and provides them with access to the

existing protocols for remote objects communication on the JavaEngine (such as P4 and IIOP protocols).

The service facilitates also the runtime generation ofcommunication support for remote objects (that is, stubs and

skeletons for RMI-P4 objects and stubs and ties for RMI-IIOPobjects).

Page 254: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 254/424

51

Administration Services

Web Container

EJB Container

JNDI Registry Service

Transactions and Resource Handling

Deploy Service

JCo RFC Provider Service

JMS Provider Service

Remote Objects Communication Services

ClassLoader Viewer Service

Configuration Adapter Service

Page 255: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 255/424

52

© SAP AG 2004, Java Engine Administration

ClassLoader V iewer Se rv ice

The class loader references can be viewed easily using the ClassLoader Viewer Service . This service graphically displays the relations betweendifferent loaders on a selected cluster element.

Page 256: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 256/424

53

The ClassLoader Viewer provides a Runtime that enables you to browse easily between the

elements. You can view all registered class loaders and the full path to their resources. The loader’sresources are shown in a tree view on the left-hand side of the Runtime tab, together with their short

names. The class loaders are displayed in a tree view separated in several groups: Interfaces ,Libraries , Services , Applications , and Common (contains a list of common@ <x> sub-nodes, eachrepresenting a different reference cycle).

The references are visualized on the right-hand side of the Runtime tab in the sequence in which theyare loaded. This can be useful, for example, if you are tracing an application (if there are similar

classes in two different JAR files, you can see which one it is loaded from).

1. From the Components tree structure, choose Interfaces , Libraries , Services , Applications , or

Commons .The Application group is available only when there is a deployed application.

2. Choose the required loader from the list:

• A list of resources is displayed under the selected loader. Choose one of the resources.

A pop-up message appears with the full path to the resource.

• The right-hand pane displays the relations between the selected loader and other loaders. The selectedloader is always displayed in the middle of the screen.

The different types of relations are situated as follows: at the top is the parent loader, on the right side areloaders references, and on the left side are its referees. If you choose a reference or a referee, it becomesthe one to be monitored – it is moved to the middle of the screen and its references and referees aredisplayed as described above.

© SAP AG 2004, Java Engine Administration

ClassLoader V iew er Serv ice

The class loader references can be viewed easily using the

ClassLoader Viewer Service . It graphically displays the relationsbetween different loaders on a selected cluster element.

Page 257: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 257/424

54

© SAP AG 2004, Java Engine Administration

You should now be able to:

Point out the basic J2EE Engine components andtheir role in the system

Work with their main properties and runtime GUIs

Differentiate and work with the J2EE Engine coresystem components

Differentiate the J2EE Engine basic services

Explain the main functionality and features of eachservice and handle its properties and runtime GUIs

J 2EE Engine Servic es: Lesson Summ ary

Page 258: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 258/424

55

Appendix – Services index

Page 259: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 259/424

56

© SAP AG 2004, Java Engine Administration

Services:

ABAP communicator

Administration Adapter

Application Client

Application locking (*)

Basic Administration

Classloader Viewer (*)

Classpath Resolver

Configuration Adapter (*)

Connector Container (*)

Deploy (*)

Destinations

Distributed Statistics (*)

EJB container (*)

File transfer

Appe ndix : J 2EE Engine Servic es 1/4

(*) This Service has a Runtime tab 

Page 260: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 260/424

57

© SAP AG 2004, Java Engine Administration

Services:

HTTP Provider (*)

IIOP Provider

Java Mail Client

JCo RFC Provider (*)

JDBC Connector (*)

JMS Connector (*)

JMX Adapter

JMX Notification

JNDI Registry (*)

Key Storage (*)

Licensing Adapter (*)

Locking Adapter

Log Configurator (*)

Appe ndix : J 2EE Engine Servic es 2/4

(*) This Service has a Runtime tab 

Page 261: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 261/424

58

© SAP AG 2004, Java Engine Administration

Services:

LogViewer (*)

Memory Info

Message Info

Monitoring

P4 Provider (*)

Performance Tracing (*)

PMI

Remote Object Container

Runtime Info Provider

SAML

Secure Storage (*)

Security Provider (*)

Session Failover

SLD Data Supplier (*)

Appe ndix : J 2EE Engine Servic es 3/4

(*) This Service has a Runtime tab 

Page 262: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 262/424

59

© SAP AG 2004, Java Engine Administration

Services:

SSL Provider

Tc/eCATTPing/service

Telnet Provider

Timeout

Transaction

TREX Service

UME Provider

USER Storage

Virus Scan Provider (*)

Web Container (*)

Web Dynpro Runtime

Web Services Container (*)

Web Services Security (*)

Appe ndix : J 2EE Engine Servic es 4/4

(*) This Service has a Runtime tab 

Page 263: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 263/424

Page 264: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 264/424

  2

The default http port is Port:50000.

1-2 Edit the Ports property. Change the http port to 50200 (or other).

The value of the Ports property is a list of separate ports’ configurations, each

contained within brackets. For example, the default value of this property contains

two port configurations: (Port:50000,Type:http) and (Port:50001, Type:ssl).

To apply these changes, choose the Save Properties icon on the toolbar.

1-3 Execute the localhost with the new port on your browser to check whether the newport has come into force:

Page 265: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 265/424

  3

You now have basically configured your HTTP Provider service running on the Java

dispatcher to forward incoming HTTP requests to the appropriate server modules (HTTP

Provider service, and Web Container service if the request is directed to a J2EE web

application).

Note: To continue with the next exercises, turn the port value back to Port:50000.

Virtual Hosting

After we have set up the HTTP Provider service running on the Java dispatcher to

accept incoming calls (“Ports” property), you can start configuring virtual host on

your system.

2-1 Open the “Runtime” tab of the HTTP Provider service running on a server

process.

2-2 Choose “New Host” at the upper part of the screen:

Page 266: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 266/424

  4

2-3 Enter the name of the new host and choose “OK”.

Note: The name of the new virtual host must be equal to the IP or the domain

name with which it will be access from outside.

This will create a new host with default settings. You can then set it up differently

by changing the values of some of its properties, set new aliases, root directory,

and so on.

Page 267: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 267/424

  5

Note: You can also use Telnet to create new virtual host. Use the HOST shell

command with its –add option. The command must be executed on the server

process.

Note: The most important thing you have to do after you have created the new

virtual host is to map the new host’s name to an existing IP address in the DNS

server. Now, when you try to access this host via a browser using the host name in

your URL, the host name is resolved to the IP address that you have mapped to it.

2-4 Simulation of virtual host mapping to IP.

Using Notepad open file C:\WINNT\system32\drivers\etc\hosts

add this virtual host to the host file.

Example:

127.0.0.1  testhost

Page 268: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 268/424

  6

after saving this file, test the new (local) virtual hosting.

Call the server with the new host name:

http://testhost:50000/index.html 

Page 269: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 269/424

  7

Defining HTTP Aliases on a Virtual Host

3-1 Choose the virtual host, for which you want to define alias, from the list.

3-2 Choose the Aliases tab:

3-3 Enter the name of the alias and the corresponding path to a directory on the local

file system.

Example: Create a folder G:/test 

Inside create a file myhtml.html

With some content “This is my test page”

Choose “Add”

The name of the alias and the directory path it points to must appear in a list on

the screen.

Page 270: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 270/424

  8

Make sure you choose “Save Properties” to permanently save your changes.

3-4 In the browser, execute http://localhost:50000/test/ to test how the new alias works.

Note: You can also use the HTTP_ALIAS command from the HTTP shell

command group to define new and remove existing aliases with Telnet.

Page 271: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 271/424

  9

Activating and Deactivating Application Aliases

Specify whether or not a Web application is available on a particular virtual host.

You must first have the J2EE Web applications deployed so that their aliases are added to the

list of available application aliases. Then you can decide which one to remove from it.

5-1  Open the “Runtime” tab of the HTTP Provider service running on server process.

5-2 Choose the “Application Aliases” tab for the appropriate virtual host.

5-3 Select or deselect an indicator (for the example, of the Hello alias) under the

Active column:

5-4  Choose “Save Properties”.

Note: You can use the APPLICATION_ALIAScommand with Telnet to activate

or deactivate application aliases on a particular virtual host.

Page 272: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 272/424

  10

Unit 4: SAP Java Administration

Lesson 2: Configure different system services

Topic 2: Exercise for working with the JDBCConnector service

At the conclusion of this exercise, you will be able to:

•  Add drivers for all kinds of databases

•  Add and configure standalone DataSource objects

ABC Limited, a petrochemical company, deployed a new web application

which requires an access to external database via JDBC. As system

administrator, you would like to establish the database connectivity.

Deploying JDBC Drivers

To can create a DataSource, you must first deploy the JDBC driver you want to use. The

J2EE Engine provides support for both JDBC 1.x and JDBC 2.0-compliant drivers.

Note: When you first log on to the system, there is already a defined driver. This is the

system driver used by the Configuration Manager. For the sake of this exercise, we will

deploy the same system driver but under a different name just to show how you can deploy a

driver and then use this driver to create a DataSource. However, in real live you do not need

to deploy the system driver to create to the Max DB which goes by default with the J2EE

Engine. This driver is there by default. But if your DataSource uses another database, you

will have to have this database running and you have to deploy a driver for this database to

connect your DataSource to it.

1-1 Choose Server -> Services -> JDBC Connsector -> Runtime.

1-2 Choose Resources -> Drivers.

1-3 Choose the “Create New Driver or DataSource” icon on the toolbar.

Page 273: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 273/424

  11

1-4 Specify an arbitrary name for your driver entry.

example: myDriver

1-5 Browse to the archive file that contains the classes of the driver. You can choose

more than one files additionally.

The new driver is added to the “Drivers” tree structure:

Page 274: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 274/424

  12

Creating a DataSource with JDBC 1.x Driver

You can use the administration tools that the J2EE Engine provides to create a standalone

DataSource. It is deployed on the server as an application that actually contains only the

deployment descriptor for the DataSource object.

The installation procedure for the J2EE Engine creates a JDBC 1.x compatible DataSource

that is used by the services running on the engine. This DataSource is available immediately

after the JDBC Connector service is started.

If your applications use the system database schema, we recommend that you use the default

DataSource.

However, if you want to use other database schemas, you should create a separate

DataSource for each of them.

2-1 In the Runtime tab of JDBC Connector service, choose Resources -> DataSources.

2-2 Choose the “Create New Driver or DataSource” icon on the toolbar.

Page 275: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 275/424

  13

2-3 Complete the following fields. All required fields are marked with an asterisk (*):

2-3-1 Application Name – specify a name to which the DataSource is associated.

Do not enter the name of an application already deployed on the server.

This leads to re-deployment of the application and data loss.

example: myApplication

2-3-2 Name – specify a unique name for the DataSource. It is used when youlook up the DataSource in the naming. When creating a standalone

DataSource, make sure the name is unique.

example: myDataSource

2-3-3 Aliases – aliases are alternative to the name of the DataSource and enable

the usage of a single DataSource by multiple applications. You can specify

unlimited number of aliases.

example: myDS

2-3-4 Driver Name – choose a 1.x-compatible driver we previously deployed

(myDriver) from the drop-down menu with registered drivers.

2-3-5 JDBC Version – choose 1.x from the drop-down menu

2-3-6 Driver Class – enter the fully Java qualified name of the driver’s main

class.

example: com.sap.dbtech.jdbc.DriverSapDB

Page 276: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 276/424

  14

2-3-7  Database URL – the JDBC URL consists of three parts: a protocol

identifier (always JDBC), a driver identifier (for example, IDB, Oracle,

and so on), and a database identifier (the format is driver specific).

MaxDB URL: jdbc:sapdb://<host name>/<DB name>

example: jdbc:sapdb://localhost/DEV?timeout=0

2-3-8 User – specify the username that you use to log in to the database server

Password – specify the password for your database user

example: User: SAPDEVDB PW: enjoy 

2-4 In the Additional tab manage the connection pooling – JDBC Connector service

offers connection pooling to enable better performance of the system. Re-using

connections is less time- and resource-consuming than creating new ones each

time your application or client sends a request for connection. You can manage

the number of pooled connections, as well as their lifetime to achieve best

performance by your application or client.

Specify the following parameters, if necessary:

2-4-1 Initial Connections – the number of connections that are obtained initially

when the DataSource is created. We recommend that you have a few (1-2)

connections created initially to enable fast connectivity to the database

once your application sends a request for connection.

example: 2

Page 277: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 277/424

  15

2-4-2 Maximum Connections – the number of maximum connections from a

single DataSource that are kept in the pool. If you need to connect multiple

times, or there are many clients working with the database simultaneously,

set a higher value for the number of connections that your pool contains.

example: 30

2-4-3 Maximum Time to Wait for Connection – when the maximum number of 

supported connections is reached and there are no free connections in thepool, the client waits the specified interval to obtain a connection. If the

system does not return a connection to the pool during the interval, you get

an exception thrown.

2-4-4 Expiration – enables the parameters for connection life control – that is,

Connection Lifetime and Cleanup Thread.

2-4-5 Connection Lifetime – a period in seconds, after which the connection

expires if it is not in use

2-4-6 Cleanup Thread – an interval in seconds between two consecutive threads

run by the system to clean up unused connections

Page 278: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 278/424

  16

2-5  Set the SQL type support:

Page 279: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 279/424

  17

2-6 To save your entries, choose the “Save Changes” icon on the toolbar.

The new DataSource appears on the screen:

DataSource with JDBC 2.0 Driver

The process of creating a DataSource with JDBC 2.0 driver is quite similar, however you first

have to deploy a JDBC 2.0 compatible driver. Then, when creating a DataSource, you will be

prompted to enter the classname of the DataSource object factory, the DataSource Type

(ConnectionPoolDataSource or XADataSource), and depending on the DataSouorce type,

specify the name of the ConnectionPoolDataSource or of the XADataSource class used to

provide a database connection. In the Additional tab you then can specify, for example,

ServerName, PortNumber, DatabaseName, User, and password as additional properties.

Page 280: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 280/424

  18

Unit 4: SAP Java Administration

Lesson 2: Configure different system services

Topic 3: Exercise for working with the JMSConnector service 

At the conclusion of this exercise, you will be able to:

•  Register a JMS ConnectionFactory using a JNDI-Based provider

•  Register a standalone JMS Destination

•  Deploy a JMS library

This exercise will register a JMS ConnectionFactory when your JMS

provider also provides a naming system. It applies both to the JMS

Provider service in the J2EE Engine and to any external JMS provider

with naming provided.

With the administration tools of J2EE Engine you can register a

standalone ConnectionFactory. It is deployed on the server as an

application that contains only the deployment descriptor for the JMS

object.

Registering a JMS ConnectionFactory using JNDI-Based Provider

You must have obtained a ConnectionFactory instance from your JMS Provider. The JMS

Connector service wraps the instance and provides transaction and resource management

within the application server. Thus you do not need to manage the transactions and resource

handling programmatically in your application.

If you use the JMS Provider service of the J2EE Engine, see the JMS Provider service

exercise (section “Working with JMS Connection Factories”) for more information about

creating connection factories.

1-1 In the Runtime tab of JMS Connector Service, choose Resources -> Factories.

1-2 Choose the “New” icon on the toolbar.

Page 281: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 281/424

  19

1-3 In the right-hand tab complete the following fields:

1-3-1 Application Name – Specify a name to which the ConnectionFactory is

assigned.

example: myApplication

1-3-2 Factory Name – Enter a name for your ConnectionFactory. The systemuses it to bind the factory in the naming system.

example: myConnFactory

1-3-3 Client ID – Enter a client identifier. It is also assigned to the connection

that is created with this ConnectionFactory. The Client ID is not a required

field. If you leave it empty, it defaults to the client ID of the connection

factory from the JMS provider.

1-3-4 User – Enter a username for authentication to the JMS provider.

example: Administrator

1-3-5 Password1-3-6 Description – You can enter descriptive text for the ConnectionFactory.

This field is optional.

example: This is an example for a JMS ConnectionFactory.

1-3-7 Provider Type – Choose JNDI Based from the drop-down menu.

Page 282: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 282/424

  20

1-3-8 Library – From the drop-down menu choose a library that the JMS

Connector service uses to obtain a connection factory instance. You need a

JMS library when you use an external JMS provider instead of the JMS

Provider service in the J2EE Engine. To use a JMS library, you must first

deploy and define it on the J2EE Engine.

1-3-9 Aliases – You can add an unlimited number of aliases, which are

alternative names of the connection factory. They enable the factory to be

used by multiple clients and prevent you from having to create many equalconnection factories only with different names.

example: myJNDICFactory

Note:

The type of the ConnectionFactory (Queue or Topic) is automatically determined

after you start the application associated to the factory.

1-4 Choose the Provider tab. Complete the following fields:

1-4-1 JNDI Path – Enter a string that denotes a reference to the

ConnectionFactory object in the naming tree of the JMS provider.

example: jmsfactory/default/TopicConnectionFactory

1-4-2 Initial Context Factory – Enter the implementation of 

 javax.naming.spi.InitialContextFactory that your client uses to obtain

initial naming context.

example: com.sap.engine.services.jndi.InitialContextFactoryImpl

1-4-3 Provider URL – Enter provider URL in <host>[:<port>] format.

Page 283: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 283/424

  21

1-4-4 Security Principal – Enter the name of the entity (user) that is

authenticated when the connection to the JMS provider is established.

example: Administrator

1-4-5 Security Credentials – Enter the credentials (typically a password) that

authenticate the security principal to the JMS provider.

Note:

You can add more properties using the Additional tab. Enter the name and the

value of the additional parameter(s) in the Property and Value fields respectively,

and choose Add.

1-5  To save the changes, choose the “Save” icon on the toolbar.

1-6  To start the new factory, choose the “Start” icon on the toolbar:

Page 284: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 284/424

  22

The following message will appear:

1-7  Choose “Yes” to continue.

The new factory will be activated:

Page 285: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 285/424

  23

Note:

You can also register a JMS ConnectionFactory using a Non-JNDI Provider. For

more information, see the J2EE Engine official documentation.

Registering a JMS Destination

The J2EE Engine enables you to register a standalone JMS Destination. It is deployed on the

server as an application that contains only the deployment descriptor for the Destination

object.

2-1 In the “Runtime” tab of JMS Connector service, choose Resources ->

Destinations.

2-2 Choose the “New” icon on the toolbar:

Page 286: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 286/424

  24

2-3 In the right-hand tab complete the following fields:

2-3-1 Application Name – Specify a name to which the Destination is assigned.

example: myNewApplication

2-3-2 Destination Name – Specify a name for the object that you create.

example: myTopicDestination

2-3-3 Factory Name – Specify the name of a Queue- or

TopicConnectionFactory.

example: myConnFactory

2-3-4 Description

example: This is a Topic JMS Destination for <X> provider.

2-3-5 User

example: Administrator

2-3-6 PasswordNote:

If you want to create a JMS Destination similar to an already existing one, use the

Copy icon on the toolbar to copy the properties of the existing JMS Destination.

Then choose the New icon and the Paste icon to paste the properties. Modify the

parameters and save the JMS Destination object with a new name or in another

application.

Page 287: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 287/424

  25

2-4  Choose the “Save changes” icon on the toolbar to save the object.

Result

Page 288: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 288/424

  26

Deploying a JMS Library

You deploy and register a JMS library when you want to use an external JMS provider. A

JMS library includes the client JAR file of the provider. It enables you to create

ConnectionFactory objects using the relevant JMS provider.

3-1 In the Runtime tab of JMS Connector Service, choose Resources -> JMS

Libraries.

3-2 Choose the “New” icon on the toolbar.

3-3  Enter an arbitrary name for the JMS library, such as myLibrary”

3-4 Browse to the archive file (ZIP or JAR) that contains the classes of the JMS

library.

Page 289: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 289/424

  27

You can choose several files consequently. When you confirm the selection of a

file, you can either choose to add another archive file or finish the process by

choosing “Cancel”.

3-5 Confirm the deployment of the library.

Page 290: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 290/424

  28

Result

Page 291: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 291/424

  29

Unit 4: SAP Java Administration

Lesson 2: Configure different system services

Topic 5: Exercise for working with the JCoRFC Provider Service 

At the conclusion of this exercise, you will be able to:

•  Perform a function call from ABAP backend system to the J2EEEngine.

Your company has implemented a new SAP NetWeaver application

which requires an RFC destination to be established between the ABAP

and the Java Engines. As system administrator, you would like to register

this RFC connection.

Prerequisites: You should have the application “STFC_CONNECTION” deployed on the

J2EE Engine.

Establishing a connection between ABAP and J2EE Engine

In order to establish the connection you should create RFC destinations on both sides –

ABAP and J2EE Engine

Registering an RFC Destination in ABAP

1.  Go to transaction SM59

2.  Click on “create” to create a new RFC connection.

Page 292: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 292/424

  30

On the next screen:

3.  Enter a name in the “ RFC Destination” field

example: RFCTEST

4.  Enter a connection type “T”

Page 293: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 293/424

  31

Double click on “New Entry”

5.  Select “ Registered Server Program” for Activation Type

6.  Fill out the “Program ID” field

example: RFCTest

7.  Fill out the “Gateway Host ” and “Gateway Service”

example: Gateway Host: <host name> 

Gateway Service: sapgw25

8.  Write a short description (obligatory)

example: Function call test.

9. 

Change the Character set in the target system to Unicode. (Under the Special Options Tab)

Page 294: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 294/424

  32

10. Save the destination

Page 295: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 295/424

  33

Registering an RFC Destination on the J2EE Engine

1.  Open the Visual Admin Tool of the J2EE Engine

2.  Choose Server->Services->JCo RFC Provider->Runtime 

3.  In the fields “Program ID”, “Gateway Host ” and “Gateway Service” enter the same data

as in the RFC destination created in ABAP

Note: For the field “Program ID” please specify the “Program ID” that you entered in

ABAP not the “ RFC Destination name”, they are completely different characteristics of 

the ABAP destination.

4.  For “ Number of Processes ” enter a number between 1 and 205.  In the “ Application Server ” field specify the host of the SAP Web AS for the repository

(should be the same as the “Gateway Server ”)

6.  Choose the Client field to specify the client used to connect to the repository.

7.  Choose the Language field and specify the language for the specific connection (for

example – En).

8.  Choose the User field and enter the user name for the client connection to the repository.

9.  In the Password field, enter the user password for the client connection to the repository.

Page 296: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 296/424

  34

10. Check the “Unicode” box if the ABAP system is a Unicode System 11. Press the “Set ” button to save the destination

If you see the RFC destination to appear in the list of Available RFC Destinations with the icon as

on the screenshot then the destination has been created and started successfully.

Testing the connection between ABAP and J2EE Engine

1.  Go to transaction sm59

2.  Expand the TCP/IP connections list3.  Find your destination there and open it with double click 4.  Click the “Test Connection” button

Page 297: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 297/424

  35

If the connection has been establish you should get the following screen:

Page 298: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 298/424

  36

Executing the STFC_CONNECTION function module

1.  Go to transaction se37

2.  Enter the name of the function module – in your case STFC_CONNECTION  

3.  Press the third button in the toolbar (Single Test)

On the next screen:

4.  In the “ RFC target sys” field enter the name of the RFC Destination in ABAP

Note: The names of the RFC destination in ABAP and in the J2EE Engine are not

identical

The name of destination in the J2EE Engine is identical with the “ProgramID” of the

destination in ABAP

In this field you need the “ RFC destination name” not the “ProgramID” 

5.  In the “ REQUTEXT ” field enter any text

6.  Press the first button from the left side

Page 299: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 299/424

  37

If the function call has been successfully executed you should see the following screen

Page 300: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 300/424

  38

Unit 4: SAP Java Administration

Lesson 2: Configure different system services

Topic 6: Exercise for working with the JMS

Provider service 

At the conclusion of this exercise, you will be able to:

•  Create and configure a JMS instance

•  Work with JMS connection factories

Your company has implemented a new J2EE application which uses

JMS. As system administrator, you would like to create a new JMS

instance.

Creating a New Instances

1-1 Open the JMS Provider service and choose the “Runtime” tab.

1-2 Choose “Create”:

Page 301: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 301/424

Page 302: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 302/424

  40

1-6 Create a new topic or queue

1-6-1 Choose an instance from the left-hand side pane (“JMS Server Instance”)

and choose “Create” from the right-hand side pane:

Page 303: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 303/424

  41

1-6-2  Specify the name of the topic and choose “OK”:

1-6-3  Lookup name for both topic and queue – when a destination (queue or

topic) is selected, the lookup name displays the actual lookup name for this

destination. For example, a testTopic destination on the server instance

default will have the lookup name jmsqueues/default/testTopic.

Note:

When you create a new destination or remove an existing one, a resource instance

is created in (or removed from) the Security Provider Service. You can view this

resource in the Security Provider -> Runtime -> Policy Configurations tab. From

the “Components” pane, select

service.jms.instance."instance_name".authorization and choose the “Resources”

tab. This resource is required to grant users rights over the destination. Each time

an instance is added to or removed from the JMS Provider, a new resource entry

for the instance is added or removed.

Working with JMS Connection Factories

The default bound JMS connection factories are:

Page 304: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 304/424

  42

•   jmsfactory/default/TopicConnectionFactory

•   jmsfactory/default/QueueConnectionFactory

We recommend that you use these two factories.

Note:

When you update a factory using the Visual Administrator tool you have to authenticate to

the J2EE Engine to be able to use the connection factory.

2-1 Open the JMS Provider service and choose the Runtime -> Connection Factories

tab.

2-2 Create a new connection factory or choose an existing one to manage its settings:

2-2-1 If you are creating a new factory, specify the name of the new connection

factory in JNDI Name.

Caution:

The name cannot be more than 100 characters.

The following names are forbidden: browsers, connections, sessions,

destinations, consumers, producers.

2-2-2 Select the type of the connection factory from Factory Type.

2-2-3 You can specify a user name under which to manage the connection

factory later. Specify a password for this user.

Page 305: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 305/424

  43

2-2-4 To create a new factory choose “Create”, to update an existing one, choose

“Update”.

Page 306: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 306/424

  44

Unit 4: SAP Java Administration

Lesson 4: Java Engine Configuration andTuning

Topic 4: Use of Template Configuration Tool 

At the conclusion of this exercise, you will be able to:

•  Work with the Template Configuration Tool

•  Size your Web AS Java installation, using different tuning/sizing

templates.

Your company wants to implement a new SAP Enterprise Portal. As

system administrator, you would like tune and size your Web AS

infrastructure.

1-1  The Management Console before applying the Template Configuration Tool template.

2 Java server processes are running.

1-2  Run the Template Configuration Tool from

Page 307: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 307/424

  45

G:\usr\sap\ABC\SYS\global\TemplateConfig\cfgtemplategui.bat 

Note: The Template Configuration Tool is available from Web AS 6.30 SP7 on.

You should have ABC (Web AS 6.30 SP7 stand alone) already installed.

click  Next 

Page 308: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 308/424

  46

click  Next 

Page 309: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 309/424

  47

Click  Browse to navigate to the template you want to apply.

Page 310: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 310/424

  48

Choose J2EE-Engine-only.zip template and click Open

Page 311: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 311/424

  49

Change the instance directory to the Java instance (JC40)

Click on Instance dir, Browse button and navigate to JC40 folder:

Page 312: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 312/424

  50

Click Open.

Page 313: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 313/424

  51

Click  Next :

Page 314: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 314/424

  52

Click  Next:

Page 315: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 315/424

  53

Click  Next:

Page 316: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 316/424

  54

Click  Next:

Page 317: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 317/424

  55

Activate the Backup and click  Next 

Page 318: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 318/424

  56

Click on the Finish button:

Page 319: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 319/424

  57

Press OK.

1-3  Restart the ABC the changes to take effect.

Page 320: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 320/424

  58

The Java server instances are 3. Also you can use the Config Tool to check the new

Java parameters.

Page 321: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 321/424

1

© SAP AG 2004, Web AS Java Backup and Recovery

Course: SAP J ava Engine Adm inis t rat ion

1. Web AS Standalone Java Installation

2. Java Startup & Control Framework

3. Web AS Java Administration Tools Overview

4. SAP Java Administration

5. SAP Web Infrastructure

Units:

Page 322: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 322/424

2

© SAP AG 2004, Web AS Java Backup and Recovery

Uni t : SAP Java Admin is t ra t ion

Java Engine Administration

Configure different system services

Web AS Java Backup & Recovery

J2EE Engine Configuration and Tuning

Lessons:

Page 323: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 323/424

3

SAP AG

Web AS J ava -

Back up andRecovery

Page 324: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 324/424

4

© SAP AG 2004, Web AS Java Backup and Recovery

After completing this lesson, you will be able to:

Plan you Web AS Java Backup process

Perform Backup and Recovery every time when it’sneeded

Recover a J2EE Engine after a disastrous breakdown ofthe system

Web AS Jav a Back up and Rec overy: Lesson Object ives

Page 325: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 325/424

5

© SAP AG 2004, Web AS Java Backup and Recovery

In t roduc t ion

The SAP Web Java provides the complete infrastructure to run SAPNetWeaver components, and J2EE 1.3 compliant applications.

Availability is very critical, especially if no fallback options are

available.

Precautions have to be done to ensure that the Web AS Java can berecovered in case of e.g. Hardware Failure

File system corruption

Logical inconsistencies in the data

Software Damages cause from Viruses

Problems when installing Updates, Patches or new Software

A detailed backup and recovery concept is a must.

The recovery must be tested to show the success of the concept.

Note: The SAP Web Application Server (ABAP + java) is the technical platform for SAPNetWeaver, providing the complete infrastructure to develop, deploy and run all SAP

NetWeaver components, the mySAP Business Suite, customer-developed applicationsand 3rd-party J2EE 1.3 compliant applications.

Page 326: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 326/424

6

© SAP AG 2004, Web AS Java Backup and Recovery

Aspects o f a Back up and Recovery Concept

A Backup and Recovery concept should answer the followinggeneral questions:

Which system components and which data need to be backed up?

Which backup methods shall be used (online/offline) depending onthe data storage type (File system, Database)?

What is the backup time and frequency (how often backup shouldoccur, how long to save the tapes, etc)?

Which tools and media should be used (amount of media required,available resources)?

What are the test and verification procedures?

What backup strategy should be used under what situation?

What measures have to be taken to enable a recovery after a

disastrous breakdown of the system? What are the recovery method and recovery windows?

How the recovery has to be carried out?

Use - The backup of the J2EE Engine and the concerning database prevents you from

data loss and is essential for a recovery after a breakdown of the system. For Backup following factors must be considered:

System components

Type: online/offline

Cycle (number of tapes needed, at most 1 month as cycle ..)

Time & frequency (dep. On OnLine<->OffLine: affect on performance, …)

Tools & media. Recovery method, recovery time windows

Testing and Verification

Strategy for backup

Page 327: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 327/424

7

© SAP AG 2004, Web AS Java Backup and Recovery

Whic h Back up Metho ds shal l be used (onl ine/of f l ine)?

TREX

DB

1. Physical distribution? Directory path

2. What to backup? Application data

Configuration data

Software data

3. Where stored? File system

Database

24x7 R/3

CRM

4. Risks and dependencies?

Availability of the component

Actions that should be avoided

Dependant systems

5. Backup typeOfflineOnline

WebAS JAVA

The backup method and requirements of a specific system component mainly dependson the:

Type of data that the component holds

Data storage location

Requirements to this component

Page 328: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 328/424

8

© SAP AG 2004, Web AS Java Backup and Recovery

Del ta : Server Data Storage Web AS Java 6 .20 – 6.40

J2EEEngine6.20

DB

Web AS 6.20 writes Application data

Application Software

Configuration Files

into various locations:

FS and DB

DB

BOOTSTRAP:File Systemsynchronizedwith DBcontent

Web AS 6.40 writes

Application data

Application Software

Configuration Files

into DB only!

[Applications on Web AS Java 6.20] [Applications on Web AS Java 6.40]

ApplicationsApplications

J2EEEngine6.40

Note:

The SDM repository stores its files during deployment on the file system intodirectory /usr/sap/<sid>/<instance>/SDM.

The SDM repository cannot be restored by using the bootstrapping mechanism.

The SDM only keeps 'old versions' of packages and versioning information. Otherthan during deployment, there is no activity on the SDM file system. Therefore it canbe backed up like a simple static file content.

Page 329: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 329/424

9

© SAP AG 2004, Web AS Java Backup and Recovery

Back up St ra t eg ies

Online Backup

All components are up andrunning

Online backup proceduresare vendor specific

No Downtime required

Consistency of someadministration data needsto be ensuredorganizationally

Offline Backup

All components arestopped and their files canbe copied easily

Consistent restore shouldbe successful every time

Downtime necessary

Note: Not all complex persistence writeoperations (to DB or FS) of Java/J2EEapplications have top level 'enclosingtransactions‘.

The backup strategies all depend from the life scenarios and system landscapes.

Both the offline and the online backups must be performed on a regular basis for everyproductive system.

Page 330: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 330/424

10

© SAP AG 2004, Web AS Java Backup and Recovery

SAPJ2EE Bac k up

How distributed

Usually in Production environment SAPJ2EE is installed as a cluster

All SAP J2EE engine files and deployed applications (Portal, CM) are located in

the DB and synchronized to the local directory /usr/sap/<SID>/*

1. WebAS Database(SAPJ2EE, Applications DB)

2. J2EE Engine Cluster

file system on all the applicationservers

Deployed applications

LogFiles3. Software Deployment Manager

(SDM) file system

4. In case of an disk image:Operating system

1. Database

2. (a) /sapmnt/*(b) /usr/sap/<SID>/*

3. SDM under /usr/sap/<SID>/*

4. File system(operating system specific)

Important data for backup: Location

A file system backup of the Software Deployment Manager (SDM) should be performedafter software deployment and after the implementation of patches.

If SAP J2EE Engine is mostly used for development, include the SDM backup in yourdaily routine!

Note: Locations:

1. Database: If deployed applications are using other but the Web AS Database, a regularbackup of them should be performed as well.

Page 331: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 331/424

11

© SAP AG 2004, Web AS Java Backup and Recovery

Databases - Back up St r a tegies

The backup tools for your database must be installed and available.

The backup of the database can be executed during online operation.

Documentations for backup strategies of different databases in theonline-documentation:

MySQL MaxDB (SAP DB) refer to SAP NetWeaver→ Application Platform→ Databases→ MySQL MaxDB→ Basic Information→ DatabaseAdministration → Security Concepts→ Backup→ Backup Strategy.

Oracle database, refer to SAP NetWeaver→ Application Platform →

Databases→ SAP Database Guide: Oracle→ Approach to Oracle DBA →Database Backup.

SQL Server 2000 DBA, refer to SAP NetWeaver→ Application Platform →

Databases→ SAP/MS SQL Server 2000 DBA in CCMS → DatabaseBackup.

IBM DB2 Universal Database, refer to SAP NetWeaver→ ApplicationPlatform → Databases→ IBM DB2 Universal Database for iSeries → SAPDatabase Guidelines: IBM DB2 Universal Database for iSeries → Backupand Recovery..

One key element of the security concept for your database system is the making of

regular backups of your data.

Note - Oracle DB:

In case you run an Oracle database and want to use the SAP BR Tools for yourbackup procedure, refer to SAP Note 320457.

Page 332: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 332/424

12

© SAP AG 2004, Web AS Java Backup and Recovery

When backup data:

Perform a complete data

backup on each day ofproduction.

Or do incremental data

backup on each day ofproduction use of thedatabase.

When backup data:

Perform a complete databackup on each day of

production.

Or do incremental data

backup on each day ofproduction use of the

database.

SAPDB home directory

<drive>:\sapdb

SAPDB home directory

<drive>:\sapdb

MaxDB - Back up St r a tegies

When restore data:

The more up-to-date the databackup is, the fewer logentries need to be

reproduced.

When restore data:

The more up-to-date the data

backup is, the fewer logentries need to be

reproduced.

Ensure enough disk space for MaxDB operation!!!

The MaxDB stops to operate if there is not enough space a log file to be written.

Activate automatic log backups (autosave log mechanism).

If automatic log backups is not in use:

Make regular checks to see whether there is enough memory in the log area.

Make at least one interactive log backup on each day of production use of the database.

Tapes containing backups should not be directly overwritten with the next backup.

Here is only given the Backup strategy of MaxDB. The Backup strategies for other databases

should be taken from the Online Help.

For more information regarding MaxDB Backup refer to the online help.

Page 333: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 333/424

13

© SAP AG 2004, Web AS Java Backup and Recovery

SAPJ 2EE: Prepare for DB Onlin e Bac k up

Recommended Steps for a DB online backup:

SDM should not be running during backup (no Deployment)

Schedule a short period of inactivity of Web ASadministrators to reduce the probability of inconsistencies.

Schedule a short period of inactivity of end users to reducethe probability of inconsistencies

For every SAP application running on your SAP J2EE Engine

refer to the corresponding Solution Manager Guide and carryout the described backup procedures.

Note: For Enterprise Portal 6.0 on Web AS 6.40 backup strategy refer also to the EPdocumentation !!!

Page 334: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 334/424

14

© SAP AG 2004, Web AS Java Backup and Recovery

Fi le System Back up

The following directories should be backed up regularly:

/sapmnt/<sid>/ *(Central directory to store centrally essential executables, configuration andprofile)

/usr/sap/<sid>/ *

The SDM repository, which resides once on the central instance, needs

to be backed up after any installation, upgrade, patching, deployment:

/usr/sap/<sid>/<instance_00>/SDM/*

For backups of logfiles, do a file system backup of

/usr/sap/<sid>/* - log file directories are located under the path of eachdispatcher | server per instance

In case of a recovery, restore the file system /usr/sap/<sid/ * and ensure,

that a complete resynchronization with DB is done Delete the following directories

/usr/sap/ <sid>/ <instance>/j2ee/cluster/server/ apps | bin | cfg | dtd | temp/usr/sap/ <sid>/ <instance>/j2ee/cluster/dispatcher/ bin | cfg | dtd | temp

Page 335: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 335/424

15

© SAP AG 2004, Web AS Java Backup and Recovery

SAPJ 2EE OFFLINE Bac k up

OFFLINE Backup is fully supported with WebAS 6.40.

SAP assures, that a correctly performed OFFLINE backup is

consistent and thus can be restored successfully.

When performing an OFFLINE Backup the following components

of an installation must be shut down:

All J2EE Engine processes on all machines

All DB processes

All TRex processes (for EP)

SAP recommends strongly to perform OFFLINE backup on aregular basis (e.g. weekly or bi-weekly).

The offline back up requires “down time”. Usually all requests in this timeframe must

be redirected to kind of “Sorry page”. Please read the Enterprise Portal Backup strategy if you run EP on this Application

Server.

Page 336: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 336/424

16

© SAP AG 2004, Web AS Java Backup and Recovery

Off l ine Back up Proc edures

Shutdown all services on each application server.

Perform Backup of the necessary directories and databases.

Motivation:Making a quick Snapshot and write that to a tape while the Applicationserver runs again

Offline Backup

„Quick“ Offline Backup

Procedure:

Shut down all services on each application server

Copy all files quickly to a fast storage device e. g. special hard disks (offlinefile copy)

Start up the applications immediately after the files are copied.

Perform a real (slow) backup to tapes from the temporary Directories

Alternative: Use Hardware which can do Snapshots of the hard disks

Effect: Downtime is minimized and backup is consistent

Normally an offline Backup is done when there is no processes that can change the files.The easiest solution is to shutdown all servers and if necessary the dependant

components. After that the files are copied to the tapes. The only disadvantage is a longtime that required for such a procedure.

A workaround can be implemented by using a “Quick” offline Backup. The idea is to use aspecial hardware that allows to perform a quick snapshot of the necessary directories orcomplete hard disks (several seconds or a minute). After this snapshot the Applicationserver can be started again and the files are moved to the tapes via standard (slow)backup tools. In this case the downtime required for offline Backup is equal to the time ofserver restart but the backup is consistent.

Page 337: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 337/424

17

© SAP AG 2004, Web AS Java Backup and Recovery

Restore J 2EE Engine af ter breakdow n

Recommended Steps for a J2EE Engine restore:

Restore Java Instances

Restore Databases

Restore SDM

Restore Deployed Applications

Restart J2EE Engine

Restore

To restore your J2EE Engine after breakdown follow the steps described below:

Install a new system using the installation wizard SAPinst as described in the installation manual.

The installation guide for SAP Web Application Server Java can be found on the SAP Service Marketplace:http://service.sap.com/instguides Choose SAP NetWeaver → Release 04 → Installation → SAP Web AS Java 6.40 on <Platform>: <Database> 

Use exactly the same parameters as in the previous installation you want to restore!

Overwrite the mentioned parts of the system by the backup-copies as described below

Java Instances

Overwrite the installed Java Instance (standard path: /usr/sap/<SID>/JC<inst-nr>)

Databases

Import the backup using the database specific management tools (e.g. SAPDB: Database Manager, Oracle:brrestore).

After the database has been imported, you also have to import the available log backups.

You find detailed documentation for SAPDB under SAP help ->The SAPDB Database System  → Security Concepts → Restartability .

SDM

Overwrite the installed SDM.

Applications

Follow the description in the corresponding Solution Management Guides to recover your SAP applications. You findthese guides on the SAP Service Marketplace.

Restart

Restart the J2EE Engine.

Result

The J2EE Engine is restored with the last backup.

Page 338: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 338/424

18

© SAP AG 2004, Web AS Java Backup and Recovery

Web AS Java Bac k up and Rec overy: Lesson Sum ma ry

You should now be able to:

Plan you Web AS Java Backup process Perform Backup and Recovery every time when it’s

needed

Recover a J2EE Engine after a disastrous breakdownof the system

Page 339: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 339/424

1

© SAP AG 2004, J2EE Engine Configuration and Tuning

Course: SAP Ja va Engine Adm inis t rat ion

1. Web AS Standalone Java Installation

2. Java Startup & Control Framework

3. Web AS Java Administration Tools Overview

4. SAP Java Administration

5. SAP Web Infrastructure

Units:

Page 340: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 340/424

2

© SAP AG 2004, J2EE Engine Configuration and Tuning

Uni t : SAP Java Admin is t ra t ion

Java Engine Administration

Configure different system services

Web AS Java Backup & Recovery

J2EE Engine Configuration and Tuning

Lessons:

Page 341: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 341/424

3

J 2EE Engine

Conf igurat ion andTuning

SAP AG

Page 342: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 342/424

4

© SAP AG 2004, J2EE Engine Configuration and Tuning

After completing this lesson, you will be able to: Understand the Web AS load balancing concepts

Understand the Web AS high availability andfailover scenarios

Use the Template Configuration Tool

J ava Engine Administ rat ion: Lesson Object ives

Page 343: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 343/424

5

OutOfMemory Troubleshooting

High Availability and Failover

Template Configuration Tool

Load Balancing

Page 344: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 344/424

6

Load Balancing Between many SAP Web AS Instances (1)

You can also start a system with many J2EE dispatchers, for which the SAP WebDispatcher or another load balancer is already activated as a Web switch. Moreinformation about this Load Balancing can be found in the documentation of the SAPWEB Dispatcher.

Load Balancing by J2EE Dispatcher (2)

In the J2EE Instance the J2EE Dispatcher distributes the incoming requests amongthe Server Processes it is connected to. When the first request arrives at thedispatcher for distribution, the dispatcher executes the load balancing function. Thenthe dispatcher can guarantee that subsequent requests will be distributed to theserver process that is processing this session.

© SAP AG 2004, J2EE Engine Configuration and Tuning

Load Balanc ing

Goal: optimal distribution of load on all available resources

2 Types of Load Balancing

Load Balancing between SAP WEB AS Instances

Load Balancing by J2EE Dispatcher

Page 345: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 345/424

7

The graphic above shows a system with several J2EE dispatchers, to which the SAP Web Dispatcher

is the entry point in the DMZ. This executes the load balancing between the J2EE dispatchers, which

then distribute the requests to their server processes.

Instead of the SAP Web Dispatcher you can use any other load balancing device. You have to registerit on the server and ports. The communication with the message server and the mapping to the SAP

logon group are then no longer required.

The SAP Web Dispatcher fetches the information it needs from the Message Server:

All J2EE dispatchers with their HTTP ports to which the SAP Web Dispatcher can forward requests.

The capacities of the connected J2EE engines, so that the SAP Web Dispatcher can use the weighted round-robin procedure.

For this the SAP Web Dispatcher simply needs, in its profile file, the port where it can reach the Message Server (parameterms/http_port). See also Example: Profile File of a SAP Web Dispatcher.

The SAP Web Dispatcher is delivered with Central Services (Enqueue Service and Message Service).In the standard installation you will find this in the directory /usr/sap/<SID>/SYS/exe/run

The SAP Web Dispatcher can be used for load balancing in the following scenarios:

J2EE-only scenario, as described here. As all requests are forwarded to J2EE, all the distribution procedures using the URL prefixesin the SAP Web Dispatcher documentation are not relevant.

ABAP-only scenario

Integrated scenario (J2EE+ABAP)

© SAP AG 2004, J2EE Engine Configuration and Tuning

Load Balanc ing betw een d if fe rent J2EE Ins tances

Page 346: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 346/424

8

The SAP J2EE Engine Load Balancing System implements the following functions:

Load balancing of system (cluster) resources using the “Round Robin” algorithm.

Monitoring each server process for a particular service that can process the incoming request.

The Load Balancing system includes only the server cluster elements that are not stopped or marked forshutdown:

When a server element is shut down, it is excluded from the Load Balancing system. When a new element is started, it is included inthe system.

When there is a server process marked for shutdown, it is excluded from the Load Balancing System. The mark for shutdown option isused if you want to stop a particular server process without terminating the work of the clients that are currently connected to it. TheSAP J2EE Engine waits for the current requests to be processed and then stops the corresponding element. After the element isstopped the Load Balancing System stops sending requests to it.

Load Balancing is only used by distributed Services. These are Services where one part of the serviceis running on the J2EE dispatcher and a other part of theses Service is running on a J2EE Server

The description of HTTP Requests load balancing can be found on one of the next slides.

The load balancing mechanism for RMI-P4 and RMI-IIOP requests is based entirely on the functions of

the Load Balancing System. Load balancing for this type of requests is performed on the J2EEdispatcher when remote clients attempt to obtain initial context references to the remote server-side

object. After obtaining the initial context, the ID of the server process on which the remote objectresides is encoded into the request, so that consequent requests to the same object are dispatched to

the same server process.

© SAP AG 2004, J2EE Engine Configuration and Tuning

L oa d B al an c in g b y J 2 EE Di sp at c h e r  

J2EE Dispatcher is using LoadBalancing System for load

balancing of various requesttypes

Load Balancing is used bydistributed services only

Detailed procedure of LoadBalancing depends on thedistributed Service

HTTP Requests

Homogeneous Load Balancing

Heterogeneous Load Balancing RMI/P4 Requests

RMI/IIOP Requests

Page 347: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 347/424

9

Homogeneous Load Balancing

prerequisites of homogeneous Load Balancing:All applications must run on each server process (default by deploying)

If on one server the application should not run, then you have to consider using the heterogeneousLoad Balancing

When the HTTP Provider Service is not configured for heterogeneous load balancing, it relies entirelyon the Load Balancing System to determine the appropriate server process to dispatch the request to.When an HTTP request reaches the J2EE Dispatcher, the Load Balancing System chooses a serverprocess from the cluster elements that have an HTTP Provider Service running on them. The state ofthe HTTP Provider Service is monitored by the Load Balancing System to prevent it from choosing aserver with a stopped HTTP Provider Service for processing the request

Heterogeneous Load Balancing

The HTTP Provider Service running on the dispatcher parses client requests. Based on its records (as

described above), it directs the request to the appropriate cluster element to be processed. Threescenarios are possible:

The incoming request has an application cookie attached. The HTTP Provider Service gets the value of the cookieand directs the request to the server with the corresponding ID.

The incoming request has no application cookie attached. The HTTP Provider Service checks its records for runningapplications with the application alias that matches the alias used in the request URL. If a single record is found, therequest is directed to the server process where the application is running. If more then one record is found, theserver process that will process the request is chosen randomly.

The incoming request has no application cookie attached and the HTTP Provider Service finds no records that matchthe requested application alias. Then the request is directed to the least busy server process in the cluster.

© SAP AG 2004, J2EE Engine Configuration and Tuning

L oa d B al an c in g b y WEB A pp li c at i on (H TT P)

2 different types of load balancing are possible

Homogeneous Load Balancing

Request reaches Dispatcher Load Balancing System choose a server process that have a HTTP

Provider running

State of HTTP Provider are monitored by Load Balancer

Heterogeneous Load Balancing (default method)

WEB Applications are invoked and identified by a unique applicationID

HTTP Provider keeps a list of application ID’s an server where theapplications are running on

WEB Container notifies the HTTP Provider if Applications are started Use of Cookies for providing session related information

Page 348: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 348/424

10

OutOfMemory Troubleshooting

High Availability and Failover

Template Configuration Tool

Load Balancing

Page 349: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 349/424

11

The graphic above shows the cluster elements and the communication between them. The single

points of failure are shown at the bottom.

A J2EE cluster has the following single points of failure (SPOF):

Database

Enqueue Service

Message Service

The other cluster elements (dispatcher and server processes) represent no SPOFs in the sense that abreakdown in one of them would not affect the entire system.

The dispatcher is stateless, this means that running transactions are not hindered. It can be restarted, orfrom the outset, two dispatchers can be started.

If a server process fails, the session is terminated. One way of getting round this problem is to make the

session persistent.

There are ways for providing session persistent Applications, but these opportunities have toconsidered during application design.

With J2EE Engine 6.20 there were no Central Services, and each cluster element communicated withall other cluster elements. With a large number of cluster elements, system performance was

significantly lower, which is why SAP has changed the architecture for 6.30.

You can see that the server processes do not communicate with each other. The advantage of thiscommunication schema is that the number of connections only increases linearly with the number ofserver processes and not quadratically as in the earlier procedure.

© SAP AG 2004, J2EE Engine Configuration and Tuning

High Ava i lab i l i t y and Fa i lover  

A J2EE cluster has thefollowing single points of

failure (SPOF): Database

Enqueue Service

Message Service

dispatcher and serverprocesses) represent noSPOFs in the sense that abreakdown in one of themwould not affect the entiresystem

Page 350: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 350/424

Page 351: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 351/424

13

With SAP Web AS, SAP continues to provide its own technology for web load

balancing, the Web dispatcher. Similarly to web switches, it enables load distributionof requests to multiple Web ASs. Configuration and load distribution are based oninformation that the Web dispatcher regularly receives from the message server. Incontrast to message-server based load balancing (redirect), this setup has theadvantage that only one address and one host name have to be known externally, forwhich bookmarks can be used. Also, separate, official IP addresses and servercertificates do not have to be provided for each server. In the event of SAP Web ASfailure, rerouting to an available web server occurs automatically.

© SAP AG 2004, J2EE Engine Configuration and Tuning

Replicatedenqueue clusterCI

repl.enqueue

Cluster or standbyDB. DB reconnect

DB

High Avai labi l i t y for SAP Web AS

Load balancing(redirect)

WebDisp.

WebDisp.

Transparentload

balancing

DB

Appl.Server

Multiple applicationservers

Appl.Server

Appl.Server

CIMessageServer

EnqueueServer

No s ing le po in t

of fa i lure

Page 352: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 352/424

14

The SAP J2EE Engine provides a high degree of fault tolerance for the J2EE Web applications that aredeployed on it, by implementing an effective mechanism for replicating sessions. At the end of each

request-response cycle, the HTTP session is replicated to a persistent storage. If the system crashes,the storage is used to retrieve all lost session states. Replication is done using standard Javaserialization techniques, which is the only possible way of doing it within a Java Virtual Machine. Thistechnique has certain tradeoffs – performance on the one hand, and restrictions to the application onthe other.

Programming Requirements for HTTP Sessions Persistency

Store only serializable objects in the session. Exceptions to this rule are the following objects:

References to enterprise beans interfaces.

Reference to javax.ejb.SessionContext.

References to naming contexts.

Reference to javax.transaction.UserTransaction.

Do not store database or network connections – they cannot be serialized. If you are using JDBCconnections, they must be closed and set to null, so that session is serialized. You can use thesessionWillPassivate method of the HttpSessionActivationListener interface to receive events when thesession is about to be switched in passive state.

Enterprise JavaBeans serialization is done by the EJB Container. Enterprise beans are serialized bythe EJB Container when they are involved in an HTTP session that is serialized. There are alsoProgramming requirements that have to be kept.

Do not store large objects into the session because the application overhead becomes significant.

© SAP AG 2004, J2EE Engine Configuration and Tuning

Fai lover for J2EE WEB Appl ic at ions

J2EE Engine provides fault tolerance for J2EE Server

J2EE Engine implements a mechanism for HTTP session replication(Session Failover Service)

At the end of a request-response Cycle the HTTP session isreplicated in a persistent storage (file)

In case of system crash the storage is used to retrieve all lostsession states

Replication is done by Java Serialization Technique certain tradeoffs – performance on the one hand, and restrictions to the

application e.g.. JDBC Connection

Failover has to enabled by deployment descriptor / or by HTTPSessions via setting an Attribute in the Application

Page 353: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 353/424

15

The SAP J2EE Engine provides failover services for RMI-P4 applications that run on it. These services

refer to the mechanism of migrating remote objects from the crashed server process to an available

server process in the cluster.

RMI-P4 provides a transparent failover for clustered remote objects (all actions are performed on theserver side and the client is not aware of any of them). It implements a mechanism for migrating

instances of those objects to other available server processes within the SAP J2EE Engine cluster incase a server process crashes.

This mechanism does not deal with preserving any state of the remote object after migration, thisremains the developer’s responsibility.

The process of migration of the remote object between cluster elements is depicted in the diagramabove:

In order to call methods on a remote object, a client must obtain a reference to that object. Thereference to the object contains information about the identifier that is associated to the remote

object by the naming system. If a server process crashes, the remote object is no longeravailable. Therefore, when the J2EE dispatcher receives a request from the client to thatserver process, it uses the load balancing mechanism to direct the request to another server

process. In this case, there is no instance of the remote object there. The P4 broker object onthe new server process gets the identifier of the remote object from the request and contacts

the cross system. The latter looks up the remote object and provides the P4 broker withaccess to the class loader of the remote object. This way, an instance of the remote object is

created on the new server process, and client-server communication continues as usual.

© SAP AG 2004, J2EE Engine Configuration and Tuning

Fai lover for RMI-P4 Appl ic at ions

failover services for RMI-P4applications

RMI-P4 provides atransparent failover forclustered remote objects

It implements a mechanismfor migrating instances ofthose objects to otheravailable server processes

mechanism does not dealwith preserving any state of

the remote object aftermigration, this remains thedeveloper’s responsibility

Page 354: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 354/424

16

OutOfMemory Troubleshooting

High Availability and Failover

Template Configuration Tool

Load Balancing

Page 355: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 355/424

17

© SAP AG 2004, J2EE Engine Configuration and Tuning

Problem Case: Out OfMemory

Error Message: OutOfMemory

What does it mean?

In the SUN virtual machine there are two reasons why an OutOfMemoryError

might occur, because the SUN VM uses two different memory blocks for allocatingobjects and for loading classes. So possible reasons are:

The VM cannot allocate memory for a new object because there is no space inthe heap available.

A classloader tries to load a new class but cannot do so because the perm spaceof the memory is full.

As the second reason has appeared to be more likely, we have a look at theproblem analysis and solution for “running out of perm space”.

http://java.sun.com/docs/hotspot/gc1.4.2/

Page 356: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 356/424

18

© SAP AG 2004, J2EE Engine Configuration and Tuning

Analysis Procedure

1) Start the Config Tool -> Instance -> Server

2) Configure the Java Settings with the following parameters:

-verbose:gc

-XX:+PrintGCDetails

-XX:+PrintGCTimeStamps

3) Restart the cluster

4) View the log <installation path>\sysID\instID\work\std_server0.out

and search for the garbage collector output, containing values for the Perm size:

space allocated before the GC space after the GC free space

If the perm space is running full, thisnumber will go towards 0and you will see frequent long lastingGCs!

Page 357: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 357/424

19

© SAP AG 2004, J2EE Engine Configuration and Tuning

Troubleshoot ing: Change Conf igurat ion

In the Config Tool adapt the Javaparameters of the server to yourneeds. Default:-Xms <$heapSize/2>m

-XX:NewSize=<$heapSize/12>m-XX:MaxNewSize=<$heapSize/6>m-XX:NewRatio=3-XX:+DisableExplicitGC-XX:MaxPermSize=128m

Page 358: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 358/424

20

Java Engine running an Enterprise Portal 6.0 should be started with –server option!

© SAP AG 2004, J2EE Engine Configuration and Tuning

Problem Case: JVM Crash

Problem: JVM Crash

Try:

-client-Xint-XX:+PrintCompilation

1.) Toggle between -server and -client VMoption. (two different JIT compilers).

2.) Try -Xint option.

3.) Enable compilation tracing:Add the parameter -XX:+PrintCompilationRun the VM with JIT option -server -client

The VM now traces all compiledmethods at the console. The last compiledmethod is probably the one which causesthe problem!

Possible Reason: C2 Just-in-Time Compiler (JIT) causes problems

The C2 JIT compiler shipped with the SUN Java VM 1.4.2_x is used when the -server

option is specified for the VM.

Most of these problems do not occur when the client VM is used (-client)!

Page 359: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 359/424

21

OutOfMemory Troubleshooting

High Availability and Failover

Template Configuration Tool

Load Balancing

Page 360: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 360/424

Page 361: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 361/424

23

The template configuration tool makes technical setup of Java components easier and

safer.It uses so called "templates“ and adjusts low level settings of the engine and Java VM

as well as higher level settings of NetWeaver components running within the engine.The values are:

low level settings of the engine and Java VM, like number of server processes and memoryconsumption

settings of NetWeaver components

© SAP AG 2004, J2EE Engine Configuration and Tuning

Conf igura t ion too l w i th c omponent adapters

J2EE engineconfig

Component 1config

Component 2config

Template

J2EE engine

parameters read1

Template based server configuration tool configures J2EE engine

Components adapter: Java class that implements a simple Java interface Loaded and called by Server configuration tool

Adapter reads component section and applies it to component config Content and format can be chosen freely (responsibility of component)

Access API and logic can be chosen freely (responsibility of component)

Prefer: Limit semantic knowlege in adapter, prevents modification and harder to update

Server Configuration Tool

J2EE Template

processor

 J   av a

I     n t     er  f    

 a c e

Component 1adapter

 J   av a

I     n t     er  f     a c e

Component 2adapter

 J   av a

I     n t     er  f     a c e

2call apply3

Component 1parameters

Component 2parameters

Page 362: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 362/424

24

© SAP AG 2004, J2EE Engine Configuration and Tuning

Covered Sc enar ios and Deployment Opt i ons

J2EEIKS production systemKW

JDI-DTR-and-CBS

JDI-DTR-onlyJDI with separate build server

JDI-DTR-and-CBSJDI

Developer workplace

XI-with-DTRXI with JDI

XI-DevStandalone Adapter Engine dev

XIStandalone Adapter Engine prod

XI-DevXI development system

XIXI production system

XI

J2EEMIMI

PortalBI broadcastingBI broadcasting

BWBWBW

PortalStandalone UWL

PortalPortal with KM and RTC

PortalPortal with KM

PortalPortal

EP

TemplateDeployment optionNW Scenario

White: Duplicates

Page 363: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 363/424

25

© SAP AG 2004, J2EE Engine Configuration and Tuning

You should now be able to:

Understand the load balancing concepts

Understand the high availability and failoverscenarios

Use the Template Configuration Tool

J 2EE Engine Servic es: Lesson Summ ary

Page 364: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 364/424

1

© SAP AG 2004, Web Infrastructure for SAP Web AS

Course: SAP Ja va Engine Adm inis t rat ion

1. Web AS Standalone Java Installation

2. Java Startup & Control Framework

3. Web AS Java Administration Tools Overview

4. SAP Java Administration

5. SAP Web Infrastructure

Units:

Page 365: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 365/424

2

© SAP AG 2004, Web Infrastructure for SAP Web AS

Course: SAP J ava Engine Adm inis t rat ion

1. Web AS Standalone Java Installation

2. Java Startup & Control Framework

3. Web AS Java Administration Tools Overview

4. SAP Java Administration

5. SAP Web Infrastructure

Units:

Page 366: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 366/424

3

© SAP AG 2004, Web Infrastructure for SAP Web AS

Uni t : SAP Web Inf rast ruc tur e

Web infrastructure for the SAP Web AS

Installing the SAP Web Dispatcher

Lessons:

Page 367: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 367/424

4

Web In f ras t ruc t urefor t he SAP Web AS

SAP AG

Page 368: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 368/424

5

© SAP AG 2004, Web Infrastructure for SAP Web AS

After completing this lesson, you will be able to:

Understand the SAP Web infrastructure.

Understand the role it plays for the robustness,performance and cost of ownership of a businesssolution.

You will learn some solution approaches forbuilding a business-ready Web Infrastructure forWeb AS.

Web inf rast ruc tu re for the SAP Web AS: Lesson Object ives

First, we will explain briefly how the SAP Web AS works and what we mean by Webinfrastructure (or HTTP infrastructure) in the first place. (In short, everything needed toget HTTP requests from the browser or any other Web client to the server and theresponse back).

It is important to realize that the infrastructure plays a crucial role for the robustness,performance and cost of ownership of a business solution. We will talk about how therequirements that business Web applications impose upon the infrastructure differ fromthose of other Web applications.

In the second half of the lesson we will outline some solution approaches for building abusiness-ready Web infrastructure for Web AS. One way of building a Web infrastructurefor SAP Web AS is based on components that SAP delivers as part of its technologyoffering (most notably, a software called Web Dispatcher). The other way is to use

standard, third party Web infrastructure components, which is just as well since SAPWeb AS is based on HTTP as a standard protocol.

Page 369: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 369/424

Page 370: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 370/424

Page 371: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 371/424

8

© SAP AG 2004, Web Infrastructure for SAP Web AS

SAP Web Appl ic at ion Server 

J2EE basedWeb Applications

InternetCommunication

Manager forHTTP access

ABAP basedWeb applications

SAP's modern Web applications are based on SAP Web Application Server (Web AS). Hereis a high level picture of its architecture. It supports both ABAP as well as J2EE based

applications. A specail process, the ICM, is responsible for HTTP communication.

Web AS is like any old SAP Application server except that it can serve HTTP requests.

SAP Web AS 6.40 has an integrated Java Server, which implements the Java 2 EnterpriseEdition (J2EE) standard. Technical infrastructure (as discussed I this presentation) is notaffected

There is also a J2EE-only version of Web AS, which consists of only the green part of thegraphic above.

Page 372: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 372/424

9

© SAP AG 2004, Web Infrastructure for SAP Web AS

SAP Web Appl ic at ion Server 

This

presentationis about HTTP

infrastructure

It applies both to

Web AS 6.40ABAP and J2EE

Web AS 6.40

J2EE-only

The remainder of the lesson will focus on using SAP Web AS as an HTTP server.

What has to be done in order to offer a business web application in a productive way, e.g. inthe Internet? Seems like a trivial question: You find yourself an Internet provider, by a routerand then you are online. However, living and surviving in the Internet is little morecomplicated than that. Especially with a business critical application...

What you need is what we call a Web infrastructure. What we mean by this term iseverything that is needed to get HTTP requests from the browser or any other Web client tothe server and the response back. Some components involved in this are networks androuters, wide area network connections, load balancing devices, caches, DNS servers andmany more.

Page 373: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 373/424

10

Introduction

SAP Web AS Technical Requirements

SAP’s Load Balancing Solutions

Web Dispatcher ScenariosAlternative Technologies

Summary

Page 374: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 374/424

11

© SAP AG 2004, Web Infrastructure for SAP Web AS

Requi rements o f Bus iness Web App l ica t ions

CPU intensive

Scalability achieved by load balancing

Transactional

Stateful user sessions require session persistence

Access control

User authentication required

Security

Encryption of communication (Secure Socket Layer – SSL)

Application servers and networks need protection

Dynamic contentLow fraction of cacheable content

CPU intensive Load balancing

CPU usually dominates throughput

Transactional Requires session persistence

Almost every SAP application

Access control Authentication

Variety of methods

SSO influence on DNS domain structure

Security of communication SSL

Everywhere

Option X.509 client Certificate

Security of application servers Firewalls

Currently: HTTP Access to business systems required

Dynamic content Low fraction of cacheable content

Depends on application and usage patterns

Page 375: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 375/424

12

© SAP AG 2004, Web Infrastructure for SAP Web AS

Load Balancing Mec hanism s (Cl ient Side)

Redirections

Simple

Bad user experience and maintenance

DNS based methods

Perhaps OK for intranet

OK for global load balancing

Generally not OK for server load balancing

Page 376: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 376/424

13

© SAP AG 2004, Web Infrastructure for SAP Web AS

Load Balanci ng Mechanism s (Server Side)

Load balancing device

Transparent for client

Always the same URL

One official IP address for all application servers One server certificate for all servers

Technically challenging

Usually preferable

LoadBalancer

ApplicationServer

ApplicationServer

Application

Server

Page 377: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 377/424

14

© SAP AG 2004, Web Infrastructure for SAP Web AS

Sta t e fu l User Sessions

Complex applications are usually stateful

Hold database locks

Store intermediate SQL results etc.

Session state persistent between requests ("roll area")

HTTP is a stateless protocol

Successive requests may open a new network connection

SAP Web AS uses session ID to recognize user session

Session cookie

Part of the request URL ("URL rewriting")

Stateful applications impose special requirements on load balancing.

HTTP is a stateless protocol, because the network connection does not last for the durationof a user session. The protocol itself offers no provisions to return a subsequent request toan already established session.

he Web AS uses a session ID which is returned with every request in order to recognize theuser session in which each request has to be processed.

Page 378: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 378/424

15

© SAP AG 2004, Web Infrastructure for SAP Web AS

Load Ba lanc ing + St a te fu l User Sess ions

Requirement: Session persistence

(Load balancer must ensure that user gets back to same server)

LoadBalancer

ApplicationServer

Application

Server

SessionState

 1 s t  r

 e q  u e

 s t

2  n d  r e q u e s t 

First request from user establishes session in application server.

If subsequent request would be directed to a different server, session context is not knownthere so context would be lost.

Worse, if the first context holds any locks, second session would not be able to accesslocked items.

There is a conflict between application (stateful) and protocol (stateless)

Load balancing device must ensure that all requests belonging to an application session aredirected always to the same application server!

Page 379: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 379/424

16

© SAP AG 2004, Web Infrastructure for SAP Web AS

Pers is tenc e Mechan isms

Session ID (Cookie or URL)

Detect actual application need for session persistence

Requires no state in load balancer, because SAP session ID contains

application server instance name Requires access to clear text HTTP request

IP address of client

Works also with encrypted traffic

Problems with proxies not good for Internet

No way to detect stateless requests

Problems with alternative host names

Cookies inserted into the data stream by load balancer

Works "out-of-the-box"

Problems with some SAP applications

Requires access to clear text HTTP request

These mechanisms can be used to ensure session persistence.

Two of the mechanisms need to look at the data or even modify data passing through.

Page 380: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 380/424

17

© SAP AG 2004, Web Infrastructure for SAP Web AS

Secure Socket Layer  

Encryption is required for business applications

Protect user credentials (e.g. passwords)

Data security

Secure Socket Layer (SSL)

SSL encrypts entire communication between browser and server

Server authentication (mandatory)

Browser verifies, that server certificate matches URL

Client authentication with X.509 certificates (optional)

Server takes identity of user from browser certificate

End point of SSL session is either Application Server (end-to-end security)

Web infrastructure component (in-depth security)

Encrypted traffic cannot be looked at or even modified by the load balancing device.

Way out: Load balancer acts as the end point of SSL encryption. This enables bettersession persistence mechanisms and also inspection of requests before they reach theapplication server. This is sometimes called "in-depth security".

A different security philosophy is "end-to-end security". It assumes that the server itself issecure and the connection between client and server is the most vulnerable asset. Thisphilosophy prohibits the termination of SSL sessions by any intermediary.

Therefore, end-to-end security does not go together well with load balancing, as it does notallow the use of session ID or cookies for session persistence. IP based persistence is notrecommended in the Internet.

Page 381: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 381/424

18

© SAP AG 2004, Web Infrastructure for SAP Web AS

Load Balancing Design Cr i t er ia

Load balancing mechanism (client or server side)

End-to-end SSL or SSL termination in load balancer. Criteria:

In-depth vs. end-to-end security, need to inspect traffic

Persistence mechanism (session ID or IP address)

Client certificate authentication

Cost of device

Performance

Robustness and high availability

Ease of configuration and operation (TCO)

Integration into existing infrastructure and security policy

Page 382: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 382/424

19

© SAP AG 2004, Web Infrastructure for SAP Web AS

Other App l ica t ion Spec i f ic Requ i rements (Exam ples)

All servers belonging to one portal "domain" should be in one

DNS domain, and only them.

DNS domain restrictions for Single Sign-on (SSO) cookie

(workaround available)

Security considerations for SSO cookie

Cross-frame JavaScript (Portal)

SSL should be re-encrypted if terminated in load balancer.

Some applications react on the incoming protocol.

HTTP header "Host:" should be preserved.

Beware of Apache 1.3. Use 2.0 with ProxyPreserveHost directive.

Random list of some special requirements of some SAP applications. Not meant to becomplete. This is just to make you aware that there are more things to care about. These

requirements do not apply to all applications. We are currently working on a comprehensivelist of requirements.

Page 383: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 383/424

20

Introduction

SAP Web AS Technical Requirements

SAP’s Load Balancing Solutions

Web Dispatcher ScenariosAlternative Technologies

Summary

Page 384: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 384/424

21

© SAP AG 2004, Web Infrastructure for SAP Web AS

Message Server Based Redirec t ions

MessageServer

Central

Instance

DialogInstance

DialogInstance

RDBMS h t t p :

// w e b. a c m e. c o m

 L o c a t i o n : 

 h t t p :// w e b

 2. a c m e. c o m

h t t  p :  /  / w e b 2 .a c m e .c o m R e m a i n i n g  u s e r  s e s s i o n 

A disadvantage of the Message server load balancing is the redirection of the request, anddifficulties to store the Website as favorite.

Page 385: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 385/424

22

© SAP AG 2004, Web Infrastructure for SAP Web AS

Message Server Based Redirec t ions

Works out-of-the-box (add one profile parameter)

Just like SAPlogon

No problems with session persistence & SSL

But: user experience not optimal

Confusing

No bookmarking

Superfluous password dialogs

Each server needs own SSL certificate

Administration overhead

Suitable only for internal systems

Simple load balancing built into SAP Web Application Server based on redirections

Not well suited for the Internet because of general problems with redirections Not easy to integrate into firewall

Need dedicated servers for internal and external (server certificate!)

Perhaps OK for intranet, but consider inconvenience for the users

Not generally recommended for production systems

Page 386: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 386/424

23

© SAP AG 2004, Web Infrastructure for SAP Web AS

Web Dispat c her 

SAPWeb

Dispatcher

Message

Server

CentralInstance

DialogInstance

DialogInstance

RDBMS

http://web.acme.com

The SAP Web dispatcher is located between the Web client (browser) and your SAPsystem that is running the Web application.

The architecture is the same as the Internet Communication Manager, see the InternetCommunication Manager (ICM). It uses the same HTTP framework and is likewisestructured modularly from subhandlers. But unlike the ICM, the SAP Web Dispatcher doesnot directly pass incoming requests to a work process – it passes them to the ICM of theapplication server or to a dispatcher of a SAP J2EE Engine. The response from theapplication server does not pass via the Web dispatcher again to the client – it goes direct tothe client (via a proxy, if the network is configured with one).

Page 387: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 387/424

24

© SAP AG 2004, Web Infrastructure for SAP Web AS

SAPWeb

Dispatcher

Message

Server

CentralInstance

DialogInstance

DialogInstance

RDBMS

http://web.acme.com

Web Dispat c her 

Load Balancing

Session PersistenceRequest Filtering

Automatic configuration

retrieval fromMessage Server

One URL for

all AppServersof one system

Either End-to-end SSL

or SSL termination

Software loadbalancing server

Optionalre-encryption

Page 388: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 388/424

25

© SAP AG 2004, Web Infrastructure for SAP Web AS

Web Dispat c her Feat ures

Web Dispatcher is a software load balancer and

application layer gateway for SAP Web AS

No full reverse proxy – not meant to be!

Software delivered free of charge as part of SAP Web AS

"Near zero" configuration and administration

Retrieves system state from message server

Supports SAP Web AS features "out-of-the-box"

Persistence mechanisms (cookie formats, URL rewriting)

Logon groups, distinguish J2EE and ABAP application ...

Both end-to-end SSL and SSL termination possible

Simple request filtering

Web Dispatcher is not meant to compete with hardware loadbalancers for high endapplications.

It is not meant to compete with fully fledged reverse proxies.

It is not a general purpose piece of Web infrastructure.

Web Dispatcher is meant to be an easy solution for SAP customers that need a Webinfrastructure solution without massive investments.

Page 389: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 389/424

26

© SAP AG 2004, Web Infrastructure for SAP Web AS

I m plem e nt a t i on A re a o f t h e SA P We b Di sp at c h e r  

The SAP Web Dispatcher was first delivered with SAP Web AS 6.20 (although it can also beused with SAP Web AS 6.10 systems). Its configuration and operation are simple.

The customer receives here a product that is designed for a throughput up to around 3000hits per second (HTTP). The SAP Web Dispatcher handles SAP-specific load distributionand is sufficient for the vast majority of cases. In cases of extremely high throughput, acustomer can, of course, purchase hardwareWeb switches from third-party vendors.

This often offer additional features such as hardware SSL acceleration.

The SAP Web Dispatcher is a small program (closely related to the ICM) without need of anadditional server with a database in the DMZ are therefore entirely

Page 390: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 390/424

27

© SAP AG 2004, Web Infrastructure for SAP Web AS

SAP Web Dispatc her : Server Selec t ion & Load Balanc ing

The SAP Web dispatcher ultimately forwards an HTTP(S) request to a specific application server.

1. The SAP Web dispatcher first uses a cookie to identify whether the request concerns a stateful application. If this isthe case, the request is sent to the application server that is processing this session.

2. Otherwise, the SAP Web dispatcher must determine whether this is a request for the ICF (“abap”) or the J2EE Engine(“j2ee”).

3. In the case of a J2EE request, the request is sent to the (internally defined) !J2EE server group, which contains allapplication servers with SAP J2EE Engines. If the request is an ABAP request, the !DIAG group is selected. Thisgroup consists of all application servers with dialog work processes. A logon group is only used if this logon group(maintained in transaction SMLG) is explicitly specified in the ICF service.

Thee SAP Web dispatcher distributes the requests in turn within the selected server group, weighted according to thecapacity of the individual servers. The capacity is calculated in the case of an ABAP request from the number of dialogwork processes and, in the case of a J2EE request, from the number of server processes. The SAP Web dispatchercollects the information about the server groups from the message server. The HTTP interface of the message serverallow you to display the information with a Web browser.

The internal structure of the SAP Web dispatcher is based on the ICM process. A profile file is also used in this caseto determine the settings with which the SAP Web dispatcher is started. You can easily copy and use the executablefile (sapwebdisp.exe) that SAP makes available for all supported operating systems to a separate host, together withthe profile.

The SAP Web dispatcher essentially only needs to know the port at which it should receive HTTP(S) requests(parameter icm/server_port_<x> ) and on which host (rdisp/mshost ) and with which HTTP port (ms/http_port ) it canaccess the message server.

You start the SAP Web dispatcher with the operating system command sapwebdisp pf=<profile file>, where you canset additional options such as trace file and trace level (see the online documentation). You stop the SAP Webdispatcher using a kill command at operating system level.

Page 391: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 391/424

28

© SAP AG 2004, Web Infrastructure for SAP Web AS

Web Dispat c her End-t o-end SSL Mode

Pro

Client authentication with X.509 certificates

End-to-end data security

Load balancer is "untrusted" component

Contra

Persistence based on client IP address only

Load balancing problems

Proxies

End-of-session

But: IP address based persistence usually OK in intranet

No logon groups

No distinction between J2EE and ABAP applications

Only one Web Dispatcher for every group of servers

Page 392: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 392/424

29

© SAP AG 2004, Web Infrastructure for SAP Web AS

Web Dispat c her SSL Term inat ion Mode

Pro

Persistence based on application session ID

Logon groups

Detection of application type (ABAP / J2EE), select correct server Request parsing and URL Filtering

System can be reached using different names

SSL re-encryption is possible

Contra

Harder to configure

Web Dispatcher becomes "trusted component"

Make sure Web Dispatcher does not become performance bottleneck

SSL re-encryption does not triple the CPU load for SSL processing. Reason: The most expensive operation in SSLprocessing is the key exchange during handshake. Afterwards, the bulk encryption/decryption is not so expensive. Keyscan be re-used in subsequent SSL sessions, but only between the same communication partners. Therefore, Web

Dispatcher and backend application server have to do the expensive handshake only once (every couple of hours) andonly have the load of bulk encryption in the mean time.

Since there are usually many browsers accessing the system at once, Web Dispatcher has to do the handshake withthem much more frequently, typically once per logon.

To evaluate how many users the SAP Web dispatcher can serve, you must take the following factors into account:

When a user sends a request, this request can open more than one HTTP connection. Depending on theapplication a request can open between one and 10 or 20 HTTP connections. The user cannot see how manyconnections the request opens.

The “think time” is also crucial to the capacity of the Web dispatcher. The think time is the time between two userdialog steps (clicks). During this time there is no active HTTP connection (depending on the timeout).

Another important parameter is the keepalive timeout (icm/server_port_<xx> or icm/keep_alive_timeout), which

specifies how long the Web dispatcher keeps the connection open for further inquiries from the request.

For more information see the online documentation SAP Web dispatcher -> Management of theSAP Library -> SAPNetWeaver-> SAP NetWeaver Configuration -> SAP Web Application Server-> Management of SAP Web Dispatcher ->

The SAP Web Dispatcher Profile Parameters -> Configuration for Large Number of Users. And note number 715400.

Page 393: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 393/424

30

Introduction

SAP Web AS Technical Requirements

SAP’s Load Balancing Solutions

Web Dispatcher ScenariosAlternative Technologies

Summary

Page 394: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 394/424

31

© SAP AG 2004, Web Infrastructure for SAP Web AS

Web Dispat c her on Appl ic at ion Server 

Web Dispatcher on central instance server or other app. server

On CI not generally

recommended forSSL termination

SSL termination imposes high load, this may not be desirable on central instance. Can useother application server or separate computer as well.

Possible scenario for Internet also, behind a reverse proxy, for example.

Page 395: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 395/424

32

© SAP AG 2004, Web Infrastructure for SAP Web AS

Simple Web Dispatc her High Ava i lab i l i ty

Web Dispatcher on central instance server for fail over

High AvailabilityCluster

Like traditional HA for SAP systems

CI must be reachable by clients at all times under same address (IP takeover)SSL termination imposes high load, this may not be desirable on central instance.

Page 396: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 396/424

33

© SAP AG 2004, Web Infrastructure for SAP Web AS

Advanced Web Dispatc her High Ava i lab i l i ty

High availabilitycluster

SAP WebDispatcher

SAP WebDispatcher

CorporateNetworkSAP Web

AS

Fail-Over 

RedundantNetwork

Infrastructure

A separate fail over cluster for Web dispatcher is the high end solution.

Another solution is shown later in the presentation: Using a network load balancer todistribute requests between multiple Web Dispatcher hosts. The load balancer also ensuresthe high availability by health checks of the Web Dispatcher nodes.

Page 397: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 397/424

34

© SAP AG 2004, Web Infrastructure for SAP Web AS

Internet 

      F      i    r    e    w

    a      l      l

SAP WebDispatcher

CorporateNetwork

      F      i    r    e    w

    a      l      l

SAP WebAS

Web Dispatc her In DMZ

Web Dispatcher is an application layer gateway, but does not

have full reverse proxy functionality.

Encrypted or

clear text traffic

End-to-end SSL or

SSL Termination

Possibly

filterrequests

Page 398: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 398/424

35

© SAP AG 2004, Web Infrastructure for SAP Web AS

Internal Network DMZ Internet Service Network  

Internet 1

R/3, FI, HRetc.

      F      i    r    e    w

    a      l      l

Database

SAP WebAS

SAP WebDispatcher

      F      i    r    e    w

    a      l      l

      F      i    r    e    w

    a      l      l

Layered Secur i ty Zones

Enhanced Security for internal network

RecommendedInternetsystems

Back-endsystems

Page 399: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 399/424

36

© SAP AG 2004, Web Infrastructure for SAP Web AS

Web Dispatc her For Mult ip le SAP Web AS

Multiple Web Dispatchers on different (virtual) IP addresses

Recommended

https://web1

SAP WebDispatcher

Corporate

Network

SAP Web

AS

SAP Web

DispatcherCorporate

Network

SAP WebAS

443

443

IP1

IP2

https://web2

Need one Web Dispatcher for every system.

Need separate certificates, because server names differ.Really need separate IP addresses for SSL, because Host header cannot be used withSSL. For clear text HTTP you can do with one IP address and DNS aliases.

Page 400: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 400/424

37

© SAP AG 2004, Web Infrastructure for SAP Web AS

Web Dispat c her For Mult ip le SAP Web AS (I I)

Multiple Web Dispatchers on different TCP ports

Not recommended J2EE session cookies

overwrite each other.

SSL to port other than 443often not possible

https://web

SAP WebDispatcher

CorporateNetwork

SAP WebAS

SAP WebDispatcher

CorporateNetwork

SAP WebAS

443

444

https://web:444IP

Cookies do not distinguish between servers on the same host but on different ports.

J2EE engine sets session cookie to path "/", therefore the cookies will overwrite each other.Perhaps there is a way to configure this.

Another reason holds for systems in the Internet: Internet proxies often block outgoing SSLtraffic to ports other than 443. For example, SAP's proxy does this.

Too bad, because we could use the same server certificate for both systems.

Page 401: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 401/424

38

Introduction

SAP Web AS Technical Requirements

SAP’s Load Balancing Solutions

Web Dispatcher ScenariosAlternative Technologies

Summary

Page 402: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 402/424

39

© SAP AG 2004, Web Infrastructure for SAP Web AS

Other Web In f ras t ruc t ure Techno log ies

Alternative Technologies

Hardware load balancer ("Content Delivery Networking")

Reverse proxy (optionally with authentication etc.)

Standard Web server integrates SAP Web AS services

Pro

Additional features

Re-use existing infrastructure

Unified Web infrastructure for all Web systems (SAP and non-SAP)

Contra

Cost

Less integrated with SAP Web AS

Configuration, operation, maintenance requires special expertise

In customers networks you usually find already existing infrastructure were the SAP WebAS can be integrated.

These infrastructures are building up by alternative technologies to the SAP InfrastructureTechnologies like the SAP Web Dispatcher.

The main advantages of reusing the existing technologies are generally associated withthe homogenization of these Web technologies across the enterprise.

The main disadvantages reside in the lack of integration with SAP NetWeaver scenarios interms of resource optimization and configuration knowledge.

Page 403: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 403/424

40

© SAP AG 2004, Web Infrastructure for SAP Web AS

Netw ork Load Balancer  

MessageServer

Central

Instance

DialogInstance

Dialog

Instance

RDBMS

SSL

http://shop.abc.com

Web Switch

Load BalancingSession Persistence

Manual configuration

Same URL for

all AppServers

Either End-to-end SSL

or SSL termination,possibly re-encryption

Page 404: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 404/424

41

© SAP AG 2004, Web Infrastructure for SAP Web AS

Netw ork Load Balancer  

Technology Options

Simple load balancing switch (layer 2-4) End-to-endSSL

Web Switch (layer 2-7) without SSL termination End-to-endSSL

Web Switch (layer 2-7) with SSL accelerator SSLTermination

Off-the-shelve solutions, appliance type

Integrated with network management systems

Standard high availability solutions

Page 405: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 405/424

42

© SAP AG 2004, Web Infrastructure for SAP Web AS

Internet 

SAPWeb AS

Web Switch

      F      i    r    e    w

    a      l      l

      F      i    r    e    w

    a      l      l

Direc t Acc ess to Web AS Through Web Sw i tc h

Load BalancingSession Persistence

Request Filtering

End-to-end SSL orSSL termination

High availability

solution

Page 406: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 406/424

43

© SAP AG 2004, Web Infrastructure for SAP Web AS

Internet 

Network LoadBalancer

      F      i    r    e    w

    a      l      l

SAP WebDispatcher

SAP WebDispatcher

CorporateNetwork

      F      i    r    e    w

    a      l      l

SAP WebAS

Web Dispatc her w i th Web Sw i tc h

Load Balancing

Session PersistenceRequest Filtering

No need forsession persistence

End-to-end SSL orSSL termination

Why? Re-use existing Web switch infrastructure, but no need for complicated configuration,because Web Dispatcher handles all the intricacies of the Web AS server selection and load

balancing between several SAP Web AS.

SSL termination on Web switch OK, re-encryption by Web Dispatcher possible

SSL session ID stickiness necessary, otherwise excessive SSL handshakes.

Use load balancing with fail over capability if present.

Second firewall could also be between Web switches and Web Dispatchers, in other words,the Web Dispatchers could also be located in server network.

Could install Web dispatchers on application servers.

Not useful for SSL end-to-end

Page 407: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 407/424

44

© SAP AG 2004, Web Infrastructure for SAP Web AS

SAP WebAS

Web Server

Reverse ProxyModule

      F      i    r    e    w

    a      l      l

Static WebPages

Internet 

443

      F      i    r    e    w

    a      l      l

/sap*

other

In t egrat ion In t o Web Server / Reverse Proxy

Integrate SAP Web AS services into Web site

Optional WebDispatcher

for Scaling

Forward requests for/sap* to Web AS

Apache can handle this out-of-the-box with mod_proxy.

Web switches often have this possibility, too.IIS does not have reverse proxy functionality. You can use SAP's J2EE plug-in for Web ASJ2EE-only. Does it work for BSP applications???

BSP applications have a specialty: When you start /sap/bsp/app/start.html, BSP frameworkwill redirect you to /sap(QBSCXKJQB=)/bsp/app/start.html (with some variable charactersinside the parentheses, that constitute language, theme and possibly the session ID). TheWeb server must be prepared to handle this.

For load balancing, you can use the Web server, but watch out for complicatedrequirements of SAP Web AS session persistence. Or you use an additional WebDispatcher, either on the Web server host, or in the server network.

Page 408: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 408/424

45

© SAP AG 2004, Web Infrastructure for SAP Web AS

SAP WebAS

Web Server

Reverse ProxyModule

      F      i    r    e    w

    a      l      l

Static WebPages

Internet 

Reverse ProxyModule SAP Web

AS

      F      i    r    e    w

    a      l      l

/shop*

other

443

/sap*

In t egrat ion In t o Web Server / Reverse Proxy

Integrate multiple SAP Web AS into Web site

Not recommended

General problems with cookie overwriting (see description on slide "Web Dispatcher ForMultiple SAP Web AS" above)

Additional requirements:

In the second Web AS configure the application you are using to run on /shop using ICF. InJ2EE-only servers, make sure the application URL prefix does not conflict with first server.

Do not alter the URL path component in the Web server, for example, map all incomingrequests /C11/sap/bsp/app/start.html to /sap/bsp/app/start.html. This will break, becauseWeb AS uses path-absolute URLs to access some resources. There is no way to configureit to prepend the "/C11" to the absolute paths it generates.

Therefore, all applications must have separate paths configured in the server itself.

Consider also the MIME repository paths!

Some applications do not allow configuring their paths, most notably, J2EE application likeenterprise portal, for example. In this case it is not possible to run two such applicationsover the same Web server.

Page 409: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 409/424

46

Introduction

SAP Web AS Technical Requirements

SAP’s Load Balancing Solutions

Web Dispatcher ScenariosAlternative Technologies

Summary

Page 410: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 410/424

47

© SAP AG 2004, Web Infrastructure for SAP Web AS

Summary

SAP Web AS requires HTTP infrastructure.

Business Web applications are more demandingthan ordinary Web apps.

Web Dispatcher is SAP'sWeb Infrastructure offering.

SAP Web AS works also with standard Webinfrastructure technologies.

Page 411: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 411/424

48

© SAP AG 2004, Web Infrastructure for SAP Web AS

You should now be able to:

Understand the SAP Web infrastructure.

Understand the role it plays for the robustness,performance and cost of ownership of a businesssolution.

Build a business-ready Web Infrastructure for WebAS.

Web inf rast ruc tur e for the SAP Web AS: Lesson Summ ary

Page 412: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 412/424

Course: TADMJ1 – SAP Java EngineAdministration - Exercises 

Unit 5: SAP Web InfrastructureLesson 2: Installing the SAP WebDispatcher

Topic: Installing the SAP Web Dispatcherand configuring as a Windows service 

At the conclusion of this exercise, you will be able to:

• Install the SAP Web Dispatcher•  Set up the SAP Web Dispatcher to run as a Windows

service 

The SAP Web Dispatcher is recommended as a software loadbalancing mechanism when you use an SAP system with severalSAP Web Application Servers for web applications. This lessondescribes how to install the SAP Web Dispatcher.

Lesson Overview 

This lesson describes how to install the SAP Web Dispatcher and set it up to run as aservice on Windows.

Lesson ObjectivesAfter completing this lesson, you will be able to:  

• Install the SAP Web Dispatcher

• Set up the SAP Web Dispatcher to run as a Windows service

Once web applications are up and running, more SAP Web Application Servers may beadded to the landscape to help process the load. To balance the web application loadacross several SAP Web Application Servers, SAP offers the SAP Web Dispatcher as asoftware load balancing mechanism.

Business Example 

ABC Limited, a petrochemical company, installed the latest version of SAP system, SAPWeb Application Server. They now have several web applications running and haveadded dialog instances to help handle the load. As system administrator, you would liketo balance the load on these systems by installing the SAP Web Dispatcher.

Page 413: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 413/424

Lesson ContentsTopic: Installing the SAP Web Dispatcher and configuring as a Windows service.Solution: Installing the SAP Web Dispatcher and configuring as a Windows service.

Topic: Installing the SAP Web Dispatcher and configuring as aWindows service 

Steps to Install the SAP Web Dispatcher 

The SAP Web dispatcher lies between the Internet and your SAP System. It is the entrypoint for HTTP(s) requests into your system, which consists of one or more Webapplication servers. As a "software web switch", the SAP Web dispatcher can reject oraccept connections. When it accepts a connection, it balances the load to ensure aneven distribution across the servers.

You can use the SAP Web dispatcher in ABAP/Java systems and in pure Java systems,as well as in pure ABAP systems.

• It is also beneficial to use the SAP Web dispatcher, if you do not needsecurity functions (entry point in the DMZ, SSL, URL filtering), but you simplywant to balance the load between several SAP Web AS instances.

The SAP Web dispatcher is a program that you can run on the machine that isconnected directly to the Internet. It requires minimal configuration - you just have toenter the following data in the profile file:

• Port, on which the HTTP(s) requests are to be received (parameter

icm/server_port_<xx>)• Host and HTTP port of the SAP message server (parameter rdisp/mshost 

and parameter ms/http_port)

If you want to be able to call the Web application externally, for example using the URL www.shop.acme.com, this host name must be mapped internally to the SAP Web

dispatcher. This then forwards the HTTP(S) request to a suitable SAP Web AS.

Prerequisites for operating:

• There is a profile for the SAP Web Dispatcher.

• The HTTP port for the SAP message server is configured in the profileparameter of the SAP Web Dispatcher (profile parameter ms/http_port)

• The SAP Web Dispatcher must be able to contact the HTTP port of the SAPmessage server.

• The following services are activated in the HTTP services tree (TransactionSICF):

/sap/public/icman

/sap/public/icf_info/*

Page 414: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 414/424

 

Figure 1: Web Dispatcher Prerequisites and Profile

See the online help for information on the SAP Web Dispatcher profile and profileparameters.

Importing the SAP Web Dispatcher 

If you do not have the executable sapwebdisp on your kernel CD or you want to usethe latest version, fetch the current SAP Web dispatcher from the SAP Service

Marketplace under http://service.sap.com/patches under SAP Web AS  → SAP Web AS 

6.40  → Binary Patches  → SAP KERNEL → <OS Platform>  → Database Independent .Here you can download the packet DW.SAR, this contains the SAP Web dispatcher(sapwebdisp).

Although the SAP Web dispatcher can run in any directory, SAP recommends that youinstall it in a separate directory:

Windows: C:\Program Files\SAP\SAPWebDisp 

UNIX: /usr/sap/<SID>/sapwebdisp 

Create the directory for this and unpack program sapwebdisp into this directory. Alsocopy the associated profile file into this directory.

Page 415: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 415/424

 Figure 2: Activating ICF Service (transaction SICF)

In transaction SICF the services /sap/public/icman and /sap/public/icf_info must beactive. If either service is inactive it can be activated by selecting it and choosing menuService -> Activate .

Starting the SAP Web Dispatcher

You start the SAP Web dispatcher with the command:

sapwebdisp pf=<profile name> [-f <trace file> -t <trace level> -cleanup -shm_attach_mode <mode> -auto_restart -version]

The optional parameters have the following meaning:

• You can use -f to determine the name of the trace file. The standard is

dev_webdisp.• You can use option -t to set the trace level.

•  -cleanup means that common resources (shared memory and so on) are

released. This is necessary if the SAP Web dispatcher ran was not stopped inan orderly manner the last time it ran, but was terminated by a crash.

•  -shm_attach_mode <mode> determines what should happen to the shared

memory of the SAP Web dispatcher. Here, <mode> is a number that is a

combination of the following values (bit mask):

1. Select service

2. Activate

Page 416: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 416/424

1: Delete the shared memory of the SAP Web dispatcher (cleanup )

2: Try to connect to the shared memory (attach )

4: Create a new shared memory (create )

This results in the following possible options:

1: The shared memory is cleaned up and the SAP Web dispatcher ends.The behavior is the same as with the option of –cleanup.

2: The SAP Web dispatcher connects to the existing shared memory(attach). If this does not exist, the SAP Web dispatcher ends with an error.

3: Not useful

4: The SAP Web dispatcher creates a new shared memory. If this existsalready, the SAP Web dispatcher ends with an error. This is also thedefault value, that is, the SAP Web dispatcher behaves in this way if theoptions -shm_attach_mode <mode> and -cleanup are not used.

5: If a shared memory exists already, it is deleted. A new shared memoryis then created.

6: The system tries to attach it to an existing shared memory. If a sharedmemory does not exist, a new one is created.

7: As 5

•  -auto_restart:With this option you can enable high availability for the

SAP Web dispatcher at process level. The process is described in the helpsection High Availability of the SAP Web Dispatcher.

•  -version displays the version of the SAP Web dispatcher. The program is

not started.

Example: you usually start the SAP Web dispatcher as follows:

sapwebdisp pf=<Profile name> 

Installing the SAP Web Dispatcher as a Windows Service 

Page 417: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 417/424

 Figure 3: Installing SAP Web Dispatcher as a Windows Service

In Windows you can start the SAP Web dispatcher as a service. It will then always bestarted automatically whenever the computer is restarted.

Call the following:

ntscmgr install sapwebdisp -b <path>\sapwebdisp.exe -p "service pf=<profilefile> <options>"

<path> stands for the path in the file system where the program is stored,

<options> for more parameters as described above.

You then see the SAP Web dispatcher sapwebdisp in the list of services.

Page 418: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 418/424

Solution: Installing the SAP Web Dispatcher and

configuring as a Windows service 

Tasks: 

1. Download the latest version of the SAP Web Dispatcher to the Web DispatcherDirectory (for example C :\SAPWebDispatcher ):

a) Fetch the current SAP Web Dispatcher from the SAP Service Marketplace

under http://service.sap.com/support  under Downloads → SAP Support 

Packages  → SAP Support Packages and Patches  → Entry by 

Application Group → SAP NetWeaver Components  → SAP NetWeaver -> Kernel -> Database Independent . Here you can download the packetDW.SAR , this contains the SAP Web dispatcher (sapwebdisp.exe ).

b) Create directory C:\SAPWebDispatcher .

2. Unpack the SAP Web Dispatcher.

a) Use the following command: sapcar –xvf DW.SAR  

Note: sapwebdisp.exe can be found under the folder:

usr/sap/DEV/SYS/exe/run  as well.

Note: sapcar can be downloaded from http://service.sap.com/support  under

Downloads → SAP Support Packages  → SAP Support Packages and 

Patches → Entry by Application Group  → Additional Components -> SAPCAR -> SAPCAR 6.20 

If you have an access to training system: sapcar  is underG:/Additional_Files  

3. In transaction SICF , check that the following services are active and, if they arenot, activate them:

 /sap/public/icman  /sap/public/icf_info 

Page 419: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 419/424

 

4. Create a profile for the SAP Web Dispatcher (sapwebdisp.pfl ) and save it in theWeb Dispatcher directory.

Use the following values for the parameters:

SAPSYSTEMNAME <SID> of your SAP systemSAPSYSTEM System number that is unique on the hostrdisp/mshost Host name of your server twdf#### 

ms/http_port HTTP port of the message server

icm/server_port_0 PROT=HTTP,PORT=80

icm/server_port_1 PROT=ROUTER,PORT=443

Note: The shared memory segment where the SAP Web Dispatcher operatesmust be different from the segments of the ABAP and the Java stacks, there forthe SAPSYSTEM should be unique on this host, neither the ABAP nor the Java

SID can be used!

a) Create file (sapwebdisp.pfl ) using Notepad with above values and save inWeb Dispatcher directory.

Note: The sapwebdisp.pfl can be created also automatically. Start the WebDispatcher with the following option: sapwebdisp.exe –bootstrap and follow thewizard.

Page 420: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 420/424

 

b) Answer the following questions for your SAP system:At which port will your SAP Web dispatcher receive requests?To which SAP system are these requests forwarded?

The following parameters answer the questions:•  icm/server_port_<x>: Specifies the port at which the SAP Web

dispatcher listens for each protocol (for example, PROT=HTTP )•  rdisp/mshost : Name of the host on which the message server is

addressed

•  ms/http_port : Port at which the message server is queried using HTTPThe last two parameters specify the addressed SAP system uniquely.

Note: The SAPSYSTEM  parameter is used to create shared memory areas andmust be differentiated from all other SAP instances on the host of the SAP Webdispatcher.

5. Start the SAPWeb dispatcher with the prepared profile file. The trace should bewritten to a file, dev_sapwebdisp<##> , where ## is your group number.

a) Run the command sapwebdisp pf=<profile file> -f dev_sapwebdisp<##>  in the command prompt.

To do this, you must either specify the profile file with a complete path name,or call the command from the installation directory C:\SAPWebDispatcher .

The SAP Web dispatcher outputs a message saying that it has successfully

started.

Page 421: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 421/424

6. Check which is the release of the SAP Web dispatcher. 

a) Open the command prompt (under Microsoft Windows: Start -> Run... andthen enter cmd ) and run the command: sapwebdisp –V  

The system displays output, in which the information that you require appears at

the start (patch number). At the end of the list, all problems that are solved withthe current release status are listed (with associated SAP Notes).

7. Send a request that is distributed using the SAP Web dispatcher. Call the SAPJ2EE application /Calc  using your SAP Web dispatcher. 

a) In your local Web browser (in the training room), call the following URL:

http://<server with domain>:<SAP Web Dispatcher port>/Calc  

Note: The application Calculator should already be deployed or you can usesome other already deployed application.

8. Stop the SAP Web dispatcher using operating system tools.

Page 422: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 422/424

a. Determine the process ID (PID ) of your SAP Web dispatcher at operatingsystem level of your server.

You can find this number, for example, from the output when starting theSAP Web dispatcher, from the trace file dev_sapwebdisp<##> or from theWindows Task Manager.

b. Open another command prompt (in Microsoft Windows, choose Start ->Run... and enter cmd ).

Run the command sapntkill -INT <PID>  with the process ID that youhave just identified.

Page 423: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 423/424

The SAP Web dispatcher has been stopped correctly.

9. Install the SAP Web Dispatcher as a Windows service with the followingcommand:

ntscmgr install sapwebdisp –b <Drive>\<Web Dispatcher directory>\sapwebdisp.exe –p “service pf=<Drive>\<Web Dispatcher directory>\<Web Dispatcher profile> -shm_attach_mode 6” 

You have to see an appropriate message saying that the Web Dispatcher isproperly installed as a service.

Note: Do not use relative paths in the installation command, always use full paths.

Page 424: TADMJ1+ +SAP+Java+Engine+Administration

8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration

http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 424/424

 

10. Check that the service is installed in the list of services.

a) Open the services by going to the Windows Start -> Control Panel -> Administrative Tools -> Services . Check that sapwebdisp is now inthe list of services.