OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   ANNOUNCE: SOAP-RPC 0.00

[ Lists Home | Date Index | Thread Index ]
  • From: Ken MacLeod <ken@bitsko.slc.ut.us>
  • To: <SOAP@discuss.develop.com>, xml-rpc@egroups.com, xml-dev@xml.org
  • Date: 08 Mar 2000 17:11:58 -0600

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 "{ stateNums => [ 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/
***************************************************************************




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS