tadmj1+ +sap+java+engine+administration
TRANSCRIPT
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
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:
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:
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
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
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
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.
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.
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
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.
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.
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
This is not new but convenient way to follow the Installation steps.
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..
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
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
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.
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.
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 18/424
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.
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.
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.
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 22/424
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
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
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
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
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
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
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 30/424
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 31/424
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 32/424
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 33/424
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.
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.
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 36/424
35
Appendix – J2EE Engine Installation
Steps
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
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
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 40/424
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
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
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 44/424
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 45/424
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 47/424
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 48/424
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 49/424
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 51/424
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.
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.
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:
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 55/424
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
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
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.
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 59/424
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 61/424
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
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
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
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
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.
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:
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.
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.
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:
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.
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.
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.
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
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!
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
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.
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.
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.
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.
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 81/424
31
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.
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:
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:
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
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.
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 87/424
5
J2EE Startup Framework
Java Cluster Architecture
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
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
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
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
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.
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.
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.
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.
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 97/424
15
J2EE Startup Framework
Java Cluster Architecture
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
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.
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
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
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
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
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 |
------------------------------------------------------------
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
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
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.
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
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
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
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”.
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
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
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
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.
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 116/424
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.
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:
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:
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
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
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
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.
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.
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)
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
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.
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
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.
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 .
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 .
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.
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.
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.
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
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
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.
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
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.
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
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.
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.
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.
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) .
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
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
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.
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.
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>
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
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).
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
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.
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.
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.
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
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).
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 158/424
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:
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
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.
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
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.
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.
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.
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.
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
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
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
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
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
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
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
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
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
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
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
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
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
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.
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.
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.
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.
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
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
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
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
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”.
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)
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.
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:
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
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
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
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.
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”.
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:
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.
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:
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:
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:
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”:
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 203/424
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:
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:
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 206/424
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 208/424
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.
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
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
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 .
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.
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.
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
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
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
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.
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
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
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
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 :
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
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
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 226/424
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.
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
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
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.
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.
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
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
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
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
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
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
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)
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
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
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
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)
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.
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
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
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
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
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
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.
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
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
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
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).
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
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.
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.
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 258/424
55
Appendix – Services index
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
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
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
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 263/424
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:
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:
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.
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
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
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.
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.
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.
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.
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:
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.
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
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
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
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:
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.
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.
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.
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.
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:
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:
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:
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.
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
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.
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.
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 290/424
28
Result
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.
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”
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)
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 294/424
32
10. Save the destination
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.
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
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:
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
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
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”:
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 301/424
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:
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:
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.
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”.
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
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 308/424
46
click Next
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.
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
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:
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 312/424
50
Click Open.
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 313/424
51
Click Next :
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 314/424
52
Click Next:
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 315/424
53
Click Next:
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 316/424
54
Click Next:
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 317/424
55
Activate the Backup and click Next
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 318/424
56
Click on the Finish button:
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.
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.
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:
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:
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
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
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.
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
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
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.
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.
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.
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.
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.
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 !!!
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
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.
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.
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.
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
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:
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:
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
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
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
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
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
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
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
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
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 350/424
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
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
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
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
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/
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!
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
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)!
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
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 360/424
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
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
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
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:
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:
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:
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
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.
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 369/424
8/6/2019 TADMJ1+ +SAP+Java+Engine+Administration
http://slidepdf.com/reader/full/tadmj1-sapjavaengineadministration 370/424
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.
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.
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
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
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
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
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.
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!
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.
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.
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
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.
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
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.
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
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).
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
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.
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
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.
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
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.
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
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.
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.
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.
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
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
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.
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.
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
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.
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
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
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
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
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.
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.
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
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.
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
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.
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/*
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.
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
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
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.
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
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.
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.
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.
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.
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.
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.