views:

316

answers:

2

I have a sharepoint site, and I am calling a standard sharepoint web service.

I create the web service request like this :

wsDws.Url = this.SiteAddress + @"/_vti_bin/Dws.asmx";

When I use localhost as hostname it works, but when I use machine name I get an error 401 Unauthorized.

I am setting the credentials like this:

    NetworkCredential NC;
    if (string.IsNullOrEmpty(this.Domain))
    {
        NC = new NetworkCredential(this.Username, this.Password);
    }
    else
    {
        NC = new NetworkCredential(this.Username, this.Password, this.Domain);
    }


    //Lists
    wsLists.Timeout = -1;
    wsLists.Credentials = NC;

    //Dws
    wsDws.Timeout = -1;
    wsDws.Credentials = NC;

Any ideas how I can fix this?

A: 

You need to change some settings in your registry to make it work. Quite annoying I know, but it does the trick: http://koenvosters.wordpress.com/2009/06/15/access-denied-when-using-hostname-search-and-site-on-moss-2007/

KoenVosters
Yup done that too, they offer 2 methods to resolve the issue - did both of them, and double checked to make sure it wasn't the loopbackcheck issue.
JL
A: 

This is probably the infamous DisableLoopBackCheck problem. Get the solution and the reason here.

Colin