000037372 - After applying a patch or after upgrading RSA Identity Governance & Lifecycle 7.1.x or 7.1.1, Access Fulfillment Express (AFX) connectors remain in a "Not Deployed" state

Document created by RSA Customer Support Employee on Apr 23, 2019Last modified by RSA Customer Support Employee on Apr 29, 2019
Version 2Show Document
  • View in full screen mode

Article Content

Article Number000037372
Applies ToRSA Product Set: Identity Governance & Lifecycle
RSA Version/Condition: 7.1.0, 7.1.1
 
Issue

Access Fulfillment Express (AFX) connectors remain in a Not Deployed state after applying a patch or after upgrading RSA Identity Governance & Lifecycle 7.1.0 or 7.1.1.  The AFX server is in the Running state. Testing of the connectors succeeds.



The following INFO and ERROR level log messages show in the AFX-MAIN.log file ($AFX_HOME/esb/logs/esb.AFX-INIT.log) related to the connection on port 8089. The default location for $AFX_HOME is /home/oracle/AFX.
 



2019-04-12 11:39:25.244 [INFO] org.mule.transport.http.HttpConnector:193 - Registering listener: AFX_ASYNC_CALLBACK_LISTENER on endpointUri: http://localhost:8089/callback
2019-04-12 11:39:25.262 [ERROR] org.mule.module.launcher.application.DefaultMuleApplication:361 - null
java.net.BindException: Address already in use (Bind failed)



The following ERROR level log message shows in the mule_ee.log file ($AFX_HOME/esb/logs/mule_ee.log  ) related to the connection on port 8089.
ERROR 2019-04-11 12:53:35,248 [WrapperListener_start_runner] org.mule.module.launcher.DefaultArchiveDeployer:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ Failed to deploy artifact '15_AFX-MAIN', see below +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
org.mule.module.launcher.DeploymentStartException: BindException: Address already in use (Bind failed)
...
Caused by: org.mule.api.lifecycle.LifecycleException: Failed to start inbound endpoint "endpoint.http.localhost.8089.callback"
CauseThe bind exception error indicates that port 8089 is already in use by another application. AFX uses port 8089 for RESTful WebService connectors for receiving asynchronous callback messages.

Because the port is in use, the internal Mule HTTP connector for the AFX-MAIN app is getting destroyed and subsequently not available when attempting to connect to the Mule Management Console (MMC). 

Port 8089 is often called by Splunk for splunkd services, a monitoring application.  Other applications may also use port 8089.
ResolutionIdentify what other application or process is using port 8089 and permanently free it up for AFX. 

AFX uses the following ports:
PortUsage
61616Apache's ActiveMQ JMS port
8585Default MMC port
8444This port configured for installation on WebSphere and WebLogic. See the Installation and Upgrade on WebSphere Guide and the Installation and Upgrade on WebLogic Guide for information on port configuration when AFX is installed those platforms.  See links to relevant documentation for your deployment in the Notes field below.
8089Default port for RESTful WebService connectors for receiving asynchronous callback messages. This port will be used by endpoints which process AFX requests asynchronously to send a response back to AFX at a later point in time (once the request has been processed, for example). The response would contain information that AFX can use to determine if the request was successfully processed or if an error was encountered.
WorkaroundA temporary workaround is to modify the default port used by AFX in the afx-config.properties file ($AFX_HOME/esb/lib/user/afx-config.properties). 
 

Ensure that you choose a port that is not used by any other services.



  1. Open the afx-config.properties in a text editor.
  2. Look for the following text at line 40:


afx.async.callback.port=8089


  1. Modify the text to:


afx.async.callback.port=<unused port>


  1. Restart AFX after the change to have it take effect.


$ afx restart

 

WARNING: The proper solution is to permanently free up port 8089 for AFX's sole use. Modifying the afx-config.properties file is only a temporary solution as it will be overwritten every time a patch is applied or the system is upgraded.

NotesFor the same issue on earlier versions of the product refer to article 000032419 - After applying a patch or after upgrading RSA Identity Governance & Lifecycle 6.x or 7.0.x, Access Fulfillment Express (AFX) connectors remain in a "Not Deployed" state

Attachments

    Outcomes