Solved

Soap Problem

Posted on 2002-07-12
8
1,801 Views
Last Modified: 2012-06-27
I have created a web service using the MS Soap toolkit.

This worked fine on my local machine when I was developing it but now I have moved it to another machine it won't work.  I have unregistered the dll and created the wsdl files etc with the soap toolkit many times but no luck.

The error I am getting is:

Client error '80020009'

WSDLReader:Loading of the WSDL file failed HRESULT=0x80070057 - WSDLReader:XML Parser failed at linenumber 0, lineposition 0, reason is: System error: -2146697208. HRESULT=0x1

/WebServices/BankWizard/Default.asp, line 28


My code is as follows:

    Response.Buffer = True
    Response.ContentType = "text/html"
   
    Dim objBW
    Dim strSortCode
    Dim strAccountNumber
    Dim strSearchText1
    Dim strSearchText2
    Dim strSearchText3
    Dim strMaxRecords
   
    strSortCode = Request.Form("SortCode")
    strAccountNumber = Request.Form("AccountNumber")
    strSearchText1 = Request.Form("SearchText1")
    strSearchText2 = Request.Form("SearchText2")
    strSearchText3 = Request.Form("SearchText3")
    strMaxRecords = Request.Form("MaxRecords")
   
    Set objSoapClient = Server.CreateObject("MSSOAP.SoapClient")
    Set objXML = Server.CreateObject("Microsoft.XMLDom")
   
    objSoapClient.ClientProperty("ServerHTTPRequest") = True
   
    objSoapClient.mssoapinit "http://10.1.3.201/WebServices/BankWizard/WebService/BankWizardService.WSDL", "BankWizardService", "bw23SoapPort"
   
    If Request.Form("Action") = "GetBranch" Then
      Response.Write objSoapClient.Get_Branch (strSortCode, strAccountNumber)      
    End If    
    If Request.Form("Action") = "Search" Then
      Response.Write objSoapClient.xUKSearch (strSearchText1, strSearchText2, strSearchText3, strMaxRecords)      
    End If    
       
    Response.End

Any ideas?

Cheers

Dave
0
Comment
Question by:daveamour
  • 4
  • 3
8 Comments
 

Expert Comment

by:MichaelSonny
ID: 7148799
if you want to launch a service via the Internet you can not use that URL:

http://10.1.3.201/WebServices/BankWizard/WebService/BankWizardService.WSDL

10.* is an internal URL in your LAN! You have to make a URL whitch is able to be reached via the internet


0
 
LVL 19

Author Comment

by:daveamour
ID: 7148988
Yes I know this, this is the address I am using on a development server.

Thanks

Dave
0
 
LVL 27

Expert Comment

by:BigRat
ID: 7154349
It fails to access the resource, can you access the resourse by loading it into your browser?
0
MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.

 
LVL 19

Author Comment

by:daveamour
ID: 7154563
Ok this is working now. I believe it is some kind of timeout if the dll takes more than a split second to be instantiated.  Any thoughts ont his?

Cheers

Dave
0
 
LVL 27

Expert Comment

by:BigRat
ID: 7154730
None wahtsoever? This is a curious thing. You are using IIS and the dll gets loaded only once. I'd admit there could be some time involved but IIS should not time out/the SOAP HTTP object should not give up (delete that inapplicable) so quickly. Are you certain that this isn't some security thing and you have just changed folder access inadvertently (or serendipitenteously)?

(Whiskers twitching) Rat.
0
 
LVL 19

Author Comment

by:daveamour
ID: 7159343
I didn't change anything, I think maybe the server got rebooted though.

I've since noticed that changes to a DLL upon which a web service depends can often need the DLL reregistering and the WWW Serivce restarting.

I think the whole architecture is a bit shaky to be honest, roll on .net!
0
 
LVL 27

Accepted Solution

by:
BigRat earned 50 total points
ID: 7159390
I have learnt with MS to always reboot after changing any settings - whether they advise it or not.

I don't think that .NET will give you the operational flexibility which one desires. By that I mean fewer problems regarding parameters, dlls and the like. It is a FAR more complex technology than DCOM - and that is bad enough. Still I'm glad it now works.
0
 
LVL 19

Author Comment

by:daveamour
ID: 7159528
Ok cheers, well points to you in good will.

Thanks

Dave
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction In my previous article (http://www.experts-exchange.com/Microsoft/Development/MS-SQL-Server/SSIS/A_9150-Loading-XML-Using-SSIS.html) I showed you how the XML Source component can be used to load XML files into a SQL Server database, us…
I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
A short tutorial showing how to set up an email signature in Outlook on the Web (previously known as OWA). For free email signatures designs, visit https://www.mail-signatures.com/articles/signature-templates/?sts=6651 If you want to manage em…

831 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question