2008-06-10

Report Server Error: The request failed with HTTP status 400: Bad Request


This also applies to the error message: Microsoft.ReportingServices.UI.Global+RSWebServiceWrapper+CantCommunicateWithReportServerException: The report server is not responding. Verify that the report server is running and can be accessed from this computer.

This took me a little while to figure out, but my initial suspicion was that it was related to the fact I was using it in a Host Header site, ei: I had changed lmhosts or I had multiple web sites using port 80.


Cause:

Report server uses the machine name when setting the config files, but when it tries to reference the url it can't be found because it's in another web site.
In my case the server was called MOSSDEV, and the report server virtual directories were in a web site called premisys.


Fix:


  1. Open "RSWebApplication.config" in the "Report Manager Virtual Directory".
    Right click the virtual directory icon in inetmgr, choose open.
    Default is: C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportManager

  2. Enter the full Report Server URL in the <ReportServerUrl> node.
    Eg:
    <ReportServerUrl>http://premisys/ReportServer</ReportServerUrl>

  3. Delete the <ReportServerVirtualDirectory> value but not the node.

  4. Open "rsreportserver.config" in the "Report Server Virtual Directory".
    Default is: C:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer
  5. Change the <urlroot>http://<servername>/ReportServer</urlroot>
    to match your URL.

3 comments :

  1. Thanks a bunch - this really helped me out.

    ReplyDelete
  2. Solved my problem as well (multiple web sites distinguished by IP) thanks.

    ReplyDelete
  3. Thanks dude...

    It works... I fixed my error with this..

    ReplyDelete