Tell me more ×
Stack Overflow is a question and answer site for professional and enthusiast programmers. It's 100% free, no registration required.

Every time i try to make a call to my webservice, through the wsdl, i get the error message shown here. I think its probably an issue within the the WSDL defintion, because I am not really sure what i am doing within the WSDL definition to begin with:

 [22-Sep-2011 18:54:46] PHP Fatal error:  Uncaught SoapFault exception:
 [HTTP] Not Found in /www/zendserver/htdocs/dev/csc/request.php:4
 Stack trace:
 #0 [internal function]: SoapClient->__doRequest('<?xml version="...',
 'http://192.168....', 'http://www.exam...', 1, 0)
 #1 [internal function]: SoapClient->__call('EchoText', Array)
 #2 /www/zendserver/htdocs/dev/csc/request.php(4):
 SoapClient->EchoText('test')
 #3 {main}   thrown in /www/zendserver/htdocs/dev/csc/request.php on
 line 4

I have a very simple web service, located at: http://192.168.1.2:10088/csc/csc.php

<?php

function EchoText($text){
    return "ECHO: ".$text;
}

$server = new SoapServer(null,
                         array('uri' => "http://192.168.1.2:10088/csc/csc.php"));
$server->addFunction('EchoText');
$server->handle();

?>

I have an interfacing page, which is what i access and then get the error shown above, located at: http://192.168.1.2:10088/csc/request.php

<?php
$client = new SoapClient("http://192.168.1.2:10088/csc/NewWSDLFile.wsdl");

$result = $client->EchoText("test");
echo $result;
>?

I have my WSDL, located at: http://192.168.1.2:10088/csc/NewWSDLFile.wsdl

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://192.168.1.2:10088/csc/NewWSDLFile.wsdl" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="NewWSDLFile" targetNamespace="http://192.168.1.2:10088/csc/NewWSDLFile.wsdl">
  <wsdl:types>
    <xsd:schema targetNamespace="http://192.168.1.2:10088/csc/NewWSDLFile.wsdl">
      <xsd:element name="EchoText">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="in" type="xsd:string"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="EchoTextResponse">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="out" type="xsd:string"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:schema>
  </wsdl:types>
  <wsdl:message name="EchoTextRequest">
    <wsdl:part element="tns:EchoText" name="parameters"/>
  </wsdl:message>
  <wsdl:message name="EchoTextResponse">
    <wsdl:part element="tns:EchoText" name="parameters"/>
  </wsdl:message>
  <wsdl:portType name="NewWSDLFile">
    <wsdl:operation name="EchoText">
      <wsdl:input message="tns:EchoTextRequest"/>
      <wsdl:output message="tns:EchoTextResponse"/>
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="NewWSDLFileSOAP" type="tns:NewWSDLFile">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="EchoText">
      <soap:operation soapAction="http://192.168.1.2:10088/csc/NewWSDLFile/EchoText"/>
      <wsdl:input>
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="NewWSDLFile">
    <wsdl:port binding="tns:NewWSDLFileSOAP" name="NewWSDLFileSOAP">
      <soap:address location="http://192.168.1.2:10088/csc/csc.php"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>

UPDATE..

I was able to get more detailed information on the error message by doing a try catch and print_r($e);... here is the detailed error message:


SoapFault Object (
  [message:protected] => Not Found
  [string:private] =>
  [code:protected] => 0
  [file:protected] => /www/zendserver/htdocs/dev/csc/request.php
  [line:protected] => 7
  [trace:private] => Array ( 
    [0] => Array (
      [function] => __doRequest
      [class] => SoapClient
      [type] => ->
      [args] => Array (
         [0] =>
         [1] => http://192.168.1.2:10088/csc/csc.wsdl
         [2] => http://www.example.org/NewWSDLFile/EchoText
         [3] => 1
         [4] => 0
      )
    )
   [1] => Array (
      [function] => __call
      [class] => SoapClient
      [type] => ->
      [args] => Array (
         [0] => EchoText
         [1] => Array (
             [0] => test
         )
      )
    )
   [2] => Array (
      [file] => /www/zendserver/htdocs/dev/csc/request.php
      [line] => 7
      [function] => EchoText
      [class] => SoapClient
      [type] => ->
      [args] => Array ( 
         [0] => test
      )
    )
  )
  [faultstring] => Not Found
  [faultcode] => HTTP
) 
share|improve this question
1  
[0] => Array ( [function] => __doRequest [class] => SoapClient [type] => -> [args] => Array ( [0] => [1] => 192.168.1.2:10088/csc/csc.wsdl It seems, your WSDL file is misinterpretted. this is just a doubt, which might help you – Krishnanunni Sep 23 '11 at 11:04

1 Answer

SoapFault => Not Found is that the SoapClient can't reach the server.

192.168.1.2 is a local IP-address, is the web server also on the local network? Otherwise that is the reason why your client isn't working.

share|improve this answer
everything used and referenced in this project is on our local network. aside from the "schemas.xmlsoap.org/wsdl/soap/"; portion of the wsdl. I did find one interesting thing, in the detailed error message at the bottom of my post you will see " example.org/NewWSDLFile/EchoText";, but this is not in any of my files! i have also cleared my cache to make sure its current... i have no idea how this is getting in there. – Adam Sep 22 '11 at 19:58
What language are you writing the web services in? – Robin Wassén-Andersson Sep 22 '11 at 20:01
PHP, 5.2.13 using apache server. – Adam Sep 22 '11 at 20:02
i am continuing this post in a different question. as the error message and issue has changed... although the URL's used are still the same. stackoverflow.com/questions/7561604/… – Adam Sep 26 '11 at 21:35

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.