new comer in webService needs help (very simple WS)


First of all, it’s my first attempt to create a SOAP compliant webservice so I apology if my questions are totally stupid :smiley:

My goal is to create some web service providers on webMethods that are consumed by some PHP5 code running on my web server, in order to improve my interactive as well as automatic IS monitoring.

So, I followed 7-1-1_Web_Services_Developers_Guide.pdf, especially the chapter “Creating a Provider Web Service Descriptor”, p22.

1/ I created a very simple flow service named HelloWorld containing only a MAP initializing a field named “Msg”.
In other words, running it, I got in the pipeline only a string named Msg containing “Coucou” string.

2/ Then, I created a Web Service Descriptor named HelloWSD using developer assistant, with following paramters :

  • provider
  • Existing IS service
  • No WS-I compliance
  • HelloWorld as service to be included in the WS
  • SOAP 1.1
  • Document - Literal
  • I keep the automatically generated Targetnamespace which is “

3/ I create the following PHP script :

$wsdl = '';
$options = array('trace'=>true );

try {
    $soapclt = new SoapClient($wsdl, $options);
    $res = $soapclt->HelloWorld();
    echo "Ok !\n";
} catch (SoapFault $fault) {
    trigger_error("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_ERROR);

It’s working well but the result is … empty :confused: :

I’m expecting having “Coucou” string somewhere.

question #1 : In the WSD displayed in developer, is it normal that Response contains only empty “Header”, “Body”, “Fault” ?

question #2: in my real implementation, this webservice will send quite large flat file content (about 10k) containing IS figures. Is webService and especially SOAP adapted to that ? Is it preferable to send the flat file content as is letting PHP dealing with the contents or make the IS converting figures to XML ?



PS: I’m continuing to explore the documentation about input/output of webservice :o …

Well, my fault :uhoh::uhoh:

PHP cashes WSDL for better performances … so it continue to use obsolete definition of my web service (w/o output).

Anyway, the question #2 remains.
And I add 2 other ones :

Question 3 : Php can enable http compression (option of SoapClient’s constructor). Anything special to enable it at wM side ?

Question 4 : There are some references to IS node name (thru its URL). I guess it will cause some issues when I’ll use deployer to … deploy my package to other servers.
How can avoid all references to ? Using Alias ? By another way ?



Nobody knows about my 2 remaining questions ?