Calling a SOAP service without a WSDL?

Hi!

I've written a tiny SOAP service in PHP which I'd like to call from
Delphi.  This SOAP service is the example SOAP service described on
http://www.evolt.org/article/The_PEAR_SOAP_Implementation/21/49993/.

It only provides one service called "helloWorld".  When calling it, it
needs to be passed one String parameter "inmessage" and (if successful)
returns a String.  However, I do not have a WSDL file for this server.

In PHP, it's rather trivial to write a client for it:

<?php

// Load definition of SOAP_Client class
// It's kind of like the "uses" statement in Delphi
require_once('SOAP/Client.php');

// Instantiate the client as an object of the class SOAP_Client
// The parameter defines the URL of the SOAP server
$client = new
    SOAP_Client('http://localhost/~askwar/SOAP/soap-hello-server.php');

// Create an array which will be passed to the SOAP service.
// Here, it's an associative array with just one element.
// The element has the key 'inmessage' and the value 'World'
$params = array('inmessage'=>'World');

// Call the service.
// Meaning of the parameters:
// - Name of the method which is called
// - Parameters for this method
// - Namespace (and maybe other) definitions for the service.
//   In this example, it's "urn:helloWorld"
// If everything goes well, it'll return a String ('Hello World!' to be
// exact).  This result is stored in the variable $response.
$response = $client->call('helloWorld',$params,array('namespace'=>
'urn:helloWorld'));

// Print what has been returned
print $response;

// Print a line feed
echo "\n";
?>

How would I translate this very trivial example to Delphi 7 Enterprise?
 If I had a WSDL file, I'd know how to do this - but I don't have one....

Thanks a lot,

Alexander Skwar
--
How to quote: http://learn.to/quote (german) http://quote.6x.to (en)
Homepage:     http://www.iso-top.biz  |  Jabber: ask...@a-message.de
   iso-top.biz - Die gnstige Art an Linux Distributionen zu kommen