On 19 August 2011 21:18, James Crow <james@xxxxxxxxxxxxx> wrote: > On Fri, 19 Aug 2011 21:12:21 +0100, Richard Quadling <rquadling@xxxxxxxxx> > wrote: >> On 19 August 2011 19:28, James Crow <james@xxxxxxxxxxxxx> wrote: >>> On Fri, 19 Aug 2011 17:30:27 +0100, Richard Quadling >>> <rquadling@xxxxxxxxx> >>> wrote: >>>> 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 >>>>> >>>>> 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 >>>> ) >>> >>> I entered my login credentials in the consume.php script and changed it >>> to >>> dump __getLastResponse() to a text file. I do not want to include the >>> entire file because it contains customer information, but I did look >>> through the file with vi. The Notes /Notes XMl items do not contain >>> embedded carriage returns or line feeds. I think this is a bug in the >>> SOAP >>> service and not in the PHP SoapClient. >>> >>> Thanks, >>> James >>> >>> >> >> So, at this stage, proving the lack of the returns is all I can do. >> >> Are you responsible for the service? > > Unfortunately I am not responsible for the service. I can only bring it > their attention and try to get them to fix it. Using your code, it is easy > to display exactly what the problem is. > > Thank you, > James > > Glad to have helped. -- Richard Quadling Twitter : EE : Zend : PHPDoc @RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY : bit.ly/lFnVea -- PHP Windows Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php