ASPN ActiveState Programmer Network
ActiveState
/ Home / Perl / PHP / Python / Tcl / XSLT /
/ Safari / My ASPN /
Cookbooks | Documentation | Mailing Lists | Modules | News Feeds | Products | User Groups


Recent Messages
List Archives
About the List
List Leaders
Subscription Options

View Subscriptions
Help

View by Topic
ActiveState
.NET Framework
Open Source
Perl
PHP
Python
Tcl
Web Services
XML & XSLT

View by Category
Database
General
SOAP
System Administration
Tools
User Interfaces
Web Programming
XML Programming


MyASPN >> Mail Archive >> xml-dev
xml-dev
ANNOUNCE: SOAP-RPC 0.00
by Ken MacLeod other posts by this author
Mar 9 2000 2:11AM messages near this date
Possible parse() overloading bug in XMLFilterImpl | [ANN] Temporary, unofficial mailing list for XSL library project
SOAP-RPC is a Perl module implementing a minimal set of SOAP
functionality.  SOAP-RPC is a direct translation of the Perl XML-RPC
implementation (Frontier-RPC).

  <http://bitsko.slc.ut.us/~ken/xml-rpc/> 

SOAP-RPC can marshal hashes (structures), arrays, and scalar values.
SOAP-RPC follows SOAP convention in method calls: all methods accept
and return named parameters (a single hash).

Version 0.00 doesn't handle namespace processing correctly, so the
SOAP and tbd namespaces must be used as shown in the examples below.

There is a demo server running at <http://Casbah.org:8000/>  that
serves the following methods:

   examples.getStateName({ stateNum =>  int })
       Take a single integer argument and return a string with the
       corresponding state name in the `state' parameter.

   examples.getStateList({ stateNums =>  [int, ...] })
       Take an array of integers and return a string with the
       corresponding state names seperated by commas in the
       `states' parameter.

   examples.getStateStruct({ stateStruct =>  { 'first' => int, ... } })
       Take a structure with integer values (the key names are
       ignored, this is a bad example) and return the corresponding
       state names seperated by commas in the `states' parameter.

   echo({ ... })
       Simply echos back the parameters passed to it, in the `params'
       parameter.  Good for debugging the serializer and timing tests.

SOAP-RPC also includes a command line program, soap-client.pl, that
can send SOAP requests directly from the command line.  An example of
using it is pasted below.

Please followup all messages to the SOAP mailing list.  Let me know
what you think, especially folks who have been at this a while.

Enjoy!

  -- Ken

-------- 8< --------
perl examples/soap-client.pl --debug http://Casbah.org:8000/   examples.getStateList "{ stat
eNums =>  [ 4, 2, 42 ] }"
---- request ----
<?xml version="1.0"?> 
<SOAP:Envelope
    xmlns:SOAP="urn:schemas-xmlsoap-org:soap.v1"
    xmlns:tbd="ToBeDetermined"> 
  <SOAP:Body> 
    <examples.getStateList> 
      <stateNums SOAP:arrayType='tbd:urtype[]'> 
        <tbd:urtype> 4</tbd:urtype>
        <tbd:urtype> 2</tbd:urtype>
        <tbd:urtype> 42</tbd:urtype>
      </stateNums> 
    </examples.getStateList> 
  </SOAP:Body> 
</SOAP:Envelope> 
---- response ----
<?xml version="1.0"?> 
<SOAP:Envelope
    xmlns:SOAP="urn:schemas-xmlsoap-org:soap.v1"
    xmlns:tbd="ToBeDetermined"> 
  <SOAP:Body> 
    <examples.getStateListResponse> 
      <states> Arkansas,Alaska,Tennessee</states>
    </examples.getStateListResponse> 
  </SOAP:Body> 
</SOAP:Envelope> 
---- output ----
$result = HASH(0x8385fec)
   'states' =>  'Arkansas,Alaska,Tennessee'

***************************************************************************
This is xml-dev, the mailing list for XML developers.
To unsubscribe, mailto:majordomo@xml.org&BODY=unsubscribe%20xml-dev
List archives are available at http://xml.org/archives/xml-dev/
***************************************************************************

Privacy Policy | Email Opt-out | Feedback | Syndication
© ActiveState Software Inc. All rights reserved