!--a11y-->
JCo Client Service 
Application name: com.sap.portal.runtime.application.jcoclient
This service is used to provide JCo Clients to portal components. It exists for backward compatibility reasons too.

It is recommended that you obtain the JCo connection through the connection framework.
Below is a simple scenario to explain this functionality:

In the graphic above, User 1 is logged on with two different sessions. User 2 is logged on with one session. It is assumed that both users use the R/3 System 1 and System 2. In this scenario, the JCo Client service provides the following functionality:
Step Name |
Description |
A |
If the user logs off from the portal, all JCo connections requested in this session will be closed |
B |
If the HTTP session timeout occurs, all JCo connections requested in this session will be closed |
C |
If a connection limit is defined in the JCo Client service for a specific destination, this limit is maintained for each user over several sessions. If, for example, each user is allowed to use 10 connections to R/3 System in the scenario above, than the service ensures that this limit does not exceed the sum of connections in both sessions used by User 1 |
D |
Connections are pooled. The JCo Client service maintains a timeout for connections contained in each pool. This can be configured per destination |
E |
Connections that are no more referenced in portal applications are identified by the VM garbage collector and deducted from the connection limit |
F |
All function modules accessed by a specific user are traced (configurable). This is used to generate the user definition in R/3 with the appropriate authorizations to execute a specific business package |
The service maintains a cache of repositories by the combination user/destination/HTTP session. This feature should be used by applications, which use the JCOClient service in order to avoid the multiple creation of JCo repositories. Such multiple creations should be avoided since this consumes a lot of memory.
The JCo Client service provides the following functionality:
· Provide JCo Clients to portal components
· Connection pooling
· HTTP session timeout detection
· Close connections when user logs off
· Maintain a connection limit
· Authorization trace
· Provision and caching of JCo repositories
