My Oracle Support Banner

Glassfish Remote EJB Invocation Call Through a Firewall Hangs or is Unresponsive Once the Firewall Drops the EJB Connection (Doc ID 1276760.1)

Last updated on JANUARY 31, 2023

Applies to:

Oracle GlassFish Server - Version 2.0 and later
Information in this document applies to any platform.


Let's take the scenario that you have a web application deployed to the GlassFish Application Server instance I1 and this web application is designed to invoke a remote method of a remote Enterprise JavaBean (EJB) that is deployed on another GlassFish instance called R1.  Instance  R1 is on a different machine to I1 and the network between I1 and R1 has a firewall to control access.  The firewall is configured to time out idle connections, that is if the network connections to R1 have no network traffic on them in some set time period, then they are terminated.

In such a scenario, if there is active firewall configured to drop idle connections, then the invocation of the business method call on the remote EJB may fail, hanging for a long time even though it normally works without issue.  This failure to invoke the remote EJB is caused when the connection to the EJB has been inactive long enough for the firewall to terminate it.




To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!

In this Document
 Solution 1: Firewall Configuration
 Solution 2: GlassFish Configuration
 Option 1: Disabling Connection Caching Programmatically For a Specific Context
 Option 2: Globally Disabling the Connection Cache using Java System Properties
 Verifying that Connection Caching has been Disabled:
 Solution 3: Use a Different Remote Invocation Technology

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.