Can not run SAP Connector - BadImageFormatException
I get the following error when trying to perform a Full Import of the configured SAP Employee Connector
20121121,01:02:23,Change detection engine import all items failed.,Change detection engine,Warning,"Change detection engine import all items for connector Employee Connector failed with reason An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B). Duration: 00:00:00
System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
at Unify.Communicators.SapHRCommunicator.SapHrCommunicator.GetEmployees(String statusType, DateTime startDate, DateTime endDate, String infoType, IEnumerable`1 subTypes, IEnumerable`1 employeeIdRecords)
at Unify.Connectors.SapHrEmployeeConnector.ProcessGetEntities(IEnumerable`1 employeeRecords)
at Unify.Framework.ConnectorToReadingConnectorBridge.GetAllEntities(IStoredValueCollection storedValueState)
at Unify.Framework.EventNotifierReadingConnectorDecoratorBase`1.GetAllEntities(IStoredValueCollection storedValues)
at Unify.Framework.AsynchronousJobExecutor.PerformJobCallback(Object state)",Normal
I originally had the x64 version of Identity Broker installed and later realised that this is unsupported by the SAP Connector. Uninstalled it and went with an x86 version, as well as the x86 installer of the SAP connector. The net rrsult being that my environment has:
[*] Identity Broker 18.104.22.168 x86
[*] Identity Broker for SAP HCM 22.214.171.124 x86
I've attached my connector config.
The error appears to be identical to that reported at https://unifysolutions.jira.com/browse/ALDMLS-20 for previous Identity Broker versions.
After failing to resolve this in the DSEWPaC environment, I installed an x86 version of Identity Broker locally and the SAP connector and reproduced the error on my own system.
Customer support service by UserEcho
Assigning to Product Group Lead
The x64 and x86 designator are for which system the product is being installed on.
It is the x64 installer of Identity Broker that contains a version of the service that runs only in x86. As an x86 machine is already of that architecture it makes no sense to include it in that install.
In summary, you want to x64 installer and run the x86 (called something 32) service that is included.
Think that solved it.