My Dear Debuggers,
Last week I worked on an interesting case with a connectivity problem between Process Designer (PD) and Process Center (PC).
The user explained that he was able to set up a new environment and is now trying to connect from Process Designer to Process Center. However, this step is failing with the following exception (pop-up in Process Designer):
The ae.log from the PD_install_root shows the exception:
[main] ERROR com.lombardisoftware.client.ae.core.TWAbstractPlugin - An error has occurred.
javax.jms.JMSException: CWSIA0241E: An exception was received during
the call to the method JmsManagedConnectionFactoryImpl.createConnection:
com.ibm.websphere.sib.exception.SIResourceException: CWSIT0006E: It was
not possible to contact any of the specified bootstrap servers. Please
see the linked exception for further details. Bootstrap connections
were attempted to:
Caused by: com.ibm.websphere.sib.exception.SIResourceException:
CWSIT0007W: It is not possible to contact the bootstrap server at
XXXX:7287:BootstrapSecureMessaging because of exception: com.ibm.websphere.sib.exception.SIResourceException:
CWSIC1001E: A client attempted to connect with a remote messaging
engine (XXXX:7287 - BootstrapSecureMessaging) but the connection cannot be completed.
Ensure the messaging engine is started: exception
An unexpected condition caused a network connection to host
10.152.24.124 on port 7287 using chain BootstrapSecureMessaging to
Caused by: com.ibm.ws.sib.jfapchannel.JFapHeartbeatTimeoutException:
Connection dropped after heartbeat request went unacknowledged
Caused by: java.net.SocketTimeoutException: Socket operation timed out
before it could be completed
Obviously, there is connection issue while the client is trying to contact the bootstrap server at port 7287 which apparently relates to BootstrapSecureMessaging.
In a discussion the user mentions that he has secured his environment and ports have been closed. This might be the root cause in this case, as I assumed.
Now, what is this port 7287 standing for?
One option is to check the SystemOut.log of all Cluster Members. In this example, I can see specific lines related to ports around 7287:
AppClusterMember1: SIB_TCP_JFAP_SSL is listening on port 7286
MEClusterMember1: SIB_TCP_JFAP_SSL is listening on port 7287
SupClusterMember1: SIB_TCP_JFAP_SSL is listening on port 7288
According to that it seems that MEClusterMember is using this port for SIB_TCP_JFAP_SSL.
KnowledgeCenter might give additional hints. Hereby, the following resource shows which Process Center ports are accessed by Process Designer:
The actual ports depend on the individual setup and you can determine the ports used by your Process Center environment via WAS Admin console (select the appropriate cluster member):
Server Types > WebSphere application servers > server_name > Communications > Ports
SIB_TCP_JFAP_SSL stands for the SIB_ENDPOINT_SECURE_ADDRESS and patient’s WAS Admin console reveals that port 7287 was set at:
Server Types > WebSphere application servers > MEClusterMember1 > Communications > Ports
I suggested to check if this port is closed.
There are several options to check which ports are open. For instance you might use "telnet host port" for the specific port running from your commandline. Or you can use:
netstat -an (Windows)
netstat -tanp | grep LISTEN (Linux)
Good one! Tests show that this port is closed in customer’s environment.
Of course, all the required ports stated in the table above should be opened for a successful PD-PC connection and opening the 7287 port helped the user. Note, the ports for all the nodes should be opened (check all appropriate Cluster Members).
Also, consider to verify that nothing else is blocking the ports (like AntiVir software).
Another asset to check is the provider endpoints for the TWClientConnectionFactory (WAS Admin Console):
Resources > JMS > Topic connection factories > TWClientConnectionFactory > Provide endpoints
Here, the URLs and ports should point at the MEClusterMembers (e.g. 7287).
And if it does not, take two of these and call me in the morning.