Professional Documents
Culture Documents
SAP Exchange
Infrastructure 3.0:
Java Proxy Runtime 3.0
- J2EE Integration
Document Version 1.1 May, 2005
SAP AG
Neurottstrae 16
69190 Walldorf
Germany
T +49/18 05/34 34 24
F +49/18 05/34 34 20
www.sap.com
countries all over the world. All other product and service names
mentioned are the trademarks of their respective companies.
Data contained in this document serves informational purposes
only. National product specifications may vary.
These materials are subject to change without notice. These
materials are provided by SAP AG and its affiliated companies
("SAP Group") for informational purposes
only, without representation or warranty of any kind, and SAP
Group shall not be liable for errors or omissions with respect to
the materials. The only warranties for SAP Group products and
services are those that are set forth in the express warranty
statements accompanying such products and services, if any.
Nothing herein should be construed as constituting an additional
warranty.
Disclaimer
Some components of this product are based on Java. Any
code change in these components may cause unpredictable
Typographic Conventions
Type Style
Example Text
Represents
Words or characters that
appear on the screen. These
include field names, screen
titles, pushbuttons as well as
Cross-references to other
documentation
Example text
Emphasized words or
phrases in body text, titles of
graphics and tables
EXAMPLE TEXT
Example text
<Example text>
EXAMPLE TEXT
Icons
Icon
Meaning
Caution
Example
Note
Recommendation
Syntax
1 Preface..........................................................................................5
2 J2EE Integration ..........................................................................5
2.1 Prerequisites .......................................................................................... 6
2.2 Installing Java Proxy Runtime as Part of the SAP XI 3.0 Adapter
Framework ....................................................................................................... 6
2.3 Configuring Java Proxy Runtime ............................................................ 7
2.3.1
2.3.2
2.3.3
2.3.4
2.3.5
2.3.6
2.4
2.4.1
2.4.2
2.4.3
2.4.4
2.5
2.5.1
2.5.2
2.5.3
2.6
2.6.1
2.6.2
2.6.3
May 2005
1 Preface
This document describes how the Java Proxy Runtime (JPR) of SAP XI 3.0 SPS4 or
higher integrates into SAP J2EE Engine 6.40. Two scenarios are discussed; an
outbound scenario and an inbound scenario (also known as client and server
scenario).
In the outbound use case, an application uses proxy beans to send request messages
and, in some cases, to receive response messages. The proxy beans, in turn, call the
Java Proxy Runtime to connect to the Messaging Service (MS) of the Adapter
Framework which sends the messages to the Integration Server.
In the inbound use case, a proxy server application, which essentially consists of an
EJB bean that processes incoming XI messages, is provided. This bean acts as a
listener to the Messaging Service, which receives the messages from the XI Integration
Server. The proxy server bean, in turn, calls the application bean registered for the
particular inbound interface.
For each use case, certain minimum configurations are required to provide JPR and
MS with the data necessary to connect to the SAP XI landscape.
Purpose and Disclaimer
The purpose of this document is to present various information that pertains to the
usage of SAP XI Java proxies on the SAP J2EE Engine, together and in one place. It
by no means replaces the SAP NetWeaver documentation on the SAP Help Portal,
(http://help.sap.com) or other related documents, such as the installation or
configuration guides.
Although care has been taken to provide correct and current information, the author
cannot take responsibility for damages resulting from applying this information.
The information contained in this document is subject to change or addition without
advance notice.
Further Information
For further information on the Java Proxy Runtime, consult the following information
material:
For further information on the J2EE Engine, see SAP Help Portal at http://help.sap.com
Application Platform Java Technology in SAP Web Application Server
Development Manual.
2 J2EE Integration
The Java Proxy Runtime (JPR) is typically installed on a "Web AS Java system that is part
of the SAP XI 3.0 technical system landscape. Such a Java business system consists of an
SAP J2EE Engine 6.40 and one or multiple J2EE applications that use Java proxies and JPR
to connect to the Integration Server.
May 2005
2.1 Prerequisites
JPR is currently only supported on SAP J2EE Engine 6.40 SP5 or higher. Any references to
a J2EE server therefore apply to this particular implementation.
JPR requires the Messaging Service (MS) of the Adapter Framework to be installed on the
SAP J2EE Engine. Both JPR and MS are part of the SAP XI 3.0 Adapter Framework (AF).
Only with MS can JPR guarantee the quality of service Exactly Once (In Order) needed for
asynchronous messages. MS provides queuing, persistency, and monitoring of messages on
the application system. As of SAP XI 3.0, the message monitoring functionality has been
integrated into the Runtime Workbench (RWB).
As of SAP XI 3.0, JPR no longer supports J2SE (that is, stand-alone) Java
applications1.
The bean classes generated for outbound and inbound proxies are EJB 2.0 beans.
In this document, the Server Work Directory of the SAP J2EE Engine refers to
the following path:
- On stand-alone server: <SERVER_HOME>\alone
- On Cluster
<SERVER_HOME>\cluster\server0
<SERVER_HOME>\cluster\server1 etc. (on Cluster)
Note that <SERVER_HOME> denotes the root path to the SAP J2EE Engine, for
example C:\usr\sap\J2E\JC00\j2ee.
In addition, the Global XI Directory refers to the following path:
C:\usr\sap\J2E\SYS\global\xi
This path can be reached by all servers in a cluster.
In SAP XI 2.0, an exception was made for outgoing synchronous messages of J2SE
applications. This is no longer the case.
6
May 2005
of SAP XI 3.0, the SPS numbers of software components such as XI and the J2EE Engine
will be the same. This make it easier to identify corresponding SPSs.
To install AF, including JPR and MS, you can use a unified installation procedure for the
Software Deployment Manager (SDM).
To install AF individually, the following Software Component Archives (SCAs) and Software
Deployment Archives (SDAs) must be deployed using the SDM:
Two SDAs that contains external adapter libraries, which for licensing reasons, cannot
be delivered to customers by SAP.
aii_af_ra_ms_sonic_client.sda
aii_adapter_jms_provider_lib.sda
Two SCAs that contain AF libraries, services, data base tables, and applications; nn
represents the SPS number, x represents the patch level, for example,
SAPXIAFC09_0.sca
SAPXIAFCnn_x.sca (contains AF core libraries and services)
SAPXIAFnn_x.sca (contains AF applications)
These SCAs require the following development components, which are part of the standard
SAP J2EE Engine:
See also Installation Guide SAP Exchange Infrastructure Release 3.0 under
Post-Installation Activities chapter 4.2 Activities for the Adapter Engine
Checking the Connection Parameters in the Exchange Profile.
To specify the connection of a J2EE Engine to the System Landscape Directory, enter
//http:/<host>:<port>/exchangeProfile with the J2EE Engines host and port in
your browser and select Connection from the page menu.
8
May 2005
Note that you can only log into individual files if you change the settings of the LogManager,
(which you can find in the kernel tree of the server node) as follows, and restart the server.
To change the settings, you have the following options:
To view the JPR logs, use the LogViewer service and traverse the log tree under the server
instance node to node ./log/libraries/com.sap.aii.proxy for the library log, and to
node ./log/applications/com.sap.aii.proxy for the proxy server log.
For more information, see the J2EE Engine documentation on logging.
May 2005
Although jpf.registry is a text file (with a rather simple syntax), which you
could previously maintain using a simple text editor, it is now strongly
recommended that you use the new proxy server requests described in Section
2.6.2 to maintain the registry. The reason for this is that these requests use
access methods that lock and unlock the file to prevent it being overwritten by
multiple cluster nodes.
File entries are of the form:
<interface_namespace>#<interface_localname>=<bean_name>:<bean_method_name>
http\://com.sap.aii#myInterface=myBean:myMethod
10
May 2005
MS
Monitoring
Application
Class
OutboundBean
OutboundProxy
Class
JPR
(Library)
Messaging
Service (MS)
HTTP
DB
ejb-jar.xml
This descriptor essentially declares the EJB interfaces. You have to enter the names of the
generated Java interfaces.
<ejb-jar>
<description>EJB JAR description</description>
<display-name>EJB JAR</display-name>
<enterprise-beans>
<session>
<ejb-name>MyOutboundProxy_PortTypeBean</ejb-name>
<home>MyOutboundProxy_PortTypeHome</home>
<remote>MyOutboundProxy_PortTypeRemote</remote>
<ejb-class>MyOutboundProxy_PortTypeBean</ejb-class>
May 2005
11
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
</enterprise-beans>
</ejb-jar>
If you need access to the messageSpecifier values after calling the proxys
send method (see Section 2.4.3), you must deploy the proxy bean as a stateful
session bean; otherwise it is sufficient to deploy it as a stateless session bean.
ejb-j2ee-engine.xml
This descriptor essentially declares the EJB. You have to enter the name of the generated
Java bean class.
<ejb-j2ee-engine>
<enterprise-beans>
<enterprise-bean>
<ejb-name>MyOutboundProxy_PortTypeBean</ejb-name>
<session-props/>
</enterprise-bean>
</enterprise-beans>
</ejb-j2ee-engine>
application-j2ee-engine.xml
Since the generated bean and data type classes need classes of JPR and other libraries, the
following dependencies must be declared in this descriptor3. All library references are of type
weak and have the same provider name, sap.com.
<application-j2ee-engine>
<reference reference-type="weak">
<reference-target
provider-name="sap.com"
target-type="library">com.sap.aii.proxy.xiruntime
</reference-target>
</reference>
<reference reference-type="weak">
<reference-target
provider-name="sap.com"
target-type="library">com.sap.aii.messaging.runtime
If you are using SAP NetWeaver Developer Studio, you may want to check whether the ear
file generated for your application contains copies of the referenced libraries. If so, you
should use a variable class path entry SAP_USER_ADD_LIBS instead of an external entry in
the build path of your project to avoid duplicating the library files. Make sure that the path of
SAP_USER_ADD_LIBS is <SERVER_HOME>\cluster\server0\bin\ext. Refer to the
chapter Working with J2EE Libraries in the J2EE Engine documentation.
May 2005
</reference-target>
</reference>
<reference reference-type="weak">
<reference-target
provider-name="sap.com"
target-type="library">com.sap.xi.util.misc
</reference-target>
</reference>
<reference reference-type="weak">
<reference-target
provider-name="sap.com"
target-type="library">com.sap.guid
</reference-target>
</reference>
<provider-name>sap.com</provider-name>
<fail-over-enable
mode="disable"/>
</application-j2ee-engine>
May 2005
13
MessageSpecifier instance of the bean without initializing it. You must use this method to
access data written into the MessageSpecifier by JPR during the proxys send call, such
as to retrieve the ID of the last message sent. To ensure that the MessageSpecifier
returned by this method is in fact the one associated with your bean instance, the proxy bean
must be deployed as a stateful session bean (see Section 2.4.2).
As of SAP XI 3.0 SPS1, the package name of the Java Proxy Runtime was
changed from com.sap.aii.proxy.framework to
com.sap.aii.proxy.xiruntime, in order to separate its classes from the
classes used by the JCo connectivity. JCo connectivity is used, for example, by
WebDynpro applications that automatically refer to the library
WD_RUNTIME/com.sap.ide.jcb.core/lib/aii_proxy_rt.jar4.This
library is a built-in library of the J2EE Engine, deployed as software
component com.sap.aii.proxy.framework. Applications using Java
proxies for SAP XI connectivity, on the other hand, must refer to the library
aii_proxy_xirt.jar of the SAP XI Adapter Framework, which gets
deployed as software component com.sap.aii.proxy.xiruntime during
installation of the Adapter Framework. Furthermore, as of SAP XI 3.0 SPS1, the
libraries themselves refer to different versions of the SAP XI utility library.
The following table summarizes the dependencies.
Connectivity
SAP XI
JCo
com.sap.aii.proxy.xiruntime
com.sap.aii.proxy.framework
aii_proxy_xirt.jar
aii_proxy_rt.jar
aii_utilxi_misc.jar
aii_util_misc.jar
of software component
com.sap.xi.util.misc
com.sap.aii.util.misc
2.4.4 Acknowledgments
As of SAP XI 3.0 SPS1, sender applications can request acknowledgments from the XI
runtime components, which indicate whether or not the outbound message has reached, and
was processed by, the receiver application. Four types of acknowledgments can be
requested:
The reference will be made in your Java Build Path as well as in the
gen_wdp/portalapp.xml file of your WebDynpro project.
14
May 2005
While the first two acknowledgments refer merely to the transport of the message through the
XI runtime components, the latter two refer to the processing of the message on the
application level. Note that System acknowledgment and Application acknowledgment are
positive acknowledgments indicating success, while System error acknowledgment and
Application error acknowledgment are negative acknowledgments indicating failure.
To request the acknowledgments, use the following methods of the MessageSpecifier
interface (see Section 2.4.3):
public void setApplicationAckRequested (String ackListenerName);
public void setApplicationErrorAckRequested (String
ackListenerName);
public void setSystemAckRequested (String ackListenerName);
public void setSystemErrorAckRequested (String ackListenerName);
As its parameter, each method requires the name of an EJB2.0 listener bean that can
receive the requested acknowledgment message. This bean is typically deployed together
with the sender application and handles and interprets the acknowledgments on the
application level.
The listener bean name follows the same syntax as proxy beans (see Section 2.5.1).
Examples:
sap.com/MyProject/MyTestAckBean
localejbs/sap.com/MyProject/MyTestAckBean.
Analogous to a proxy bean, its home, remote, localHome and local interfaces must be
declared in the ejb-jar.xml descriptor as:
com.sap.aii.proxy.xiruntime.ack.AckListenerHome
com.sap.aii.proxy.xiruntime.ack.AckListenerRemote
com.sap.aii.proxy.xiruntime.ack.AckListenerLocalHome
com.sap.aii.proxy.xiruntime.ack.AckListenerLocal
Only then can they be generically looked up by JPR. The bean itself has to implement JPRs
AckListener interface:
com.sap.aii.proxy.xiruntime.ack.AckListener
It contains only the following method:
onAck(com.sap.aii.proxy.xiruntime.ack.AckMessage ack)
This method is declared in the beans local and localHome interfaces.
When sending a message requesting an acknowledgment, JPR will register the requested
acknowledgment and the listener bean name with the outgoing message5.
On the receiver application side, acknowledgment handling is completely transparent. When
JPR receives a message requesting an acknowledgment, it triggers the Messaging Service of
the Adapter Framework to originate the appropriate acknowledgment message
The listener bean name is stored in the messages internal hop list, which collects the SAP
XI processing nodes that the message passes on its way from sender to receiver. The hop
list is copied into each acknowledgment message, thus enabling the acknowledgment to find
its way back to the sender.
May 2005
15
(ApplicationAck with status OK or Error) as soon as the message was either successfully or
unsuccessfully processed by the receiver application6.
Upon receipt of an acknowledgment message on the sender application side, JPR looks up
the listener bean name registered in the acknowledgment message, instantiates the listener
bean, and calls the bean method onAck(). The method parameter AckMessage is an
interface that provides the following methods to access detailed information about the
acknowledgment:
String getType();
SystemAck)
IGUID getRefToMsgId(); returns the ID of the referenced message, that is, the
message that was acknowledged by this message
If, in addition to status Error, the acknowledgment type is ApplicationAck, you can use:
JPR cannot trigger negative system acknowledgments itself, because this would interfere
with the internal transaction processing of the undelivered message. Instead, JPR delegates
this task to the Messaging Service by throwing a DeliveryException.
16
May 2005
SAP XI 3.0 offers the option of configuring message splitting in the Integration
Directory, whereby multiple receivers for a single outgoing message can be
defined. If requested, each of these multiple incoming messages can send its
acknowledgment messages, resulting in multiple acknowledgments received by
the sender. Since the sender Java proxy has currently no way of knowing about
how the split was configured, it cannot determine when the complete set of
acknowledgments has arrived7. Therefore, in the case of split messages, all
acknowledgement messages are currently delivered with the status
AckRequestNotSupported.
In future versions of JPR, access to the so-called hop list of the message may be provided
which contains the complete path of XI processing nodes for the message and, in the case of
a split, its possible children.
May 2005
17
MS
Monitoring
J2EE Server
Application
Application
Class ("Inbound
ProxyImpl")
InboundProxy
Interface
ProxyServer
InboundBean
JPRBean
Messaging
System
JPR
(library)
JPR Registry
DB
ejb-jar.xml
This descriptor declares the EJBs interfaces as base interfaces of the JPR library. The
names of the interfaces <home>, <remote>, <local-home> and <local> have to be
entered exactly as shown here.
<ejb-jar>
<description>EJB JAR description</description>
<display-name>EJB JAR</display-name>
<enterprise-beans>
<session>
<ejb-name>MyInboundProxy_PortTypeBean</ejb-name>
<home>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundHome4</home>
<remote>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundRemote4</remote>
<local-home>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundLocalHome4
</local-home>
<local>com.sap.aii.proxy.xiruntime.core.AbstractProxyInboundLocal4</local>
<ejb-class>MyInboundProxy_PortTypeBean</ejb-class>
18
May 2005
HTTP
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
</enterprise-beans>
</ejb-jar>
Important Note:
As of SAP XI 3.0 SPS4, all interface names must end with the suffix 4. This
incompatible change between SPS4 and earlier releases was necessary to fix a
bug that prevented remote calls of the proxy beans8. Therefore, inbound proxy
beans that need to be called remotely must be regenerated and redeployed
using the proxy generator of SAP XI 3.0 SPS4 and the above deployment
descriptor.
application-j2ee-engine.xml
Since the generated proxy and type classes derive from JPR classes, the dependencies on
the JPR and other libraries have to be declared in this descriptor file of the EJB application9.
com.sap.aii.proxy.xiruntime
com.sap.aii.messaging.runtime
com.sap.xi.util.misc
com.sap.guid
All library references are of type weak and have the same provider name, sap.com.
ejb-j2ee-engine.xml
This descriptor may contain the JNDI name to be used for the bean. To identify this name
with the inbound interface that it implements, the WSDL name of the interface must be
registered with JPR. At present, this has to be done manually when the application is
deployed, by entering a line in your browser (see Section 2.6.2), as in the following example:
http://localhost:50000/ProxyServer/register?ns=http://com.sa
p.aii&interface=myInterface&bean=sap.com/MyProject/MyInbound
Proxy_PortTypeBean&method=myInboundProxy
The interface is specified by the fully qualified name defined in the Integration Repository.
The bean name is the JNDI name that you defined for the bean in the ejb-j2eeengine.xml descriptor file using the <jndi-name> tag. If you deployed your EJB without
defining a JNDI name, the bean name contains, by default, the prefix sap.com and your
project name10, as in the above example
sap.com/MyProject/MyInboundProxy_PortTypeBean.
The method name is specified by the Java method name derived from the operation name in
the interface's port type. As such, it is the name of the one method generated into the class
implementing the inbound interface (see Section 2.5.3). In our example, it is
myInboundProxy.
This bug only became apparent after XI 3.0 SPS2 when a bug fix was applied in the J2EE
Engines p4 service.
9
10
Note that the name of your ear-file is also derived from your project name; in our example:
MyProject.ear.
May 2005
19
As mentioned in Section 2.4.2, in addition to remote beans you can also have local beans for
your inbound application. If you want JPR to access the local bean rather than the remote
bean, supply the bean name with the prefix localejbs/ when registering the interface, as
in the following example:
http://localhost:50000/ProxyServer/register?ns=http://com.sap.a
ii&interface=myInterface&bean=localejbs/sap.com/MyProject/MyInb
oundProxy_PortTypeBean&method=myInboundProxy
11
A template of this class is provided in the jar containing the generated proxy and type
classes. It has the extension .template rather than .java, to avoid any existing classes
being overwritten when the sources are extracted from the jar file.
20
May 2005
These user groups are automatically created when a J2EE Engine is installed as a Web AS
ABAP system, because the user information can be retrieved from the R/3 system. However,
if the J2EE Engine is installed as a Web AS Java business system, you either need to create
the user groups manually, using the VisualAdmin tool, or assign existing users to the required
security roles.
To check user groups and users, access the Security Provider service in the VisualAdmin
tool. Choose the User Management tab page, and check the User Tree (preferably in the
Tree tab page) for previously-defined user groups and users. To create user groups or users,
choose the relevant buttons on the right.
The following user groups are used in MS and JPR. Note, however, that you can also assign
other users, such as Administrator users, to the security roles listed below.
User Group
User
SAP_XI_IS_SERV_USER
SAP_XI_APPL_SERV_USER
SAP_XI_ADMINISTRATOR_J2EE
SAP_XI_CONFIGURATOR_J2EE
<user names>
<user names>
SAP_XI_DEVELOPER_J2EE
<user names>
To check or change security role assignments for MS and JPR, access the Security
Provider service in the VisualAdmin tool. Choose the Runtime tab page, and click on the
following Policy Configurations entries:
sap.com/com.sap.aii.af.ms.app*MessagingSystem
Switch to the Authentication tab page, and check whether the authentication template has
the value basic12.
On the Security Roles tab page, click on each of the roles xi_af_receive and
xi_af_monitor. Role xi_af_receive is used when messages are received from the
Integration Server and should be assigned the internally-used XIISUSER, and
XIAPPLUSER, which is often declared in channel definitions of applications (see Chapter
4). Therefore, user groups SAP_XI_APPL_SERV_USER and SAP_XI_IS_SERV_USER
are automatically assigned. You may want to assign different or additional users and
groups, such as Administrators, to these roles.
sap.com/com.sap.aii.xi.proxyserver*ProxyServer
Switch to the Authentication tab page, and check whether the authentication template has
the value basic.
On the Security Roles tab page, click on each of the roles xi_jpr_list_bindings,
xi_jpr_admin and xi_jpr_register_bindings. Previously-assigned user groups
are different combinations of SAP_XI_ADMINISTRATOR_J2EE,
SAP_XI_CONFIGURATOR_J2EE and SAP_XI_DEVELOPER_J2EE (see Section 2.6.2).
You may want to assign different or additional users and groups, such as
Administrators, to these roles.
12
Sometimes, after re-installation of the Messaging Service, the initial template value may be
No instead of basic. Due to the missing authentication scheme, this disables message
reception altogether.
May 2005
21
servlet. It is strongly recommended that you use this new browser interface, since all
requests use synchronized access methods that lock and unlock the registry for each read or
write access. Otherwise, it cannot be guaranteed that the JPR registry is kept consistent on a
clustered J2EE Engine.
To register an interface and its implementing bean method, enter the following request in
your browser (on one line):
http://<host>:<port>/ProxyServer/register?
[ns=<interface_namespace>&]interface=<interface_localname>&bean=<bean
_name>&method=<bean_method_name>
The namespace parameter, ns, is optional, but all other parameters are mandatory.
http://localhost:50000/ProxyServer/register?ns=http://myNS&
interface=myInterface&bean=myBean&method=myMethod
To unregister an interface, enter the following request line:
http://<host>:<port>/ProxyServer/unregister?
[ns=<interface_namespace>&]interface=<interface_localname>[&bean=<bean
_name>&method=<bean_method_name>]
Here, the parameters for namespace and bean name together with method name are
optional.
To unregister all interfaces, enter the following request line:
http://<host>:<port>/ProxyServer/unregisterAll
To list an interface registration, enter the following request line:
http://<host>:<port>/ProxyServer/list?
[ns=<interface_namespace>&]interface=<interface_localname>
If the interface had been registered with a non-empty namespace, the namespace
must also be entered in the request. In other words, the search returns only exact
matches.
To list all currently registered interfaces in ascending lexicographical order, enter the
following request line:
http://<host>:<port>/ProxyServer/listAll
The proxy server re-reads the registry whenever it is changed, so that newlydeployed service beans are located as soon as they are registered in the file.
There is no need to restart the proxy server application or the SAP J2EE
Engine.
As of SAP XI 3.0 SPS4, the requests listed above have been assigned security roles to
prevent unprivileged users from changing or viewing the registry. The security roles are
mapped to certain user groups so that members of the specified groups are automatically
entitled to execute the corresponding requests. The following table lists the requests with
their corresponding security role and user groups (see also Section 2.6.1).
Request
Security role
User group
/register
xi_jpr_register_bindings
SAP_XI_ADMINISTRATOR_J2EE
/unregister
SAP_XI_DEVELOPER_J2EE
/unregisterAll
22
May 2005
/list
xi_jpr_list_bindings
/listAll
SAP_XI_ADMINISTRATOR_J2EE
SAP_XI_DEVELOPER_J2EE
SAP_XI_CONFIGURATOR_J2EE
A business system
In a typical landscape, you enter the following values for the technical system:
Web AS ABAP:
An arbitrary name
The name of the associated technical system (to select from the dropdown list, J2E
on <hostname> in the example above)
The related Integration Server (to select from the dropdown list)
This configuration data is accessible by JPR and MS only after the CPA cache
on your application J2EE Engine has been updated. This should be done
automatically, provided the Adapter Framework has properly registered itself
with the Integration Server at installation time13.
13
Currently, the Adapter Framework registers itself under the name af.j2e.<host>. If you
experience cache update problems, check for such a name of your host in the SLDs Content
Maintenance view, by selecting for Class XI Adapter Framework.
May 2005
23
A communication channel, which specifies the endpoint to which the Integration Server
sends messages for your particular receiver service
The receiver communication channel for Java proxies is the Messaging Service of the J2EE
Engine on which the receiving application is deployed. To specify such a channel, you need
to enter the following parameters on the Integration Builders communication channel page:
Adapter type:
Transport log:
HTTP 1.0
Message log:
XI 3.0
Host: <host>
Port: <port>
Path: /MessagingSystem/receive/JPR/XI
Authentication data:
A receiver determination that assigns the sender service one or many receiver services
For more information on these configurations, see SAP Help Portal at http://help.sap.com
Process Integration SAP NetWeaver SAP Exchange Infrastructure Design and
Configuration Time Configuration.
5 Monitoring
As of SAP XI 3.0 SPS09, the current status of JPR can be monitored using AFs unified
Adapter Monitor. This gives you a quick overview over the operational status of all SAP XI
Adapters and JPR. You can call the Adapter Monitor from the Runtime Workbench (RWB), by
using the following steps:
1. Choose Component Monitoring.
2. Under XI Components, select Adapter Engine <host>.
3. On the Status tab page, choose Monitoring.
24
May 2005
A green light indicates error-free operation. If configured to severity level Info, the JPR
trace (see Section 2.3.3) will contain information about the configuration settings used by
JPR.
A yellow light indicates that JPR is functional, but that warnings have been issued14.
These warnings should be looked up in the JPR trace and handled accordingly.
A red light indicates that a serious error has occurred, rendering JPR non-operational.
The detailed error messages can be looked up in the JPR trace as well as in the J2EE
Engines application log. Usually they contain hints on how to fix or circumvent the error.
14
For example, if the SLD is currently not accessible to retrieve the Sender Service name but
that name could be found in JPRs local cache, this condition would lead to a yellow status.
May 2005
25
Description
Proxy Server
Shows the status of the proxy server bean that handles incoming
messages; lists the JNDI name and class name of the bean.
SLD Access
Messaging Service
Logical Locking
Shows the availability of the J2EE Engines locking service; lists the
namespace (JPR) used to set logical locks on resources such as the
JPR cache and registry.
Properties
26
May 2005
Registry
Lists the full path name of, and number of entries in, the JPR registry.
Clicking on the subsequent text line opens a separate browser
window, which lists the interfaces that are currently registered. The
result is equivalent to entering the request
http://<host>:<port>/ProxyServer/listAll (see Section
2.6.2) in the browser.
Cache
Lists the full path name and contents of JPRs local cache. Note that
cache entries are only used when runtime access to the information
source is temporarily not available. Cache entries are checked and
possibly updated with each successful runtime access.
JARM
Version
Lists JPRs release level number and build date, and the path name
of one of its source files to identify the build source.
May 2005
27