user manual
292 BES Developer’s Guide
Security Management with the Security Map
Garbage Collection
VisiConnect automatically detects connection leaks by leveraging its Java
Virtual Machine (JVM) garbage collector mechanism. When an application
component terminates and the connections it uses become de-referenced, the
garbage collector calls the connection object's finalize() method.
When the garbage collector calls the finalize() method, if VisiConnect
determines the application component has not closed the connection, the
server automatically closes the connection by calling the resource adapter's
ManagedConnection.cleanup() method; VisiConnect behaves as it would had
it received a CONNECTION_CLOSED event upon proper closure of the
application component connection.
Idle Timer
Because the garbage collector does not behave in a predictable manner and
may in fact never be called, VisiConnect provides a second connection leak
detection method, the idle timer. The idle timer allows VisiConnect to track the
last time each connection was used. You can configure the idle timer for each
connection to an EIS using the Borland Enterprise Server Deployment
Descriptor Editor. For more information, refer to "Using the Deployment
Descriptor Editor" in the User's Guide.
When an application component obtains a connection for usage but is not
actively using it, the idle timer starts ticking. As a precaution against closing a
connection that is actually active, when a connection has reached its
configured maximum limit, VisiConnect does not automatically close the
connection. Instead, VisiConnect waits to close the connection that has
exceeded its idle time until it is absolutely necessary to do so.
If the connection pool for a resource adapter has exceeded its maximum
number of allocated connections and there are no allocated connections in the
free pool, a connection request fails. At times, connections exist that have
been leaked and not been put back on the free pool, even though they are
inactive. In this scenario, VisiConnect closes connections that have exceeded
their maximum idle time at the time of a connection request so that the request
succeeds.
Security Management with the Security Map
The Security Map enables the definition of user roles that can be
1 Used directly with the EIS for container-managed sign-on (use-caller-
identity).
2 Mapped to an appropriate resource role for container-managed sign-on
(run-as).
In the first case, when the user role identified at run time is found in the
mapping, the user role itself is used to provide security information for
interacting with an EIS. In the second case, when the user role identified at run










