downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

SoapServer::getFunctions> <SoapServer::__construct
[edit] Last updated: Fri, 24 May 2013

view this page in

SoapServer::fault

(PHP 5 >= 5.0.1)

SoapServer::faultIssue SoapServer fault indicating an error

Description

public void SoapServer::fault ( string $code , string $string [, string $actor [, string $details [, string $name ]]] )

Sends a response to the client of the current request indicating an error.

Note:

This can only be called when handling a request.

Parameters

code

The error code to return

string

A brief description of the error

actor

A string identifying the actor that caused the fault.

details

More details of the fault

name

The name of the fault. This can be used to select a name from a WSDL file.

Return Values

No value is returned.

See Also



SoapServer::getFunctions> <SoapServer::__construct
[edit] Last updated: Fri, 24 May 2013
 
add a note add a note User Contributed Notes SoapServer::fault - [4 notes]
up
1
Anonymous
4 years ago
If you use Adobe Flex, Flash or AIR as SOAP client and are unable to get the error message in case of a soap fault, upgrade to PHP 5.2.6.

Details in:
http://bugs.php.net/bug.php?id=43507
up
0
brian dot reynolds at risaris dot com
1 year ago
Example Usage:

return new SoapFault( "Client", "foo or bar must be supplied");

SOAP Fault Codes

VersionMismatch: Found an invalid namespace for the SOAP Envelope element
MustUnderstand    : An immediate child element of the Header element, with the mustUnderstand attribute set to "1", was not understood
Client: The message was incorrectly formed or contained incorrect information
Server: There was a problem with the server so the message could not proceed
up
0
dub357 at gmail dot com
1 year ago
This function also sends a 500 response code back to the client with the request.
This was causing issues with an Apache Axis 1.2 client I had so I instead implemented by own fault handling:

<?php
header
("Content-Type: text/xml");
header("Status: 200");
die(
"<SOAP-ENV:Envelope xmlns:SOAP-ENV=\\"http://schemas.xmlsoap.org/soap/envelope/\\">
 
<SOAP-ENV:Body>
    <
SOAP-ENV:Fault>
      <
faultcode>500</faultcode>
      <
faultstring>".$ex->getMessage())."</faultstring>
    </
SOAP-ENV:Fault>
  </
SOAP-ENV:Body>
</
SOAP-ENV:Envelope>");
?>
up
0
Amr Mostafa
3 years ago
This function currently terminates execution as well, which may be undesirable. See: http://bugs.php.net/bug.php?id=49513

 
show source | credits | stats | sitemap | contact | advertising | mirror sites