Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
MS's WebService example - i've done something funny to it.
Message
De
28/02/2003 06:06:43
 
 
À
Tous
Information générale
Forum:
Visual FoxPro
Catégorie:
Web Services
Titre:
MS's WebService example - i've done something funny to it.
Divers
Thread ID:
00759301
Message ID:
00759301
Vues:
54
MS show an example of how to build a basic webservice on http://support.microsoft.com/?kbid=321512. I managed to get this working a few weeks ago using calling code of :

oMSSoapClient = CreateObject("MSSOAP.SoapClient30")
oMSSoapClient.ClientProperty("ServerHTTPRequest") = .T.
=oMSSoapClient.mssoapinit("HTTP://localhost/dd/MyWebService.WSDL", "MyWebService", "MyWebServiceSoapPort")

?oMSSoapClient.GetMachineName()
oMSSoapClient = .NULL.

Only problem was that it didnt always work - I would run the program (say) 5 times in a row and the first 4 would work and then it would stop and cease. I wondered if this was because I was using beta code so was looking forward to having release version in (as of yesterday it is). I've rebuilt the MTDLL and regenerated the WDSL but at the GetMachineName call I constantly get

"OLE IDispatch exception code 0 from Client: Client:Loading the request into SoapReader failed. HRESULT=0x80070057: The parameter is incorrect."

If I DO give it any parameters, it sensibly gives "incorrect number of parameters supplied".

Any advice would be welcomed!

JC

* For reference, this is what we pulled from the MS page and plugged straight in. We also have a lot more complicated versions that work like a dream in a non-webservice environment ;-)

DEFINE CLASS MyWebService AS SESSION OLEPUBLIC

PROCEDURE INIT
*!* If you do any work with SQL Pass-Through
*!* these settings are a good idea.
SQLSetProp(0,"DispLogin",3)
SQLSetProp(0,"DispWarnings",.F.)
ENDPROC

PROCEDURE GetMachineName AS STRING
LOCAL lcThisMachineName AS STRING
lcThisMachineName = LEFT(SYS(0),ATC("#",SYS(0))-1)
RETURN lcThisMachineName
ENDPROC

PROCEDURE Error(nError, cMethod, nLine)
COMRETURNERROR([method "] + cMethod + ["], MESSAGE())
ENDPROC

ENDDEFINE
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform