Home » Web Services » SOAP » Bug #7826
Missing datatype cause segmentation fault
Details
| Submitted | 2006-06-07 10:27 UTC |
|---|---|
| From | kutilm at fel dot cvut dot cz |
| Status | No Feedback |
| Package | SOAP |
| PHP Version | 5.1.4 |
| OS | Linux |
| Roadmaps | (Not assigned) |
Comments
[2006-06-07 10:27 UTC] kutilm at fel dot cvut dot cz
Description:
------------
I use Matlab soap client to connect to soap server based on this package. Matlab don't send data type (int) for data. I don't know if it is all right with specification. But if server obtain data without data type specification it fall down (apache with mod_php fall down) and Matlab return: "unable to get a response from the server". Data which Matlab sends to the server are:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:n="urn:SOAP_Example_Server" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<n:secti>
<a>5</a>
<b>2</b>
</n:secti>
</soap:Body>
</soap:Envelope>
"secti" is a function name returns the sum of 'a' and 'b'.
Thank you.
[2006-06-07 11:38 UTC] kutilm at fel dot cvut dot cz
I use it in a big program but here is a small part of server class definition:
class Secti_Server {
var $__dispatch_map = array();
function Secti_Server() {
$this->__dispatch_map['secti'] =
array('in' => array('a' => 'int', 'b' => 'int'),
'out' => array('outputInt' => 'int'),
);
}
function __dispatch($methodname) {
if (isset($this->__dispatch_map[$methodname]))
return $this->__dispatch_map[$methodname];
return NULL;
}
function secti($a,$b)
{
return $a+$b;
}
}
Interesting is that if you delete __dispatch function, everything is OK.
Thanks you Michal