Environment
Identity Manager 4.0.1
Identity Manager 3.6.1
Identity Manager SAP HR Driver version 3.6.9 or later
Situation
SAP HR driver was created with IDM 3.6.1, during upgrade to IDM 4 the driver configuration was imported from the old environment.
Engine trace:
DirXML Log Event -------------------
Driver: \System\DriverSet\SAPHR
Channel: Subscriber
Status: Retry
Message: Code(-9006) The driver returned a "retry" status indicating that the operation should be retried later. Detail from driver: No connection to remote loader
RemoteLoader trace:
DirXML: [05/24/12 11:18:46.340]: TRACE: SAPPublicationShim: Publisher does not allow read from SAP Application Server.
DirXML: [05/24/12 11:18:46.340]: TRACE: Remote Loader: PublicationShim.init() returned:
DirXML: [05/24/12 11:18:46.341]: TRACE: <nds dtdversion="1.0" ndsversion="8.5">
<source>
<product build="20110402_121415" instance="Meta2Sap" version="3.6.3">DirXML Driver for SAP/HR</product>
<contact>Novell, Inc.</contact>
</source>
<output>
<status level="fatal" type="driver-general">
<description>null</description>
</status>
</output>
</nds>
Resolution
Checking the driver configuration with the configuration from a working IDM 4 SAP HR driver revealed that there was a missing configuration parameter. The new driver requires 'pub-heartbeat-interval' to be able to run.
Adding this to the driver configuration allowed the driver to run.
1) export existing driver
2) open export file with a text editor (not Notepad)
3) find nsap-poll-interval and past in the following after '</definition>'
<definition display-name="Publisher heartbeat interval" name="pub-heartbeat-interval" type="integer"><description>Configures the driver shim to send a periodic status message on the Publisher channel when there has been no Publisher traffic for the given number of minutes.</description><value>1</value></definition>
4) reimport the driver, select the existing driver to be updated
5) start / test driver.