Solved

Soap Problem

Posted on 2002-07-12
8
1,788 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
 
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
6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

 
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

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

The Client Need Led Us to RSS I recently had an investment company ask me how they might notify their constituents about their newsworthy publications.  Probably you would think "Facebook" or "Twitter" but this is an interesting client.  Their cons…
Many times as a report developer I've been asked to display normalized data such as three rows with values Jack, Joe, and Bob as a single comma-separated string such as 'Jack, Joe, Bob', and vice versa.  Here's how to do it. 
It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
When you create an app prototype with Adobe XD, you can insert system screens -- sharing or Control Center, for example -- with just a few clicks. This video shows you how. You can take the full course on Experts Exchange at http://bit.ly/XDcourse.

706 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

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now