There is a strange behaviour we´re facing with a PHP soap server. The WSDL contains a simple xsd boolean element. A simple soap request with value false (only false!) for this field sometimes ends with null inside the std class/property that is handled by the soap server itself.
The soap request always contains the boolean false value (checked via file input on server side).
It seams that the first request is not working. The following ones seem to be correct.
Some ideas where this race condition can happen?
Update: Here is some code that might help.
WDSL xsd element:
<xsd:element name="isSent" type="xsd:boolean">
Soap request:
<isSent>false</isSent>
Soap server:
$serverOptions = [
'soap_version' => SOAP_1_2,
'encoding' => 'UTF-8',
'cache_wsdl' => WSDL_CACHE_MEMORY
];
$soapServer = new SoapServer((string)$request->getWsdlUri(), $serverOptions);
$serviceWrapper->setRequest($request);
$this->request->setBody(file_get_contents('php://input'));
$soapServer->handle($this->request->getBody());
//When receiving the std class after soap server handles the request the issue happens...