Wednesday, March 16, 2011

TFS Workbench: An 'WebException' exception occured during the report list load process

Have you seen the following error recently after loading TFS Workbench:

An 'WebException' exception occured during the report list load process. Error Message: The request failed with HTTP status 401: Unauthorized.

If you don't know what TFS Workbench is, take a look at the above link. It is a great tool for managing work items and running SSRS reports in Team Foundation Server. It works with a range of Team Project process templates, I happen to be using Scrum for Team System for TFS 2010.

If you are getting the above error which is really annoying, you'll see the Report Viewer button at the bottom of TFS Workbench grayed out as per the screen shot below:

The annoying thing about that error is that I get a HTTP TFS challenge when I load TFS Workbench because my client is not running within the same domain as the development environment - which is a fairly common scenario - although not ideal sometimes we have no choice.

When I get this challenge I enter my DOMAIN\username and password, hit return and I am authenticated successfully. I know this because I am able to see my team projects in TFS Workbench. The HTTP 401 error tells me the client is able to resolve the reporting services server as if it wasn't, I would get a HTTP 404 error instead. (I added a CNAME record to the DNS server).

So I *think* what is happening is the code is applying the current credentials for the reporting services authentication web service call but not for the TFS Web Service calls.

Perhaps the code looks something like this:

ReportingServicesClient client = new ReportingServicesClient(); client.Credentials = System.Net.CredentialCache.DefaultCredentials;

Who knows, I don't have the code nor have I decompiled it so I don't know...

The solution is to simply add the name of the machine running reporting services along with the password to the Windows Credential Manager (new feature in Windows 7 and Windows Server 2008).

You can load the Credential Manager from Control Panel:

Then click on the Add Windows Credential hyperlink and enter your details in the dialog that pops up:

When you click OK, reload TFS workbench as the TFS Workbench should now resolve the correct credentials for the reporting services server in the Windows Credential store instead of using the default credentials which should fix this issue.

1 comment:

Anonymous said...

THANX A LOT !! It was useful for using svcutil + ssl