Beruflich Dokumente
Kultur Dokumente
Purpose
In this section you can find information about:
Installation
Describes where to find the installation guides, as well as some basic post-installation
procedures.
Starting and Stopping the J2EE Engine
Describes how to start and stop the J2EE Engine.
J2EE Engine Configuration
Describes how to configure the J2EE Engine.
J2EE Engine Administration Tools
Describes the tools for online and offline administration and configuration of the J2EE
Engine.
Core System Modules
Describes the core modules of J2EE Engine, as well as methods for their configuration.
Application Management
Describes the services mostly used for application administration.
Communication Services
Describes the services that facilitate the communication between remote objects.
Utility Services
Describes the services on the J2EE Engine that offer additional functions to system
components and client applications.
Administration of Central Services
Contains information on using, monitoring, and administrating the Central Services. The
Central Services are formed by the Enqueue and Message Services.
Connecting the J2EE Engine to DBs
Describes the Configuration Manager and Configuration Service. You use these for
connecting to the database, managing the persistent data, and editing the configuration
data of the J2EE Engine services and managers, as well as the applications deployed on
the server.
Reference
Contains reference information about the J2EE Engine.
Installation Information
Installation
You can find the SAP Web AS installation guide on SAP Service Marketplace at
service.sap.com/installNW2004s Installation.
Ports
For more information about J2EE Engine ports, see J2EE Engine Ports.
Post-Installation Procedures
Purpose
This section describes the different post-installation procedures you can perform if want to use
certain features on the J2EE Engine.
Process Flow
Creating a second administrator user
To prevent locking the administrator in case you do change its password and forget to
update the entry secure storage, we also recommend you create a second administrator
user after installing the J2EE Engine.
Add-In installation only:
Single Sign-On using logon tickets requires a client from the ticket-issuing system. For this
purpose, the J2EE Engine uses the client 000 per default. However, the system ID and
client combination must be unique when tickets are to be accepted by an SAP Web AS
ABAP system. Therefore, in an Add-In installation, you have to change the default client
(000) to a client that does not exist on the SAP Web AS ABAP system.
See also:
Using SSL and SNC for Transport Layer Security
Secure Storage for Application-Specific Data
system ID and the client where the user exists. These attributes are necessary when
maintaining the access control list in accepting systems and are therefore included in the
users logon ticket.
When the J2EE Engine is the ticket-issuing system, its system ID is used as specified in
the installation. Although the J2EE Engine does not have a client, it still needs to provide
a client value to use for logon tickets so that the tickets can be accepted by other systems,
for example, from an SAP Web AS ABAP. The default client for the J2EE Engine is 000,
however, you can explicitly set a different value to use.
The system ID and client combination must be unique when tickets are to be
accepted by an SAP Web AS ABAP system. Therefore, in an Add-In installation,
where the system IDs are the same, you must change the default client for the
J2EE Engine (000) to a client that does not exist on the SAP Web AS ABAP system.
You can specify the configuration for logon tickets either in the UME properties or in the
options for the login module CreateTicketLoginModule. The configuration to use
depends on the value of the property ume.configuration.active.
If you use the UME configuration, then to specify the J2EE Engines client set the
property login.ticket_client in the UME property sheet. Otherwise, set the
property client in the options for the login module CreateTicketLoginModule.
(The reason for these two configuration options is to provide for downward
compatibility.)
See the procedures below for information about checking the
ume.configuration.active property and where to set the logon ticket client
property.
Procedure
Checking the Property ume.configuration.active
To check the value of the property ume.configuration.active for the login
module CreateTicketLoginModule, use the Security Provider service. Check for
this parameter in both the policy configurations as well as in the user store configuration.
1. ...
1. In the Security Provider service, choose Policy Configurations.
2. Select each template or application that uses the login module
CreateTicketLoginModule, for example, the template ticket.
The login module stack for this component appears.
If you do not know which components use the login module, then check the login
module stacks for all of the components.
The table below shows the login module stack for the ticket template as it is
delivered with the J2EE Engine. In this case, the option
Flag
Options
com.sap.security.core.jaas.
EvaluateTicketLoginModule
SUFFICIENT
{ume.configuration.active=true}
BasicPasswordLoginModule
REQUISITE
{}
com.sap.security.core.jaas.
CreateTicketLoginModule
OPTIONAL
{ume.configuration.active=true}
Recommendation
If the ume.configuration.active property (or any other property) is set in the
policy configurations and not in the login module options in the user store, then we
recommend moving the setting(s) to the user store.
Reason
If properties are set in the login module options in the user store, then these
properties are inherited by the policy configurations that use the corresponding login
module.
However, if a property is set in the policy configurations, then no inheritance will take
affect, even for additional properties that are set in the user store. Therefore, we
recommend only setting options in the user store and not in the policy
configurations.
Location of
Configuration
Property to Set
Information
About How
to Set the
Property
ume.configuration.active=
true
UME Property
Sheet
login.ticket_client
See Editing
UME
Properties.
ume.configuration.active=
false
client
See
Changing the
Login Module
Options for
Creating
Logon
Tickets.
If you have installed the SAP Web Application Server with ABAP and J2EE, you
can follow the licensing procedure used in earlier releases of the SAP Web AS. The
documentation can be found in SAP License.
There are two types of SAP licenses permanent and temporary licenses
Permanent License
How you go about getting a permanent license from SAP is explained in Requesting and
Installing an SAP License.
Temporary License
If your permanent license has expired, as a short term measure you can install a temporary
license.
In the Visual Administrator choose Server 0 Services Licensing Adapter. Then
choose tab page Runtime Installed Licenses and Install subsequent temporary license.
This is valid for 28 days. By then you should have installed a permanent license again.
Note that you cannot install another temporary license, if the expired license is also
a temporary license.
A newly installed license does not take affect until the J2EE Engine has been
restarted. It is irrelevant whether the license is a permanent or a temporary license.
You can specify the configuration for logon tickets either in the UME properties or in the
options for the login module CreateTicketLoginModule. The configuration to use
depends on the value of the property ume.configuration.active.
If you use the UME configuration, then to specify the J2EE Engines client set the
property login.ticket_client in the UME property sheet. Otherwise, set the
property client in the options for the login module CreateTicketLoginModule.
(The reason for these two configuration options is to provide for downward
compatibility.)
See the procedures below for information about checking the
ume.configuration.active property and where to set the logon ticket client
property.
Procedure
Checking the Property ume.configuration.active
To check the value of the property ume.configuration.active for the login
module CreateTicketLoginModule, use the Security Provider service. Check for
this parameter in both the policy configurations as well as in the user store configuration.
3. ...
1. In the Security Provider service, choose Policy Configurations.
2. Select each template or application that uses the login module
CreateTicketLoginModule, for example, the template ticket.
The login module stack for this component appears.
If you do not know which components use the login module, then check the login
module stacks for all of the components.
The table below shows the login module stack for the ticket template as it is
delivered with the J2EE Engine. In this case, the option
ume.configuration.active=true is set in the policy configuration for the
ticket template.
Ticket Template Login Module Stack
Login Modules
Flag
Options
com.sap.security.core.jaas.
EvaluateTicketLoginModule
SUFFICIENT
{ume.configuration.active=true}
BasicPasswordLoginModule
REQUISITE
{}
com.sap.security.core.jaas.
CreateTicketLoginModule
OPTIONAL
{ume.configuration.active=true}
Recommendation
If the ume.configuration.active property (or any other property) is set in the
policy configurations and not in the login module options in the user store, then we
recommend moving the setting(s) to the user store.
Reason
If properties are set in the login module options in the user store, then these
properties are inherited by the policy configurations that use the corresponding login
module.
However, if a property is set in the policy configurations, then no inheritance will take
affect, even for additional properties that are set in the user store. Therefore, we
recommend only setting options in the user store and not in the policy
configurations.
Location of
Configuration
Property to Set
Information
About How
to Set the
Property
ume.configuration.active=
true
UME Property
Sheet
login.ticket_client
See Editing
UME
Properties.
ume.configuration.active=
false
client
See
Changing the
Login Module
Options for
Creating
Logon
Tickets.
If you have installed the SAP Web Application Server with ABAP and J2EE, you
can follow the licensing procedure used in earlier releases of the SAP Web AS. The
documentation can be found in SAP License.
There are two types of SAP licenses permanent and temporary licenses
Permanent License
How you go about getting a permanent license from SAP is explained in Requesting and
Installing an SAP License.
Temporary License
If your permanent license has expired, as a short term measure you can install a temporary
license.
In the Visual Administrator choose Server 0 Services Licensing Adapter. Then
choose tab page Runtime Installed Licenses and Install subsequent temporary license.
This is valid for 28 days. By then you should have installed a permanent license again.
Note that you cannot install another temporary license, if the expired license is also
a temporary license.
A newly installed license does not take affect until the J2EE Engine has been
restarted. It is irrelevant whether the license is a permanent or a temporary license.
Note that with a J2EE+ABAP installation ( SAP Web Application Server with ABAP
and J2EE), you have to import the ABAP license (see SAP License). You can then
ignore this section.
Prerequisites
You have installed the SAP J2EE Engine and started the Visual Administrator.
Procedure
5. ...
1. In the Visual Administrator choose Server 0 Services Licensing Adapter.
The system data that you need to request the license from the SAP Service
Marketplace appears.
Installation number (if it exists)
System ID,
System number (if it exists)
Hardware key
Current release
12. 2. Under the Internet address service.sap.com 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 request license keys.
13. 3. Enter your e-mail address in the request. The license key will be sent to you
promptly by e-mail. Alternatively, you can also download the license key from the
SAP Service Marketplace.
11.
Do not make any changes to the license key. To import the license key, the file must
not have been changed.
Result
The license has been installed.
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.
Additional Information
For more information about requesting license keys, see SAP note 94998.
Features
The Java startup and control framework provides the following set of features:
Serves as a single point of administration (starting, restarting, stopping, and monitoring) of
the J2EE Engine nodes, the Message Server and Enqueue Server processes, and the
database.
In case of cluster node failure, it restarts the corresponding node.
Allows adding remote instances to the SAP MMC snap-in.
Provides options for thread dump monitoring.
This option is critical for the analysis of problem situations (for example, the J2EE Engine is
hanging, 100% CPU load, and so on).
Provides options for viewing the JVM output (useful in case of J2EE Engine crash
situations).
Provides options for configuring the J2EE Engine and exporting that configuration in a file
for future use (Windows).
Allows viewing the trace files, the system environment, and the SAP system environment.
The procedure for starting and stopping the J2EE Engine depends on the underlying operating
system. For more information, see the relevant information:
For more information about the Java startup and control framework, see the following topics:
Architecture
Administration
Configuration
Monitoring JCmon
Troubleshooting
Procedure
6. ...
16. In the ABAP System start the ICM Monitor (transaction SMICM or by choosing
Administration System Management Monitor System Monitoring
Internet Communication Manager).
17. On the initial screen of the ICM monitor (Transaction SMICM), choose
Administration J2EE Server.
18. Choose one of the following functions:
Sending a Soft Shutdown (With or Without a Restart)
The (ABAP) dispatcher of the SAP Web Application Server sets the restart flag for the
J2EE Engine and sends the SOFTSHUTDOWN message to the J2EE Engine. The
dispatcher does not actively close the connection, the J2EE Engine must close itself
instead. If the application server 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
J2EE Engine 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 the application server is restarted, the J2EE Engine is restarted by the (ABAP)
dispatcher.
The SAP Web Application Servers dispatcher sets the restart flag for the J2EE Engine
and sends a signal to the process (shell or Java process). If the application server is
restarted, the J2EE Engine is restarted by the dispatcher.
Restart Yes/No
Prerequisites
You have administrator rights on the SAP system host.
Procedure
Starting the SAP System using the SAP Management Console
19.
20.
2. Right-click the SAP system node (C11 in this example) in the left-hand panel
and choose Start.
The SAP DB, the Central Services and the SAP J2EE instance start.
You can start only the SAP DB as follows:
1. ...
Select the database node.
In the right-hand panel, the Database Manager is displayed.
7. ...
1. Choose Start Programs SAP Management Console.
2. In the left-hand panel, right-click the SAP Systems node and choose Stop.
Starting and Stopping the SAP System in the SAP NetWeaver Developer
Studio
You can also start the SAP system from within the SAP NetWeaver Developer Studio.
Prerequisite
The SAP DB is running and online. You can start it using the SAP Management Console
(see above) or the SAP Database Manager.
Procedure
8. ...
23. 1. Choose Window Preferences SAP J2EE Engine.
24. 2. Select the option SAP J2EE engine is installed on local host and choose
Browse.
You see the system ID of the installed SAP system (e.g. C11).
25.
26.
27.
5. In the J2EE Engine view, right-click the Local engine node and choose
Start local engine.
The processes are started.
28.
icon.
In the right panel of the J2EE Engine view, the status of the process is displayed.
See also:
J2EE Startup and Control Frameworkin the Architecture Manual
Prerequisites
For more information on how to start or stop database-specific tools, see the databasespecific information in this documentation and the documentation from the database
manufacturer.
If you want to use startsap or stopsap (for example, in a script) and require the fully
qualified name of these SAP scripts, create a link to startsap or stopsap in the home
directory of the corresponding user.
If there are multiple SAP instances on one host for example, a central instance
and a dialog instance you must 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 central instance is
JC<Instance_Number>, the instance name of a J2EE dialog instance is
J<Instance_Number>.
Procedure
Starting the SAP System
29.
9. ...
1. To start the central instance and database instance:
If you have a central system that is, central instance, central services
instance and database instance on the same host enter the following on the
central system host:
startsap
This checks if the database is already running. If not, it starts the database before
starting the central services instance and the central instance.
You can start the database and SAP system separately by entering the following
commands:
startsap DB <instanceID>
startsap R3 <instanceID of central services instance>
startsap R3 <instanceID of central instance>
Make sure that you always start the database first because otherwise the central
services instance and the central instance cannot be started.
There is also the parameter J2EE that is a synonym for the parameter R3. For SAP
Web AS ABAP+J2EE systems, you can enter either the command startsap R3 or
startsap J2EE to start the SAP instance comprising both ABAP and J2EE.
If you have a distributed system that is, central instance, central services
instance and database instance on different hosts do the following:
1.
i. On the database host, enter:
startdb
2.
ii.
startsap R3
3.
iii.
startsap R3
30.
10. ...
1. Enter the following to stop dialog instances:
31.
stopsap
32.
2. To stop the central instance, the central services instance and the database
instance:
If you have a central system that is, central instance, central services
instance and database instance on the same host enter the following on the
central system host:
stopsap
This stops the central instance, the central services instance and then the database.
You can stop the SAP system and the database separately by entering the
command stopsap R3 <instanceID of central instance>, then
stopsap R3 <instanceID of central services instance> and then
stopsap <instanceID> .
Make sure that you always stop the central instance first and the central services
instance second because otherwise the database cannot be stopped.
There is also the parameter J2EE that is a synonym for the parameter R3. For SAP
Web AS ABAP+J2EE systems, you can enter either the command stopsap R3 or
stopsap J2EE to stop the SAP instance comprising both ABAP and J2EE.
If you have a distributed system that is, central instance, central services
instance and database instance on different hosts do the following:
2. ...
4.
i. On the central instance host, enter:
stopsap R3
5.
ii.
iii.
stopsap R3
6.
stopdb
Make sure that no SAP instance is running before you enter stopdb on a
standalone database server. No automatic check is made.
Features
If the J2EE Engine is in safe mode, you will see a warning message or an indicator:
In the SAP MMC, you will see an indicator in the Status field of the JControl process.
In the Visual Administrator when you log on to the J2EE Engine, a warning message will be
displayed.
If you are using Telnet client to connect to the J2EE Engine, you will see an indicator.
In the Config Tool, you can check the mode in which the J2EE Engine is running by choosing
File Safe Mode.
Activities
Use the Config Tool to enable/disable the safe mode function of the J2EE Engine:
11. ...
33. Start the configtool script file from the /usr/sap/<SID>/<instance
name>/j2ee/configtool directory.
34. Choose File Safe Mode.
A dialog box appears.
Integration
For more information about the J2EE Engine cluster and system architecture, and about
the communication between the J2EE Engine and the other components within the SAP
Web Application Server, see the Architecture Manual.
Use
The Java startup and control framework is used to start, stop, and monitor a
Java Instance.
The program JControl starts the Java instance as specified in the configuration file.
Structure
The framework consists of the following components:
JControl 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 the JLaunch processes.
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 notification from the
JControl process via named pipes to stop the cluster element, and terminates, if the
JControl stops running (fork emulation under Windows).
The Bootstrap JAVA program synchronizes the binary data from the Java database with
the local file system and creates a property file, which describes the processes of the Java
instance.
Integration
The Java startup and control framework is called in different ways according to the operating
system and installation type:
Under Windows, the SAP Management Console is used. If you choose Action Start
from the context menu of an instance containing a J2EE Engine, the JControl program
is called.
Under UNIX and OS/400 platforms, the scripts startsap and stopsap are used to call
the program.
If you start the Java instance using the SAP NetWeaver Developer Studio (NWDS), the
client integrated into the NWDS calls the JControl program.
See also:
Starting and Stopping the SAP System (UNIX)
Starting and Stopping the SAP System (Windows)
Restart processes
Process Flow
The following figure shows the flow of the actions that the Java startup and control
framework executes.
JControl is started (in Windows by the SAP start service; on UNIX platforms by the
startsap script).
JControl initializes the SAP signal handling to be able to handle signals received.
JControl starts JLaunch with the bootstrap.properties file (1). This executes the
following steps:
Creates Java Virtual Machine (JVM) arguments and initializes hosting of the
virtual machine (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 file instance.properties (3). The file
instance.properties contains the description and the arguments of the AS Java
cluster elements that are to be started.
JControl reads and creates a list of the AS Java cluster elements to be started (4).
JControl starts a JLaunch process for each cluster element (5). This executes the
following steps:
Loads the VM into its own process, initializes the VM and starts the Java
cluster element. This executes the following steps:
Starts the offline configuration manager to read the properties for the
Java Enterprise runtime from the database and to save them in various hash
tables (6).
Stops the offline configuration manager and starts the Java Enterprise
runtime with the saved properties.
Starts the service framework and the services.
See also:
J2EE Engine System Architecture
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 a
notification using a named pipe to all of the running cluster elements (2).
The JLaunch process of the Java cluster element must respond to the notification within a
defined time interval. (If this soft shutdown does not work, the JLaunch process is
completely terminated by JControl.) It triggers the shutdown of the AS Java cluster
element in the JVM and waits for its own VM to terminate (3).
JControl exits.
Process Flow
The figure below shows the process the flow of the actions that the Java startup and
control framework executes:
JControl receives the start command and starts all J2EE nodes of the instances.
JControl sends the started notification back to the client.
Process Flow
The administration of the Java startup and control framework consists of the following
procedures:
Administration and Working with the SAP MMC snap-in (for Windows only) see the help
topics in the console (that is, choose Help Help Topics)
Monitoring and interpreting the trace and log files created by the framework, analyzing the
error messages in them, incrementing/decrementing the trace levels, creating stack traces.
For more information, see Developer Trace and Log Files.
See also:
Configuration of the Java Startup and Control Framework
Monitoring JCmon
Troubleshooting
Structure
dev_jcontrol
The trace file of the JControl process.
JControl is responsible for starting, stopping and controlling the processes of the J2EE
instance.
Use the dev_jcontrol trace file when you have problems starting or stopping the whole
J2EE instance.
We recommend that you always check the end of this file for error messages
regarding the startup of JControl.
dev_<component name>
The trace file of the corresponding JLaunch process (the <component name> can be
bootstrap, bootstrap_<cluster_element_ID>, dispatcher, server<n>, sdm, jcmon,
or icm). For example, the trace file for the bootstrap process is dev_bootstrap.
std_<component name>.out
The standard and error output file of the corresponding JLaunch process (the
<component name> can be bootstrap, bootstrap_<cluster_element_ID>,
dispatcher, server<n>, sdm, or icm). For example, the output file for the bootstrap
process is std_bootstrap.out. Output and error messages from the Java VM are written
to this file.
jvm_<component name>.out
The standard and error output file of the JVM running the corresponding JLaunch process
(the <component name> can be bootstrap, bootstrap_<cluster_element_ID>,
dispatcher, server<n>, sdm, or icm). For example, the output file for the JVM running
the bootstrap process is jvm_bootstrap.out.
For more information in case of errors, see the Trace and Log Files Error Messages.
See also:
Incrementing/Decrementing the Trace Level
Creating a Stack Trace
Solution
Check if the central service instance is already running. The message server has to be up
and running on the specified host and port.
Solution
Check the javaVMLibPath property in the VM property file
(instance.properties.vmprop). The file is located in the cluster directory of the J2EE
instance. In the example below, the incorrect property line is in bold (instead of jre the
path contains lall). The <component name> can be bootstrap, dispatcher, server<n>,
and so on.
Solution
The reason for this error message is an already existing shared memory segment with
wrong size. In this case:
12. ...
39. 1. Stop the J2EE instance.
40. 2. Go to the os_libs directory of the J2EE instance.
41. 3. To invoke the shared memory cleanup, execute:
jcontrol pf=<SAP instance profile> -c.
42.
Solution
Follow the steps below until you identify the problem:
13. ...
1. Check that the J2EE Engine was started
2. Check the JControl developer trace file
3. Check the instance bootstrap developer trace file
4. Check the instance bootstrap log file from the Java VM
5. Check the output from the instance bootstrap Java class
6. Check whether the instance bootstrap terminates
In this case, check the installation log files for previous error messages and retry the
installation.
Connecting to the Message Server fails:
************************************************************
***
JStartupStartJLaunch: program =
<DIR_INSTANCE>/j2ee/os_libs/jlaunch
-> arg[00] = <DIR_INSTANCE>/j2ee/os_libs/jlaunch
-> arg[01] =
pf=<DIR_SYSTEM>/SYS/profile/<SYSTEM>_<INSTANCE>_<host>
-> arg[02] =
-file=<DIR_INSTANCE>/j2ee/cluster/instance.properties
-> arg[03] = -syncSem=JSTARTUP_WAIT_ON_<pid>
-> arg[04] = -nodeName=bootstrap
-> arg[05] = -nodeId=-1
-> arg[06] =
-jvmOutFile=<DIR_INSTANCE>/work/jvm_bootstrap.out
-> arg[07] =
-stdOutFile=<DIR_INSTANCE>/work/std_bootstrap.out
-> arg[08] = -locOutFile=<DIR_INSTANCE>/work/dev_bootstrap
-> arg[09] = -mode=BOOTSTRAP
-> arg[10] =
pf=<DIR_SYSTEM>/SYS/profile/<SYSTEM>_<INSTANCE>_<host>
-> lib path = <...>
-> exe path = <...>
************************************************************
****
Check the bootstrap log files. See 6. Check whether the instance bootstrap terminates.
If you cannot find any problems in the JControl developer trace file, create a customer
message for the BC-JAS-COR component, create an archive containing the installation
log files and all files from the <DIR_INSTANCE>/work directory, and send the archive
as an attachment to the customer message.
If you cannot find any problems in the bootstrap developer trace file, create a customer
message for the BC-JAS-COR component, create an archive containing the installation
log files and all files from the <DIR_INSTANCE>/work directory, and send the archive
as an attachment to the customer message.
<DIR_INSTANCE>/work/jvm_bootstrap.out
The following problems may have been logged:
The parameters from the instance.properties file, which the bootstrap uses, are stored in
one section called bootstrap.*. These properties and their descriptions are:
Property Name
Description
ClassPath
JavaParameters
JavaPath
MainClass
MaxHeapSize
Name
Parameters
RootPath
Type
Example
The following is an example of an instance.properties file containing the minimal
properties needed by the bootstrap to start and to recover the whole instance.properties
file:
bootstrap.ClassPath=./bootstrap/launcher.jar
bootstrap.JavaParameters=-Djco.jarm=1
bootstrap.JavaPath=C:/j2sdk1.4.2_07
bootstrap.MainClass=com.sap.engine.offline.OfflineToolStart
bootstrap.MaxHeapSize=128
bootstrap.Name=bootstrap
bootstrap.Parameters=com.sap.engine.bootstrap.Bootstrap ./bootstrap
ID0098278
bootstrap.RootPath=C:/usr/sap/J2E/JC00/j2ee/cluster
bootstrap.Type=bootstrap
Integration
The SAP NetWeaver provides the Template Installer, which enables the automatic configuration
of the J2EE Engine and the SAP NetWeaver components running on top of it. This configuration
is based on specially designed templates for different business scenarios. For more information,
see Template Installer.
Features
This guide provides general guidelines about:
See also:
For more information about configuring other SAP Web Application Server (Java) components,
see:
Template Installer
Use
When you have installed a NetWeaver system, the Template Installer makes technical
settings which are required for the technical processing of a system or a technical
scenario, e.g. system name, memory size, connectivity.
Integration
You make the technical settings with the Template Installer, immediately after installing a
NetWeaver system.
You use the Template Installer for the initial technical configuration. Use the Config. Tool to
make settings which are not in the template, or for subsequent changes to the technical
configuration.
The SAP NetWeaver installation guide contains detailed information about the templates.
Prerequisites
You have installed your system.
Features
The template installer makes the technical settings (technical configuration) using
scenario-based templates, e.g. for Master Data Management. Templates allow you to
enter the same data centrally, once only, e.g. system name, memory size, connectivity.
The system distributes this data automatically via templates in the SAP NetWeaver
system.
Activities
14. ...
43. 1. Call the NetWeaver Administrator under the path
http://<host>:<httpport>/nwa in a browser, and logon to the NetWeaver
Administrator with the user Administrator.
44. 2. Call the Template Installer with Template Installer in the Deploy &
Change tab.
The system gives you the scenario and its templates, according to your selection during
installation.
45.
46.
47.
5. Select Install.
The system makes the necessary settings.
48.
6. The system reports any configuration errors. Error message long texts are in
the log. Call the log with NetWeaver Administrator System Management
Monitoring Logs & Traces.
What is a Cluster?
The cluster is a set of processes that work together to build a scalable and reliable system. The
cluster structure is transparent to the clients and appears to them as a single server unit.
The J2EE Engine cluster consists of one or more Java dispatchers, several server processes, the
Central Services (Message Service and Enqueue Service), and the database. For more
information, see Java Cluster Architecture.
Why Clustering?
Clustering provides the following advantages:
Scalability of the system In case of high system load, you can easily enlarge the current
system.
High availability of the system The set of mechanisms that the system provides
guarantees normal system operation with its ability to transparently recover in case of
failures within the cluster.
To make use of the clustering features, you need to set up and configure the J2EE Engine
according to the deployed applications and the expected workload. For more information, see
Java Cluster Setup and Configuring the J2EE Engine Cluster.
See also:
Mandatory Configuration of the J2EE Engine
Optional Configuration of the J2EE Engine
Starting and Stopping the J2EE Engine
The
The different instances can be split up among different physical machines. The Central
Services (Message Service and Enqueue Service) are installed on one host that meets
possible requirements for high availability.
Manager (SDM).
The Central Services instance.
The Database.
A
Load Balancing
If you have a large Java cluster installation, the load is distributed between the available
dialog instances by a load balancer. This scenario with implementation of the SAP Web
Dispatcher is described in the section Load Balancing of Java Applications.
Further Information
You will find further information on the cluster architecture in the following sections:
Java Instance
Central Services
Java Startup and Control Framework
Load Balancing of Java Applications
High Availability and Failover
Process Flow
If the system load is greater than expected and the cluster that you have initially set up does not
scale well, you can resize it by:
Prerequisites
You have installed the basic components of the cluster.
Procedure
Using SAPinst, you can expand the cluster with new Java instances, which you can install
on other hosts. For more information about the installation procedure, see SAP Service
Marketplace at service.sap.com/installnw2004s.
Guidelines
For applications that access the persistence layer frequently and require a lot of server
processing, you can configure a cluster with fewer Java instances, each with more server
processes.
We recommend that the Java cluster run behind a load balancer, such as SAP Web
Dispatcher, which distributes the client requests among the Java instances. The Java
dispatcher in each Java instance provides load balancing between the server processes.
You do not need to reconfigure the load balancing. For more information, see
Load
Balancing of the SAP Web AS for J2EE Applicationsin the Architecture Manual.
Prerequisites
You have installed the basic components of the cluster.
Procedure
When you install your Java instance, SAPInst automatically configures the number of
server processes based on the hardware resources that are available.
If you need to add more server processes to an existing Java instance, you can do that
manually using the J2EE Engine Config Tool:
15. Make sure ...
49. 1. Make sure that the J2EE Engine system is stopped. For more information, see
Starting and Stopping the J2EE Engine.
50. 2. Start the Config Tool by running the configtool script file located in the
\usr\sap\<SAPSID>\j2ee\<instance name>\configtool directory.
51. 3. Select the instance to which you want to add the server process.
52. 4. Choose Server Add Server.
For more information about the Config Tool, see Config Tool.
Optional cluster configuration perform the procedures described in this section only in
case there are some problems within the cluster operation. Otherwise, we recommend that
you do not reconfigure the default settings.
Process Flow
Required Cluster Configuration
Configuring Cluster Elements follow this procedure to configure the name of the cluster
elements and the join port of the server processes.
Setting Service Load Timeout follow this procedure to configure the maximum time for
which the services on a cluster node have to be started.
Managing the Cluster Elements Startup and Shutdown use this procedure to configure
manner in which the cluster elements will be started up and shut down.
Procedure
53.
54.
55.
56.
4. Choose
Save Properties to save your changes and restart the cluster node.
Procedure
57.
58.
59.
60.
4. Choose
Example
16. ...
61.
62.
Communication Management
Purpose
This system is responsible for managing client connections to the cluster and for
managing the communication between the cluster elements.
Features
The communication management system uses several J2EE Engine managers to complete
its functions.
Cluster Manager
This manager is responsible for managing the communication between the elements in
the cluster. It updates information about the status of each cluster element and the
services running on it. The information that is kept concerns the communication status.
For more information about the different communication mechanisms offered by the
Cluster Manager, see Cluster Communication.
For more information about configuring the different communication mechanisms, see:
Ports Manager
This manager is a non-distributed system that manages ports on which sockets are
opened. It stores information about the mapping of a port and the service that uses it,
collects data about all Sockets and ServerSockets, and registers listeners on the
TCP port. The TCP ServerSockets are then opened and wait for user requests. When
a client request comes, a socket is created (the client socket type depends on the type of
the ServerSocket.) For more information, see Ports Management.
Procedure
17. ...
63. 1. Start the J2EE Engine Visual Administrator.
64. 2. Choose Dispatcher/Server Kernel Cluster Manager Properties tab.
65. 3. Modify the values of the following properties:
7.
a. Use ms.hostto specify the host (IP address,) where the message
server is running.
8.
b. Use ms.portto specify the port, on which the message server
listens for connections.
9.
c. Use ms.message.pool.size to define the size of the message
library pool.
The size of this pool can be changed for optimization purposes.
10.
Modify the value of this property if you receive an error message during cluster
startup indicating that there are errors when getting a confirmation message due to
non-responding cluster elements and the node will be rebooted.
11.
e. If necessary, you can increase the time the system waits before
triggering a liveliness check (ping/pong protocol) event if there has been no
communication between a cluster node and the message server. To do so, modify
the value of the ms.keepalive property.
12.
f. Use ms.reconnect.timeoutto increase the time period
during which you can reconnect to the message server. After this time elapses,
you are no longer able to reconnect to the message server.
66. 4. Choose
Save Properties to save your changes and restart the cluster node.
See also:
Message Info Service
Procedure
67.
68.
69.
18. ...
1. Start the J2EE Engine Visual Administrator.
2. Choose Dispatcher/Server Kernel Cluster Manager Properties tab.
3. Modify the value of the session.message.queue.size property.
This property defines the size of the session layer queue. It can be changed for
optimization purposes.
70.
4. Choose
Procedure
71.
72.
19. ...
1. Start the J2EE Engine Visual Administrator.
2. Choose Server Kernel Cluster Manager Properties tab.
You can configure the lazy communication on servers only.
73.
3. To add or remove a service from the list of services for which lazy
communication is always enabled, select the lazy.exclusive.list property
and modify its value.
74. 4. To enable the mechanism by which lazy communication is enabled according
to the amount of information exchanged for a definite period of time, modify the
following properties:
13.
a. Specify true as the value of the lazy.transparent.switch
property.
14.
b. Use lazy.time.piece to specify the time interval in
milliseconds for which the quantity of messages defined by the
lazy.threshold property has to be exchanged between two parties in order
to open a lazy connection.
If two parties open a connection, and if they succeed in exchanging more
messages than the size defined by the lazy.threshold property for the time
defined, then a lazy connection will be opened.
15.
If you specify zero (0) as a value, the lazy connection will be permanently open
(infinite timeout.)
17.
75.
See also:
Cluster Manager Properties in the Reference Manual
Connections Manipulation
Use
The management of client connections in the cluster is represented in J2EE Engine by the
Connections Manipulator Manager. This manager has an indirect connection with all
services running on the dispatcher that receive or send data outside the cluster using a
socket. It 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.
Use this procedure to configure the maximum number of user connections that a
dispatcher will be able to process at a certain moment, a timeout for these connections,
and the connections checks.
Activities
Configuring the Maximum Number of User Connections
The maximum number of user connections that the dispatcher can handle at a given
moment is calculated by the system according to the memory (heap size) allocated to the
dispatcher. By default, the Max heap size allocated to a dispatcher node is 170 MB.
Thus, after making some allowances for connections reserved for internal communication
and assuming that each connection consumes 10 KB memory, by default the maximum
number of parallel user connections that a dispatcher (with 170 MB Max heap size) can
handle is 12,403. If you change the Max heap size of a dispatcher node, the system will
dynamically determine the maximum number of allowed user connections. When this
number is exceeded, the users are rejected.
To view or change the Max heap size of a dispatcher node, use the Config Tool.
To check the maximum number of allowed user connections, use Telnet and
execute the following commands:
add debug
debugmanager ConnectionsManipulator
However, you can limit the maximum number of user connections below the number that
the system has calculated. To do so, proceed as follows:
76. Start the J2EE Engine Visual Administrator.
77. Choose Dispatcher Kernel Connections Manipulator Properties tab.
78. Modify the value of the MaxParallelUsers property.
By default the value of this property is 0, which means that the system does not take this
property into account and the maximum number of allowed user connections at a given
moment is calculated by the system as described above.
When you modify the value of this property, the behavior of the system is as follows:
If your value is bigger than the maximum value the dispatcher can afford, the
system will set its maximum value instead of your one.
If your value is less than the maximum value the dispatcher can afford, the system
will accept your value.
Note also that when you increase the Max heap size of a dispatcher node and thus the
maximum number of allowed user connections, you must also monitor the thread system
and the log files and, if necessary, reconfigure the thread system as well (for example, the
request/response times are higher that usual or the number of free threads is very small).
For more information, see Thread System.
change the balance between the CPU load and the overall system performance. You
achieve this by modifying the value of the CloseWaitCheckPeriod property.
This property determines the number of availability checks for a connection, after which
the system performs a check whether the connection is in close-wait status, that is, if the
connection is closed on the client side but is still open on the server side. If the result of
this check is positive, the system closes that connection on the server side, too. The
default value is 100, that is, after each 100 checks for availability, the system checks
whether the connection is in close-wait status.
To improve the system performance, increase the value of the CloseWaitCheckPeriod
property.
However, if you increase the CloseWaitCheckPeriod value and there are a lot of client
connections in close-wait status, then the total number of connections in the connections
queue increases. This in turn increases the CPU time needed to process this queue and
the system needs more time to detect that a connection is in close-wait status and has to
be closed on the server side.
To decrease the CPU consumption, decrease the value of the CloseWaitCheckPeriod
property.
If you decrease the CloseWaitCheckPeriod value, you increase the frequency in which
the system checks if there are connections in close-wait status. This affects negatively the
overall performance of all connections but also closes faster the connections in close-wait
status and thus decreases the CPU consumption.
The close-wait check is time consuming. Therefore, be careful when decreasing the
CloseWaitCheckPeriod value, because although this check does not block the
CPU, it blocks the thread that serves the corresponding connection. Thus, if there
are a lot of connections and you decrease the property value, this may result in
blocking too many threads and, respectively, in a system bottleneck.
Ports Management
Use
This function is implemented in the J2EE Engine Ports Manager and is used to manage ports on
which sockets are opened. It stores information about the mapping between a port and a service
that uses it, collects data about all Sockets and ServerSockets, and registers listeners to the
TCP port.
Integration
All transport services are using Ports Manager through their context to open ServerSocket or
Socket, as well as to close sockets.
When a client socket is created, it is registered in the Connections Manipulator Manager. It is
then wrapped in a TCPRunnableConnection, through which the manager takes care of reading
and writing in this socket, and sends events to the service that will process the request.
Features
Ports Manager manipulates with the sockets of a particular dispatcher. All methods from the
ServiceDispContextthat are connected with the socket manipulation are implemented on the
basis of this module.
Each service is able to open different types of sockets (ServerSocket, Socket). Different types
of services are granted permissions to apply transport layers when opening a socket. This means
that a socket with a specified queue can be opened, for example SSL/HTTPTunneling. First an
HTTP socket has to be opened: a standard HTTP request is created and sent using the data sent
through this type of socket. Respectively, the HTTP requests are received, from which the data is
extracted and disposed to the user. SSL is applied above this socket.
The different transport layers are realized as separate services that implement methods from the
service frame. Through these methods Ports Manager receives sockets with specific transport
quality from the corresponding service.
See also:
Ports Manager Properties in the Reference Manual
J2EE Engine Ports
Service Management
Purpose
The basic module of the service management system is the Service Manager, which acts
as a container in which all services in the cluster work. This manager defines the main
control implementation for each service through which the administration of a separate
service is accomplished. It is a module that runs on both server processes and dispatcher
nodes.
Features
The J2EE Engine service management has several basic features:
Resolves references between components
Provides states for starting a service in J2EE Engine ALWAYS and MANUAL.
Provides a set of properties for setting load, stop, and event timeouts. For more information,
see:
11
11
11
11
Procedure
82.
83.
84.
85.
86.
1.
2.
3.
4.
5.
21. ...
Start the J2EE Engine Visual Administrator.
Choose Server/Dispatcher Kernel Service Manager Properties tab.
From the list of properties, select LoadTimeout.
In the Value field, set the required timeout in minutes.
Choose
Save Properties to save the changes.
Procedure
87.
88.
1.
2.
tab.
89. 3.
90. 4.
91.
5. Choose
Procedure
92.
93.
94.
95.
96.
1.
2.
3.
4.
5.
22. ...
Start the J2EE Engine Visual Administrator.
Choose Server/Dispatcher Kernel Service Manager Properties tab.
From the list of properties, select the EventTimeout.
In the Value field, set the required timeout in seconds.
Choose
Save Properties to save the changes
Application Management
Purpose
This section contains:
Web Container
EJB Container
Deploy Service
Failover System
Naming System
Web Container
The following modules build the functions of the J2EE Engines container for J2EE web
applications:
HTTP Provider Service carries out the communication over HTTP protocol and provides
a functional HTTP-based web server implementation.
Web Container Service provides runtime services and life-cycle management to J2EE
web applications deployed on J2EE Engine.
Integration
HTTP Provider Service is an integral part of the J2EE Engines Web Container. It is closely
related to the Web Container Service, which represents a container that provides managed
environment for running servlets and JavaServer Pages. HTTP Provider Service is the underlying
communication module that transfers HTTP responses generated by Web applications dynamic
content back to the client.
Features
Some of the most important features of the HTTP Provider Service are:
Supports communication through proxy environment
Supports multipart requests parsing
Integrated mechanism for heterogeneous load balancing for requests to web applications
Supports virtual hosting
Supports applying gzip transfer encoding to requests and responses to static Web resources
Requests Parsing
Use
HTTP Provider Service running on the Java dispatcher parses incoming HTTP requests to
determine which server process to direct them to. Then, additional request parsing occurs
on the corresponding server process so that the appropriate module is invoked to process
it.
Features
There are two scenarios that have implication on how HTTP Provider Service parses
requests. These are:
23. ...
97. 1. HTTP Provider Service is running, Web Container Service is stopped.
98. 2. Both HTTP and Web Container services are running.
For this scenario, a request URL may contain an HTTP alias, or simply the directory path
to the requested resource (relative to the servers root directory). In either case, HTTP
Provider Service running on the dispatcher parses the request and directs it to a randomly
selected server in the cluster that has the HTTP Provider Service started on it (determined
using the J2EE Engine Load Balancing System). The HTTP Provider Service running on
server processes then parses the request to determine the location of the requested
resource, the HTTP method to be performed, and so on.
When you run HTTP Provider Service without Web Container Service, you cannot
execute PUT requests to web resources on the J2EE Engine.
Procedure
Use the Visual Administrator tool to enable heterogeneous load balancing:
24. ...
99. 1. Open the Properties tab of the HTTP Provider Service on the dispatcher.
100.
2. Assign value true to the HeterogeneousLoadBalancing property.
If you set the value false to this property, the HTTP Provider Service will perform
homogeneous load balancing based on the J2EE Engine Load Balancing System as
described in Load Balancing by the Java Dispatcher in the Architecture Manual.
101.
102.
You can configure more than one HTTP and SSL port to be opened. You must just
provide the necessary entries as a value of the Ports property as described by the
procedure below.
Procedure
Use the Visual Administrator tool to perform this configuration task:
25. ...
103. Open the Properties tab of the HTTP Provider Service running on the dispatcher.
104. Edit the Ports property. The value of this 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).
Each port configuration can contain the following attributes:
26. ...
Attribute Name
Value
Port:
SocketQueue:
BindAddress:
AcceptingThreadsCount:
Only the Port: and the Type: attributes are mandatory for a valid port configuration. If
you do not explicitly specify the rest of the attributes, their default values are
assumed. They are: SocketQueue:200, BindAddress:<an empty string>, and
AcceptingThreadsCount:10.
(Save Properties).
Result
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). If you want to further fine-tune your HTTP Provider Service, proceed with
the setup of your virtual hosts.
Once you have configured the ports, the information about the first HTTP and the first
SSL ports (exactly as they appear in the value of the Ports property of the HTTP
Provider Service) is sent to the message server and the ICM. This information is required
by the SAP Web Dispatcher for load balancing. For more information about the topic, see
Load Balancing Between Many Java Instances in the Architecture Manual. The ICM
requires this information in order to redirect requests to the J2EE Engine. For more
information about the communication protocol between ICM and Java Dispatcher, see
Communication Between the ICM and J2EE Engine.
Mapping Ports
Use
You can consider mapping ports in one of the following situations when the client-server
communication is conducted through a proxy environment:
To change the communication scheme from HTTP to HTTPS. In this case, you must map
a port on the Java dispatcher to the proxy servers host and port.
To provide support for HTTP 1.0 client requests. Such requests are not required to have
the Host header. So in cases when the client request is HTTP 1.0 compatible and does not
contain the Host header, it must be redirected to a certain host. That host name is later
returned to the client as a value of the Location header of the response message.
Procedure
You can define port mapping with the ProxyMappings property of the HTTP Provider
Service running on the Java dispatcher. Use the Visual Administrator tool to perform this
configuration task:
27. ...
105.
1. Open the Properties tab of the HTTP Provider Service running on the
dispatcher.
106.
2. Define the port mapping as a value of the ProxyMappings property. The
value represents a comma-separated list of multiple port mappings.
A single port mapping has the following format:
<Port to be mapped>=(Host:<hostname>,Port:<port
number>,Scheme:<scheme>,Override:<true/false>)
The attributes that are specified within the brackets define the host and port to which you
map the original port. It also contains the communication scheme. The possible values of
the Scheme: attribute are http or https.
By default, the Override: attribute has a value of false. That is, if the client request contains
information about the clients host and port, the HTTP Provider Service does not override
its values with the values of the corresponding attributes of the ProxyMappings property.
However, if no host and port information is present in the request, it takes the values of the
Host: and Port: attributes of the property and sets them to the response. If, on the other
hand, you set the Override: attribute to true, the values of the Host: and Port: attributes are
always set to the response even if the request contained host and port information.
Defining a Single Mapping
If you have your engine installed on host localhost and port 50000 and want to map
it to your proxy server with host name www.sap.com and port 80 , enter the
following as a value of the ProxyMappings property:
50000=(Host:www.sap.com,Port:80,Scheme:http,Override:true)
Defining Multiple Mappings
If, in addition to the above mapping, you want to open port 50001 on host localhost
on your engine and map it to port 443 on your proxy server with host name
www.sap.com for HTTPS requests, enter the following as a value of the
ProxyMappings property:
50000=(Host:www.sap.com,Port:80,Scheme:http,Override:true),50001=(Host:www.
sap.com,Port:443,Scheme:https,Override:true)
You should map only one host to a given proxy port! Multiple hosts per port
mappings may not work as expected in cases of HTTP 1.0 clients.
107.
108.
running on server process. The value of the header represents the Base64 encoded public
key of the client certificate.
If the proxy server is ICM, then the client certificate public key is passed to the J2EE
Engine in a separate block of data according to the J2EE Engine ICM communication
protocol as described in Communication Between ICM and J2EE Engine.
You need to restrict the SSL port so that it is accessible with the certificate of the
trusted proxy server only. You can do this by configuring the SSL Provider Service
using the Visual Administrator tool.
For more information on how to configure SSL on the J2EE Engine, see the
documentation of SSL Provider Service.
Description
ClientCertificateChainHeaderPrefix
ClientCipherSuiteHeaderName
ClientKeySizeHeaderName
You can configure them using the Visual Administrator tool. To do this, you must edit the
corresponding properties on the Properties tab of the HTTP Provider Service running on
the server process. For more information about the default values of the properties, see
HTTP Provider Service.
System Cookies
The J2EE Engine system cookies affected by this configuration include:
cookies named JSESSIONID (in accordance with the Java
Logon Tickets
Logon tickets are cookies that are used for user authentication and Single Sign-On on the J2EE
Engine. To set this attribute for logon tickets, set the User Management Engine (UME) property
ume.logon.httponlycookie to the value TRUE.
For more information, see
Procedure
Use the Visual Administrator tool to define the gzip compression related settings:
28. ...
109.
1. Open the Properties tab of the HTTP Provider Service running on the
server process.
110.
2. Edit any of the following properties on the Properties screen:
18.
a. Specify the minimum required length of the response message to
which gzip transfer encoding can be applied using the MinimumGZipLength
property. The value of the property is specified in bytes. By default, it is 8192
bytes.
Response messages that are shorter than the value of the MinimumGZipLength
property are sent as-is. The reason for this is that for fast local area networks, data
compression and decompression is usually slower than when the data is
transmitted uncompressed. Therefore, you can use this property to utilize your
network capacity and achieve the best communication performance.
19.
20.
When you add a file extension to the list, it must start with an asterisk, such as
*.html. All other strings are considered to be MIME types.
There is a special value for this property: this is the string [unknown]. It refers to
dynamic response messages that do not have the Content-Type header set.
21.
Virtual Hosting
Use
Virtual hosting is a concept that is commonly employed by Web servers. It refers to the option of
specifying several virtual hosts within a Web server, each responding to different URL. These are
name-based virtual hosts, that is, each host name is mapped to a single real IP address of the
server or the cluster of servers. You can do this mapping using your Domain Name System
(DNS).
Use virtual hosting to:
Run several virtual hosts acting as several different Web servers on a single real IP
address
Gain in flexibility by providing different configuration settings for each of the virtual hosts
Prerequisites
You must have configured the HTTP Provider Service listen port, so that the dispatcher is able to
receive client requests. For more information about this, see Setting up HTTP Provider Service to
Accept Incoming Requests.
Features
HTTP Provider Service has a pre-set default virtual host. It can never be removed. The default
host has default configuration settings. For more information about these settings, see the
Runtime properties of the HTTP Provider Service.
When you create a new virtual host, the system assigns the same settings to it as for the default
host.
Activities
You can perform several actions to set up your virtual host completely:
Then
29. ...
111.
1. Choose New Host at the
upper part of the screen
112.
2. Enter the name of the new
host
113.
3. Choose OK
30. ...
Create a new virtual host that has the same
settings as an already existing one
114.
1. Highlight the existing host
from the list of hosts at the left part of
the screen
115.
2. Choose Copy Host at the
upper part of the screen
116.
3. Enter the name of the new
host
117.
4. Choose OK
After you have created the new host, you can still set it up differently by changing the
values of some of its properties, set new aliases, root directory, and so on.
Create a new virtual host with default settings
Result
The most important thing you have to do after you have created the new virtual host is to
map the new hosts 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.
HTTP Alias
The HTTP alias is an alternative name to the location of a static resource on the Web
server (such as an HTML page). That is, you map a name to a directory path on the
servers files system where certain resources are located. Clients can then use it as part of
their request URLs for fast and convenient access to these directories content.
You can set HTTP aliases that have different values for different virtual hosts you have
set up on your server. This may help you organize and manage your operations if you are
running several Web sites, both dynamic and static.
http://myhost/mydir/Webpage/mypage.html
Using alias
http://myhost/myalias/mypage.html
In the above example, you access an HTML page that is located under the server root
directory. Therefore, you have the option of requesting it both using the alias and typing
in the full path to the page in the URL.
When you set alias to a resource that is located under the servers root directory,
you can specify the alias path as a relative path to the root directory, instead of
entering the absolute path.
See also:
Defining HTTP Aliases on a Virtual Host
Welcome Files
The InferNames property of HTTP Provider Service on server process provides a list of
welcome files; that is, it contains names of several HTML pages that the server searches
for when the request URL points to a directory, not a specific file. The first match is
returned to the client.
The welcome files list is provided so that you can configure the server to return a single
page to the client when a directory has been requested, instead of listing that directory. It
is also useful in cases when directory listing is forbidden on your host.
See also:
Specifying Welcome Files
Directory Listing
When you request a directory, the server searches the corresponding directory for a file
with name that appears in the welcome files list. If it finds one, it returns it. If no match is
found, the server responds either with a 403 error (Forbidden), or it lists the content of
the requested directory. This server behavior depends on the Directory List property of
the virtual host. If you select the property, the server lists the directory content if the
appropriate file is not found there. In this way, the user can decide which page to open. If
you do not select Directory List property, the user gets a 403 Forbidden error message.
This is considered to be the more secure behavior of your virtual host.
activate directory listing, respectively. For more information about the HOST shell
command, see the description of HTTP Shell commands group.
See also:
Application Alias
J2EE Engine
Installation Information
Post-Installation Procedures
Specifying the J2EE Engine Client to Use for Logon Tickets
Licensing the J2EE Engine
Requesting and Installing the SAP License
Starting and Stopping the J2EE Engine
Starting and Stopping the SAP Web AS ABAP+J2EE System
Starting and Stopping the SAP Web AS J2EE System (Windows)
Starting and Stopping the SAP Web AS J2EE System (UNIX)
Safe Mode in the J2EE Engine
Architecture of the Java Startup and Control Framework
Java Startup and Control Framework
Startup, Operation and Shutdown of a Java Instance
Shutdown and Restart of the Whole J2EE Engine Cluster
Administration of the Java Startup and Control Framework
Developer Trace and Log Files
Trace and Log File Error Messages
Incrementing/Decrementing the Trace Level
Creating a Stack Trace
Configuration of the Java Startup and Control Framework
Program Arguments
SAP Profile Parameters
Monitoring JCmon
Checking That All Processes Are Running
Restarting a Single Process
Troubleshooting
Trace and Log File Error Messages
Message Server is Not Available (in dev_jcontrol)
Invalid Shared Library Path (in dev_<component name>)
Invalid Administration Shared Memory
The J2EE Engine Does Not Come Up After 800 Seconds
1. Check That the J2EE Engine Was Started
2. Check the JControl Developer Trace File
3. Check the Instance Bootstrap Developer Trace File
4. Check the Instance Bootstrap Log File from the Java VM
5. Check the Output from the Instance Bootstrap Java Class
6. Check Whether the Instance Bootstrap Terminates
A Missing instance.properties File
J2EE Engine Configuration
Template Installer
Clustering the J2EE Engine
Java Cluster Architecture
Java Cluster Setup
Adding Java Instances
Adding Server Processes
Configuring the J2EE Engine Cluster
Configuring Cluster Elements
Connections Manipulation
Setting Service Load Timeout
Thread System
Managing Cluster Elements Startup and Shutdown
Configuring the Message Server Communication
Configuring the Session Communication
Configuring the Lazy Communication
Setting Service Stop Timeout
Runtime Information
IIOP Provider Service
Remote Object Container Service
Utility Services
Administration Services
JMX Notification Service
JMX Adapter Service
Connecting and Working Using Telnet
File Transfer Service
HTTP Tunneling Service
Java Mail Client Service
Runtime Info Provider Service
Web Application Server Integration
ABAP Communicator Service
JCo RFC Provider Service
Registering a Destination
Configuring an RFC Destination to use a Secure Network Connectio
Connecting J2EE Engine to the CCMS
Tracing JCo Calls
Administration of Central Services
Locking Adapter Service
Architecture of the Locking Adapter Service
Creating and Releasing Locks
Administration of the Locking Adapter Service Using the Console
Troubleshooting
Application Locking Service
Administration of Application Locking Service Using the Console
Message Info Service
FAILOVER
HTTP
JMS
JMSCONNECTOR
JMX
KEYSTORE
LOG
LOGIN
MONITOR
NAMING
R3STARTUP
SECURESTORAGE
SERVLET_JSP
SYSTEM
TELNET
USER
WEBSERVICES
Administration Properties
Managers
ApplicationThread Manager
ClassLoader Manager
Cluster Manager
Configuration Manager
Connections Manipulator Manager
IpVerification Manager
Log Manager
Ports Manager
Service Manager
Thread Manager
Services
ABAP Communicator Service
Deploy Service
HTTP Provider Service
HTTP Tunneling Service
IIOP Provider Service
Java Application Response Time Measurement (JARM)
Java Mail Client Service
JCo RFC Provider Service
JDBC Connector Service
JMS Provider Service
JMS Connector Service
JMX Adapter Service