--TEST-- SOAP Server 18: user fault (through throw) --SKIPIF-- <?php require_once('skipif.inc'); ?> --FILE-- <?php function test() { throw new SoapFault("MyFault","My fault string"); } $server = new soapserver(null,array('uri'=>"http://testuri.org")); $server->addfunction("test"); $HTTP_RAW_POST_DATA = <<<EOF <?xml version="1.0" encoding="ISO-8859-1"?> <SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:si="http://soapinterop.org/xsd"> <SOAP-ENV:Body> <ns1:test xmlns:ns1="http://testuri.org"/> </SOAP-ENV:Body> </SOAP-ENV:Envelope> EOF; $server->handle($HTTP_RAW_POST_DATA); echo "ok\n"; ?> --EXPECT-- <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Body><SOAP-ENV:Fault><faultcode>MyFault</faultcode><faultstring>My fault string</faultstring></SOAP-ENV:Fault></SOAP-ENV:Body></SOAP-ENV:Envelope> ok