Re: [SOAP] ext/soap handing of header params
| From: | George Schlossnagle | Date: | Sat, 19 Mar 2005 22:40:38 +0000 |
| Subject: | Re: [SOAP] ext/soap handing of header params | ||
| References: | 1 | Groups: | php.soap |
| Request: | Send a blank email to php-soap+get-1775@lists.php.net to get a copy of this message | ||
On Mar 19, 2005, at 3:10 AM, Dmitry Stogov wrote:
Hi, I really wasn't subscribed. :) 1. I take only a very short look into the patch, but didn't understand that it does. I will make more careful look on next week. Your explanations and PHP examples (tests) would be very useful.The problem is as follows. If I have create a soap client off a wsdl like this: http://webservices.sabre.com/wsdl/sabreXML1.0.00/res/SessionCreateRQ.wsdl then the proxy class is broken. It's broken because the prototype of SessionCreateRQ() is SessionCreateRQ(MessageHeader $header, Security $header2, $body) but the actual response serializes the first two values into the envelope's soap:body, when they should go into the soap:header. The wsdl is pecific about the locations:
<input> <soap:header message="tns:GetSessionCreateInput" part="header" use="literal"/> <soap:header message="tns:GetSessionCreateInput" part="header2" use="literal"/><soap:body parts="body" use="literal"/> </input> But ext/soap does not respect the header directives there correctly. With the referenced path, input nodes that are directed to be put in the soap:header are correctly placed there. George