Unable to make an IIOP call to an EJB deployed on EAP 7.3 (with private IP)

Solution Verified - Updated -

Issue

when making an IIOP call, the server returns an IOR (Inter-operable Object Reference) which, by default, has the host name and port of the server (if not overridden). Now if the host is having a private IP and port, these details would be embedded, in IOR, and subsequent calls from client would use these details to reach out to the ORB service.

For example::
If JBoss EAP is containerized and the EJB service is listening on port 23060 on all INET address. Also the container is published on port 30000 of the host.

If a call from the same node using localhost:30000 is made, the call results in the error:

com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl <init>
WARNING: "IOP00410201: (COMM_FAILURE) Connection failure: socketType: IIOP_CLEAR_TEXT; hostname: 0.0.0.0; port: 23060

This is because in the IOR file, the server has sent the host as 0.0.0.0 and port as 23060. It should have instead sent the port as 30000 because this is the port through which it is accessible to the outside world

Environment

  • Red Hat JBoss Enterprise Application Platform (EAP)
    • 7.x
  • Red hat OpenShift Container Platform (OCP)
    • 4.x
    • 3.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content