Connect SOAP unable to handle service unavailability exception
Proper exception handling is not being done when the endpoint URL is not up. The control goes some where else without triggering transition in the activity and shows different screen.
User is expecting the below things to happen.
i) When the service is not up then the connection time-out value should be taken into consideration to exit the soap call.
ii) When the service is not up then it should return to the current step transition in the activity.
Shows activity status as Good and successful on the screen.
Steps to Reproduce
To replicate the issue in a easy manner,
1) Call a connector in an activity and have a transition rule to check StepStatusFail.
2) Make sure that the service is not up / use a dummy URL.
3) Now when we run the activity, we can observe that the control does not comes back to the transition but it ends all the activity calls till the top at the present step and shows activity status on the screen.
The root cause of this problem is that user is getting a NoClassDefFound error in logs instead of throwing the SOAP related exceptions.
This issue is resolved by making the following change to the PRPC operating environment:
The ResouceUnAvailableException class is being used to catch and throw SOAP related fault exceptions.
As the above class is getting loaded from the prpublic.jar which is in user's tomcat's directory, there is a discrepancy for JVM while loading the class definition in runtime.
Ideally prpublic.jar should get loaded from DB, hence asked the user to remove the prpublic.jar from their tomcat directory which has resolved this issue.
0% found this useful