On 19 August 2011 17:13, James Crow <james@xxxxxxxxxxxxx> wrote: > On Fri, 19 Aug 2011 16:33:43 +0100, Richard Quadling <rquadling@xxxxxxxxx> > wrote: >> On 19 August 2011 16:16, James Crow <james@xxxxxxxxxxxxx> wrote: >>> Hi all, >>> >>> I am using the SOAP client to retrieve data from a web server. One > field >>> in the returned object is a text string that may contain embedded >>> carriage >>> returns. If I look at the raw packets they appear as ' > ' in the >>> string. >>> When I get the string in the SoapClient the carriage return has been >>> stripped. So far I have been unable to find a setting that will leave >>> this >>> embedded character in place. >>> >>> Can someone point me in the right direction? >>> >>> Thanks, >>> James >> >> Can you supply a WSDL URL for the service? I can quickly verify what >> you are seeing. >> >> Can you tell us how you perceive the missing character? If you are >> echoing it to a browser, then there will be no visual line break as >> that is not a HTML character. >> >> But if you wrap the output in <pre>...</pre> tags, you should see it > just >> fine. >> >> >> >> >> -- >> Richard Quadling >> Twitter : EE : Zend : PHPDoc >> @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY : bit.ly/lFnVea > > Richard, > > Thanks for the response. My initial email appears garbled somewhat. > Between the single quotes should have been &#13; > > The WDSL is: > http://clients.mindbodyonline.com/api/0_5/AppointmentService.asmx?WSDL > > I am using functions which return (among other things) an Appointment > object. This Appointment object has a property named Notes. The Notes item > in their software is displayed and edited in a html textarea field. If a > newline is entered in the textarea field I need it to be present in the > string in the SoapClient. > > To actually connect to with a SOAP client requires a username and > password. > > Thanks, > James > > What you need to determine is the EXACT content. Can you dump the $o_Service->__getLastResponse() to a file, and zip it? I have a framework that I use to test SOAP services. It isn't 100% automatic, but it doesn't take too long. I've got it working as far as I can without the credentials. Hopefully you can add them in and the rest of the code should work. I assume it is just a SoapHeader you need to add. Running the consume.php script currently outputs ... Request Headers --------------- POST /api/0_5/AppointmentService.asmx HTTP/1.1 Host: clients.mindbodyonline.com Connection: Keep-Alive User-Agent: PHP Content-Type: text/xml; charset=utf-8 SOAPAction: "http://clients.mindbodyonline.com/api/0_5/GetScheduleItems" Content-Length: 742 Request (XML) ------------- <?xml version="1.0" encoding="utf-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns1="http://clients.mindbodyonline.com/api/0_5"> <SOAP-ENV:Body> <ns1:GetScheduleItems> <ns1:Request> <ns1:XMLDetail xsi:nil="true" /> <ns1:PageSize xsi:nil="true" /> <ns1:CurrentPageIndex xsi:nil="true" /> <ns1:LocationIDs> <ns1:int>1</ns1:int> <ns1:int>2</ns1:int> <ns1:int>3</ns1:int> </ns1:LocationIDs> <ns1:StaffIDs> <ns1:long>100</ns1:long> <ns1:long>200</ns1:long> <ns1:long>300</ns1:long> </ns1:StaffIDs> <ns1:StartDate>2011-01-01T00:00:00Z</ns1:StartDate> <ns1:EndDate>2011-12-31T23:59:59Z</ns1:EndDate> </ns1:Request> </ns1:GetScheduleItems> </SOAP-ENV:Body> </SOAP-ENV:Envelope> Response Headers ---------------- HTTP/1.1 200 OK Cache-Control: private, max-age=0 Content-Type: text/xml; charset=utf-8 Server: Microsoft-IIS/7.5 X-AspNet-Version: 2.0.50727 X-Powered-By: ASP.NET P3P: CAO DSP COR CUR TAIa OUR NOR UNI STA Date: Fri, 19 Aug 2011 16:28:44 GMT Content-Length: 614 Response (XML) -------------- <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <soap:Body> <GetScheduleItemsResponse xmlns="http://clients.mindbodyonline.com/api/0_5"> <GetScheduleItemsResult> <Status>InvalidCredentials</Status> <Message>SourceCredentials must be provided.</Message> <XMLDetail>Full</XMLDetail> <ResultCount>0</ResultCount> <CurrentPageIndex>0</CurrentPageIndex> <TotalPageCount>0</TotalPageCount> </GetScheduleItemsResult> </GetScheduleItemsResponse> </soap:Body> </soap:Envelope> Response (Interpreted) ---------------------- GetScheduleItemsResult Object ( [StaffMembers] => [Status] => InvalidCredentials [Message] => SourceCredentials must be provided. [XMLDetail] => Full [ResultCount] => 0 [CurrentPageIndex] => 0 [TotalPageCount] => 0 ) -- Richard Quadling Twitter : EE : Zend : PHPDoc @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY : bit.ly/lFnVea
Attachment:
RAQ Soap Test.zip
Description: Zip archive
-- PHP Windows Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php