简体   繁体   中英

SoapException Server was unable to process request on ASMX webservice in MVC site

I'm getting an exception when trying to access an .asmx webservice within a MVC site. I've tried numerous things like updating the web reference within the console application and building another quick app to test, but can't get passed this issue. If I pull the URL out of the svc variable, I can browse to it directly.

Exception Details

System.Web.Services.Protocols.SoapException occurred Message=Server was unable to process request. ---> Value cannot be null. Parameter name: uriString
Source=System.Web.Services Actor="" Lang="" Node="" Role=""
StackTrace: at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at ClarityIntegration.SendTrackerDataToClarity() in [REDACTED].Reference.cs:line 78 at [REDACTED].Program.Main(String[] args) in [REDACTED].Program.cs:line 33
InnerException:

CONSOLE APP CODE

var svc = new TrackerClarityService.ClarityIntegration()
    {
        Url = url,
        Credentials =
            new System.Net.NetworkCredential("user", "pass", "domain")
    };
svc.SendTrackerDataToClarity();
svc.Dispose(); 

Issue Resolved

The exception was coming out of the Web Service itself. There were some global variables not being initialized directly through the .asmx call that were being initialized by the application itself.

Some simple checks on variables within the Web Service and setting what needs to be set have fixed up the issue.

Issue Resolved

The exception was coming out of the Web Service itself. There were some global variables not being initialized directly through the .asmx call that were being initialized by the application itself.

Some simple checks on variables within the Web Service and setting what needs to be set have fixed up the issue.

If using basic auth, this has solved my issues in the past:

NetworkCredential nc = new NetworkCredential();
nc.Domain = "domain"
nc.UserName = "user"
nc.Password = "pwd"

Uri uri = new Uri(svc.Url);
ICredentials credentials = nc.GetCredential(uri, "Basic");
svc.Credentials = credentials;

Captain here, this is the message when a WebReference has been instantiated, but has no URL defined or the given URL is null, and a method ist called. The origin of an empty URL could be a missing value in a app/web.config file.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM