SOAP: Difference between revisions

From Rosetta Code
Content added Content deleted
No edit summary
m (Using lang tags now.)
Line 23: Line 23:


=={{header|ColdFusion}}==
=={{header|ColdFusion}}==
<cfset client = createObject("webservice","http://example.com/soap/wsdl")>
<lang cfm> <cfset client = createObject("webservice","http://example.com/soap/wsdl")>
<cfset result = client.soapFunc("hello")>
<cfset result = client.soapFunc("hello")>
<cfset result = client.anotherSoapFunc(34234)>
<cfset result = client.anotherSoapFunc(34234)></lang>


=={{header|Perl}}==
=={{header|Perl}}==
{{libheader|SOAP::Lite}}
{{libheader|SOAP::Lite}}
use SOAP::Lite;
<lang perl> use SOAP::Lite;
print SOAP::Lite
print SOAP::Lite
Line 36: Line 36:
print SOAP::Lite
print SOAP::Lite
-> service('http://example.com/soap/wsdl')
-> service('http://example.com/soap/wsdl')
-> anotherSoapFunc(34234);
-> anotherSoapFunc(34234);</lang>


=={{header|PHP}}==
=={{header|PHP}}==
{{works with|PHP|5.0.0+}}
{{works with|PHP|5.0.0+}}
<?php
<lang php> <?php
//load the wsdl file
//load the wsdl file
$client = new SoapClient("http://example.com/soap/definition.wsdl");
$client = new SoapClient("http://example.com/soap/definition.wsdl");
Line 53: Line 53:
//list if SOAP Functions
//list if SOAP Functions
print_r($client->__getFunctions());
print_r($client->__getFunctions());
?>
?></lang>


=={{header|Python}}==
=={{header|Python}}==
{{works with|Python|2.4 and 2.5}}
{{works with|Python|2.4 and 2.5}}
from SOAPpy import WSDL
<lang python> from SOAPpy import WSDL
proxy = WSDL.Proxy("http://example.com/soap/wsdl")
proxy = WSDL.Proxy("http://example.com/soap/wsdl")
result = proxy.soapFunc("hello")
result = proxy.soapFunc("hello")
result = proxy.anotherSoapFunc(34234)
result = proxy.anotherSoapFunc(34234)</lang>


'''Note:''' SOAPpy is a third-party module and can be found at [http://pywebsvcs.sourceforge.net/ Python Web Services]
'''Note:''' SOAPpy is a third-party module and can be found at [http://pywebsvcs.sourceforge.net/ Python Web Services]
Line 66: Line 66:
=={{header|VBScript}}==
=={{header|VBScript}}==


Dim client
<lang vbscript> Dim client
Dim result
Dim result
Set client = CreateObject("MSSOAP.SoapClient")
Set client = CreateObject("MSSOAP.SoapClient")
client.MSSoapInit "http://example.com/soap/wsdl"
client.MSSoapInit "http://example.com/soap/wsdl"
result = client.soapFunc("hello")
result = client.soapFunc("hello")
result = client.anotherSoapFunc(34234)
result = client.anotherSoapFunc(34234)</lang>


=={{header|Visual Objects}}==
=={{header|Visual Objects}}==


LOCAL oSoapClient AS OLEAUTOOBJECT
<lang vobjects> LOCAL oSoapClient AS OLEAUTOOBJECT
LOCAL cUrl AS STRING
LOCAL cUrl AS STRING
LOCAL uResult AS USUAL
LOCAL uResult AS USUAL
Line 84: Line 84:
uResult := oSoapClient:soapFunc("hello")
uResult := oSoapClient:soapFunc("hello")
uResult := oSoapClient:anotherSoapFunc(34234)
uResult := oSoapClient:anotherSoapFunc(34234)
ENDIF
ENDIF</lang>>

Revision as of 07:38, 12 February 2009

Task
SOAP
You are encouraged to solve this task according to the task description, using any language you may know.

In this task, the goal is to create a SOAP client which accesses functions defined at http://example.com/soap/wsdl, and calls the functions soapFunc( ) and anotherSoapFunc( ).

ActionScript

Works with: ActionScript version 3.0

<lang actionscript> import mx.rpc.soap.WebService; import mx.rpc.events.ResultEvent; var ws:WebService = new WebService(); ws.wsdl = 'http://example.com/soap/wsdl'; ws.soapFunc.addEventListener("result",soapFunc_Result); ws.anotherSoapFunc.addEventListener("result",anotherSoapFunc_Result); ws.loadWSDL(); ws.soapFunc(); ws.anotherSoapFunc(); // method invocation callback handlers private function soapFunc_Result(event:ResultEvent):void {

 // do something

} private function anotherSoapFunc_Result(event:ResultEvent):void {

 // do another something

} </lang>

ColdFusion

<lang cfm> <cfset client = createObject("webservice","http://example.com/soap/wsdl")>

<cfset result = client.soapFunc("hello")>
<cfset result = client.anotherSoapFunc(34234)></lang>

Perl

<lang perl> use SOAP::Lite;

print SOAP::Lite
  -> service('http://example.com/soap/wsdl')
  -> soapFunc("hello");
print SOAP::Lite
  -> service('http://example.com/soap/wsdl')
  -> anotherSoapFunc(34234);</lang>

PHP

Works with: PHP version 5.0.0+

<lang php> <?php

//load the wsdl file
$client = new SoapClient("http://example.com/soap/definition.wsdl");
//functions are now available to be called
$result = $client->soapFunc("hello");
$result = $client->anotherSoapFunc(34234);
//SOAP Information
$client = new SoapClient("http://example.com/soap/definition.wsdl");
//list of SOAP types
print_r($client->__getTypes());
//list if SOAP Functions
print_r($client->__getFunctions());
?></lang>

Python

Works with: Python version 2.4 and 2.5

<lang python> from SOAPpy import WSDL

proxy = WSDL.Proxy("http://example.com/soap/wsdl")
result = proxy.soapFunc("hello")
result = proxy.anotherSoapFunc(34234)</lang>

Note: SOAPpy is a third-party module and can be found at Python Web Services

VBScript

<lang vbscript> Dim client

 Dim result
 Set client = CreateObject("MSSOAP.SoapClient")
 client.MSSoapInit "http://example.com/soap/wsdl"
 result = client.soapFunc("hello")
 result = client.anotherSoapFunc(34234)</lang>

Visual Objects

<lang vobjects> LOCAL oSoapClient AS OLEAUTOOBJECT

  LOCAL cUrl 		AS STRING
  LOCAL uResult        AS USUAL
  oSoapClient := OLEAutoObject{"MSSOAP.SoapClient30"}
  cUrl        := "http://example.com/soap/wsdl"
  IF oSoapClient:fInit
     oSoapClient:mssoapinit(cUrl,"", "", "" )
     uResult := oSoapClient:soapFunc("hello")
     uResult := oSoapClient:anotherSoapFunc(34234)
  ENDIF</lang>>