Troubleshooting SOAP errors in the project pages of Business Portal in Microsoft Dynamics SL


Symptoms


When you visit any of the project related pages such as Time Entry, Expense Entry, the Communicator Webpart, Project Analyst, and Executive Project Analyst in business portal, you receive a long red error message that resembles one of the following:

Error Message 1:

Error: Attachment:Maximum retry on the connection exceeded. HRESULT=0x80004005: Unspecified error - Client:An unanticipated error occurred during the processing of this request. HRESULT=0x80004005: Unspecified error - Client:Sending the Soap message failed or no recognizable response was received HRESULT=0x80004005: Unspecified error - Client:Unspecified client error. HRESULT=0x80004005: Unspecified error faultcode=Client faultstring=Attachment:Maximum retry on the connection exceeded.

See Resolutions 6, 7, 8, and 9

Error Message 2:

Connector:Connection time out. HRESULT=0x800A1527 - Client:An unanticipated error occurred during the processing of this request. HRESULT=0x800A1527 - Client:Sending the Soap message failed or no recognizable response was received HRESULT=0x800A1527 - Client:Unspecified client error.

See Resolutions 6, 7, 8, and 9

Error Message 3:

Connector:Bad certificate. HRESULT=0x800A1529 - Client:An unanticipated error occurred during the processing of this request. HRESULT=0x800A1529 - Client:Sending the Soap message failed or no recognizable response was received HRESULT=0x800A1529 - Client:Unspecified client error. HRESULT=0x800A1529

See Resolution 6 and 9

Error Message 4:

Connector:Unspecified HTTP error. HRESULT=0x800A1518 - Client:An unanticipated error occurred during the processing of this request. HRESULT=0x800A1518 - Client:Sending the Soap message failed or no recognizable response was received HRESULT=0x800A1518 - Client:Unspecified client error. HRESULT=0x800A1518

See Resolutions 6, 7, 8, and 9

Error Message 5:

Connection failure.:No matching authorization scheme enable on connector. HRESULT=0x80004005: Unspecified error - Client:An unanticipated error occurred during the processing of this request. HRESULT=0x80004005: Unspecified error - Client:Sending the Soap message failed or no recognizable response was received HRESULT=0x80004005: Unspecified error - Client:Unspecified client error. HRESULT=0x80004005: Unspecified error

See Resolutions 7 and 9

Error Message 6:

Client:Loading the request into SoapReader failed. HRESULT=0x80070057: The parameter is incorrect. - Client:Unspecified client error. HRESULT=0x80070057: The parameter is incorrect. faultcode=Client.

See Resolutions 6, 7, 8, and 9

Error Message 7:

The application cannot open the system database.
[DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied.
Your System Administrator should run pcConfiguration on the Business Portal server to fix this problem.

See Resolutions 5 and 9

Error Message 8:

An error has been encountered.
Error: There was an error opening the System Database.(pcconnect)

See Resolutions 1, 2, 3, 4, and 9

Error Message 9:

The application cannot read the Solomon connection information.
Your System Administrator should run pcConfiguration on the Business Portal server to fix this problem

See Resolutions 1, 2, 3, 4, and 9

Error Message 10:

Cannot connect to the system database Run PCConfiguration. Invalid Username and Password.

See Resolutions 4 and 9

Error Message 11:

Error: SOAP Client: An error occured during processing of the SOAP request.
Invalid path for PCService.asmx specified in ProjectService.wsdl
Your System Administrator should run pcConfiguration - Update Web Service on the Business Portal server to fix this problem.

See Resolutions 6 and 9

Cause


For the project pages to function, Internet Information Services (IIS) must to be able to prepare and send a Simple Object Access Protocol (SOAP) request to the PCService.asmx file.  There several things that have to be setup for this to work.  If one or more of the following are not setup correctly, then it can cause the errors listed in the "Symptoms" section:

  1. The Microsoft Dynamics SL database logon information is missing or stored incorrectly in the registry. 
  2. The Microsoft.Solomon.Pma.Security.ImpersonateDLL.dll is missing, not registered, or the users do not have permissions to the file.
  3. The Identity on the application pool does not have permissions to the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Business Portal\PMA\Solomon registry key
  4. The capicom.dll is missing, not registered, of an incorrect version, or the users do not have permissions to the file
  5. The server running IIS and the SQL server must be able to communicate by using the TCP/IP protocol
  6. The path to the PCService.asx file in the ProjectService.wsdl is incorrect
    1. The path must be pointed to the IIS server name
    2. The path must include the port number
    3. The path must be a non-SSL URL
    4. If you use IIS Host Headers, the path must resolve to the correct Web site
  7. The IIS site is not using Windows Authentication (NTLM)
  8. The SessionState variable in the web.config is set incorrectly

The error message does not typically provide much information on which of the previous items may be incorrect.  So we recommended that you try all  the possible resolutions.

Resolution


Resolution 1 - Run the PCConfiguration Utility

  1. Browse out to the PCConfiguration.exe file on the Business Portal server and double-click to execute.  This is typically located in the c:\Inetpub\wwwroot\bin folder or in the C:\Inetpub\wwwroot\wss\VirtualDirectories\80\bin folder.
  2. Populate the following boxes:
    1. SQL Server Name - enter the name of the SQL server hosting the Microsoft Dynamics SL databases
    2. System DB - enter the name of the Microsoft Dynamics SL System database
    3. SQL User - enter the name of a SQL user who has access to the system database.  "SA" or "BusinessPortalUser" are common options.
    4. Password - enter the password for the user entered in the SQL User box
  3. Click Test Connection.  If you receive an error, review the values in step 2. Note: This button may not perform the action because of bug 55474.
  4. Click Update Registry.  You should receive the following message: "The data has been successfully written to the registry"
  5. Close the Utility and try the Business Portal pages again. 

Resolution 2 - Verify the Microsoft.Solomon.Pma.Security.ImpersonateDLL.dll file

  1. On the Business Portal Server, Launch Internet Information Services (IIS) Manager
  2. Right-click the Business Portal Web site and select 'Properties'
  3. Under the Home Directory tab, take note the value in the "Local Path" box
  4. Under the Home Directory tab, take note the value in the "Application Pool" combo box
  5. Click OK to close out of the 'Properties' window
  6. In IIS Manager, expand on 'Application Pools.'  Right-click the application pool found on step 4 and select 'Properties.'
  7. Under the 'Identity' tab, note the user specified as the application pool identity.
  8. Click OK to close out of the 'Properties' window. 
  9. Close out of IIS Manager
  10. In Windows Explorer, browse out to the directory found in step 3
  11. In the Bin folder, scroll down and find the Microsoft.Solomon.Pma.Security.ImpersonateDLL.dll file. 
    1. If this file is missing, you may have to reinstall Business Portal
  12. Right-click the file and select properties
  13. Under the 'Security' tab, make sure that the user from step 7 has 'Read' and 'Read & Execute' rights
  14. Click OK to close out of the 'Properties' window
  15. Right-click the file again and select 'Open With...'
  16. Select "Select the program from a list"
  17. Click "Browse..."
  18. Browse to the C:\Windows\System32 folder and find the Regsvr32.exe file and then click 'Open'
  19. Click OK.  You should receive the following message: "DllRegisterServer in C:\Inetpub\wwwroot\bin\Microsoft.Solomon.Pma.Security.ImpersonateDLL.dll succeeded."
  20. Try to load the Business Portal pages again

Resolution 3 - Verify the Registry Key

  1. On the Business Portal Server, Launch Internet Information Services (IIS) Manager
  2. Right-click the Business Portal Web site and select properties
  3. Under the Home Directory tab, note the value in the "Application Pool" combo box
  4. Click OK to close out of the Properties dialog box and close out of IIS Manager
  5. Click Start -> Run and type RegEdt32.  This should open Registry Editor
  6. Browse to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Business Portal\PMA\Solomon
    1. If this registry key is missing, see resolution 1 to run the PCConfiguration Utility
  7. Right-click "Solomon" and select "Permissions"
  8. Make sure that the user from step 3 has 'Read' permissions
  9. Try to load the Business Portal pages again

See Knowledgebase Article 912363 for more information.

Resolution 4 - Verify the capicom.dll file

  1. On the Business Portal Server, browse out to the C:\windows\system32 folder
  2. Right-click the CAPICOM.DLL file and select 'Properties'
    1. If this file is missing, you may have to copy the file from another workstation or reinstall Business Portal
  3. Under the Version tab, make sure that the File Version shows 2.1.0.1
    1. If the file version is incorrect, you may have to copy the file from another workstation or reinstall Business Portal
  4. Under the Security tab, make sure that the DOMAIN\Users group has Read and Read & Execute rights to this file.  SeeKnowledgebase Article 927618
  5. Click OK to close the Properties dialog box
  6. Right-click the file again and select 'Open With...'
  7. Select "Select the Program from a List"
  8. Click "Browse..."
  9. Browse to the C:\Windows\System32 folder and find the Regsvr32.exe file and then click Open
  10. Click OK.  You should receive the following message: "DllRegisterServer in C:\WINDOWS\system32\capicom.dll succeeded."
  11. Try to load the Business Portal pages again
  12. If you still receive the error:
    1. See resolution 1 to run the PCConfiguration Utility again.
    2. Restart IIS by clicking Start -> Run and type "IISReset"
    3. Try to load the Business Portal Pages again

See Knowledgebase Article 909144 for more information.

Resolution 5 - Verify the IIS server and the SQL server are able to communicate by using the TCP/IP protocol

  1. The TCP/IP Protocol should be enabled on both the SQL Server and on the server running IIS hosting the business portal sites. 
  2. For information about how to verify this, see Knowledgebase Article 954024

Resolution 6 - Verify the path of the PCService.asx file in the ProjectService.wsdl file

  1. On the Business Portal Server, browse out to the ProjectService.wsdl file.  This is typically located in the C:\Program Files\Microsoft Dynamics\Business Portal\Applications\PMA directory.
  2. Open the file in Notepad
  3. Scroll to the bottom of the file and find the tag that begins with "<SOAP:address location="
  4. There should be a URL to the PCService.asmx file within this tag.  It should resemble the following:

    "HTTP://machinename:80/BusinessPortal/Applications/PMA/PCService.asmx"

    This URL has several specific requirements.  Verify and correct the following items as necessary:
    1. The URL must specify the computer name (such as BPSERVER).  IP addresses (such as 192.168.0.10), localhost, or a domain name (such as BP.contoso.com) will not work for SOAP requests. 
      1. To find the computer name, click Start -> Run and type CMD
      2. Type HOSTNAME and press enter
      3. The name of the computer should be returned.  The machinename in the URL has to be set to match this.
    2. The URL should not be using SSL.  The URL should start with "http://" and not "https://"
      1. If your Web site is set up to require SSL, see Knowledgebase Article 924723 for steps on how to set up an exception to allow for a non-SSL connection to the PCService.asmx file.
    3. The URL should resolve to the BusinessPortal Web site in IIS
      1. This can be an issue if you are using Host Headers to differentiate between multiple Web sites that are running on the same server.
      2. See Knowledgebase Article 2005711 for more information. 
  5. Test the URL to make sure that it is valid.  To do this, copy the URL and paste it into Internet Explorer on the Business Portal server.  It should open a page titled "PCServices".  If instead you receive a sharepoint error or a "page cannot be displayed" error, recheck the items in step 4.
  6. Now that the ProjectService.wsdl file has a valid URL, try the Business Portal pages again

See Knowledgebase Article 892356 or Knowledgebase Article 897024 for more information.

Resolution 7 - Verify the authentication method in IIS

  1. On the Business Portal Server, Launch Internet Information Services (IIS) Manager
  2. Right-click the Business Portal Web site and select properties
  3. Under the Directory Security tab, in the "Authentication and access control" section, click Edit...
  4. Make sure that "Integrated Windows authentication" is checked
  5. Make sure that "Enable anonymous access", "Digest authentication for Windows domain servers" and ".NET Passport authentication" are unchecked
  6. "Basic authentication" does not have to be checked. However, it should not cause a problem if it is checked
  7. Click OK, and then Click OK again to close the Properties dialog box
  8. Close out of IIS Manager
  9. Restart IIS by clicking Start -> Run and type "IISReset"
  10. Try the Business Portal Pages again

Resolution 8 - Verify the Sessionstate variable in the web.config file

  1. On the Business Portal Server, Launch Internet Information Services (IIS) Manager
  2. Right-click the Business Portal Web site and select properties
  3. Under the Home Directory tab, note the value in the "Local Path" box
  4. Click OK to close out of the properties dialog box and close out of IIS Manager
  5. Browse out to the directory found in step 3 and locate the web.config file
  6. Make a backup copy of the web.config file
  7. Open the web.config file in Notepad
  8. Find the tag that begins with "<sessionState "
  9. Change the whole tag to read "<sessionState mode="InProc" />"
  10. Save the file and close Notepad
  11. Restart IIS by clicking Start -> Run and type "IISReset"
  12. Try to load the Business Portal Pages again

 Resolution 9 - Run the PCConnectDebug script and submit results to support. 

  1. Download B2004933_pcConnectDebug.zip
  2. Unzip the file on the Business Portal server
  3. Copy the "pcConnectDebug.asp" file to the C:\Program Files\Microsoft Dynamics\Business Portal\Applications\PMA directory.
  4. On the Business Portal server, open Internet Explorer and logon to Business Portal
  5. Click the Project Center Web page
  6. Paste in the following URL to open the PCConnectDebug page:
    http://servername:port/BusinessPortal/Applications/PMA/pcconnectdebug.asp 

    Replace the "servername" with the name of the BP server.  Replace the "port" with the port number the BP Web site is running under. 
  7. You are prompted to "Click OK" to continue.  Click OK.
  8. A Web page will be displayed that begins with "Starting Debug...".   In Internet Explorer, click File -> Save As... and save the page to a file.
    1. WARNING: Depending on how far the debug was able to reach, the results may contain a password in clear text.  Feel free to edit the file in notepad and replace the actual password with the word "thePassword" before submitting the file to support.
  9. Send this file to Microsoft Customer Support Services for further analysis.
  10. As soon as the issue is resolved, delete the pcConnectDebug.asp file from the C:\Program Files\Microsoft Dynamics\Business Portal\Applications\PMA directory.