SOAP driver hangs if it does not receive a reply from the SOAP service

  • 7005582
  • 01-Apr-2010
  • 26-Apr-2012

Environment

Novell Identity Manager 3.6
Novell Identity Manager 3.6.1
Novell Identity Manager 3.5.1
Novell Identity Manager Driver - SOAP

Situation

Cause
SOAP driver communicates with SOAP service, but SOAP service does not provide a response back for the transaction.

How to detect this situation
If you look at the end of the trace file you see the SOAP driver sending the information to the web service but not receiving any response back from web service. Basically the SOAP driver is waiting and doing nothing.
The driver will keep on waiting till it hears back from the SOAP service, so it appears to be hang. If you try to stop the driver it won't stop (shutdown pending - green icon flashing). If you try stopping it through dxcmd it will stop but it won't come up again.

The only way to get out of this state is by restarting eDirectory and before starting the driver again, verify that the webservice is operational again.

Resolution

You can pass additional request-header to your http post by using operation-data as mentioned in the SOAP driver documentation:
https://www.novell.com/documentation/idm36drivers/soapdriver/?page=/documentation/idm36drivers/soapdriver/data/bookinfo.html
(Please refer section : 5.5.1 - Overriding the Authorization Header )

You can use following operation-data element for set "Expect:100-continue" request header (wait for 100 seconds and then continue):

<operation-data>
<request-headers remove-existing="false">
<request-header name="Expect">100-continue</request-header>
</request-headers>
</operation-data>