IIS App pool fails when you make a call onto the SAP Business One Connector web service.

Symptom

The IIS application pool hosting the SAP Business One Connector web service stops when you make a call onto web service.

The Windows event viewer log records  entries  from the IIS-W3SVC-WP event source similar to following:

The Module DLL 'C:\path\My64bit.dll' could not be loaded due to a configuration problem. 
The current configuration only supports loading images built for a x86 processor architecture.

Cause

The problem is caused by Outlook Web Access (OWA) components being loaded into every application pool on server.

Because the OWA components are 64 bit it breaks applications pools where the 32 bit compatibility mode is TRUE. The problem only applies to IIS on x64 bit systems

Resolution

Perform the steps below to ensure that the 64 bit components only get loaded into 64 bit app pools and not into 32 bit ones.

Before making any changes you should first make a backup copy of the ‘applicationhost.config’ file.

Note: While applying the resolution you may be met with a new error ”500.19 -Internal Server Error. The requested page cannot be accessed because the related configuration data for the page is invalid”.

This new error can be remedied by editing the applicationhost.config file as follows:

  1. Run up a web browser and navigate to the URL of the SAP B1 connector web service. Typically this will be something like:
    http://[MACHINE NAME]/ConnectorWS
  2. Check the Windows event viewer logs for errors similar to the following; the error source will be IIS-W3SVC-WP
    The Module DLL 'C:\path\My64bit.dll' could not be loaded due to a configuration problem. 
    The current configuration only supports loading images built for a x86 processor architecture.
  3. Match the module name found in the event viewer logs with those found in the following file:
    %windir%\system32\inetsrv\config\applicationhost.config.
  4. Add the bitness64 preCondition. For example, if the event viewer flagged owaauth.dll as causing an issue, you would search for C:\Exchange\ClientAccess\owa\auth\owaauth.dll in the applicationhost.config and change it so that this:
    path="C:\Exchange\ClientAccess\owa\auth\owaauth.dll" enabled="true" />

    Becomes:

    path="C:\Exchange\ClientAccess\owa\auth\owaauth.dll" enabled="true"  preCondition="bitness64" />
  5. Recycle the application pool and/or restart IIS in order for these changes to take effect.
Note: You will need to repeat the above five steps again and again until there are no more errors in the windows event viewer logs.

List of known OWA components

Please note that this list isn’t exhaustive

  • kerbauth.dll
  • owaauth.dll
  • AirFilter.dll
  • exppw.dll
  • RpcProxy.dll
SAP Business One Integration Brochure

SAP Business One Integration Brochure

Learn how integrating SAP Business One with other business applications or web services will save your company time and money.

Download Brochure