SV: Problem using .NET as client for php Soap server

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I haven't looked at the document/literal at all. But obviously ext/soap does
not currently
handle references in the body as it only allows one xml element only in the
Body. I'll take
a closer look at this as soon as more time present itself.
 
/Danne

-----Ursprungligt meddelande-----
Från: Al Baker [mailto:ajb732@comcast.net] 
Skickat: den 24 november 2004 20:16
Till: Danne.Lundqvist@corp.vodafone.se
Kopia: soap@lists.php.net
Ämne: Re:  Problem using .NET as client for php Soap server


First, .NET is making a a document/literal style encoding -- so you have to
setup your SOAP server to handle that -- I'm not sure of ext/soap handles
this properly yet.

Secondly, the .NET client is using the href XML notation.  I'm not sure if
the ext/soap xml parser will handle this or not.  Generally, I don't like
the references scattered around my XML.  

Al

On Wed, 2004-11-24 at 15:03 +0100, Danne.Lundqvist@corp.vodafone.se wrote: 

Hi,



I have been trying to get .NET talking to a SOAP server I have written in

php. I have tested the same server with WebMethods and have no problem.

When using .NET as a client (mostly autogenerated) I have received an

error "Looks like we got "Body" with several functions call".



Looking at the code in soap.c the code below is producing the error. The

code below only allows one child node in the body and thus assumes this

to be the function call.



.NET on the other hand sends parameters outside of the actual function

call. Is this correct and is ext/soap going to support this behaviour or is

it

.NET who is acting weird? Any ideas on this?



Regards

Danne Lundqvist





-------- START soap.c --------

func = NULL;

trav = body->children;

while (trav != NULL) {

	if (trav->type == XML_ELEMENT_NODE) {

		if (func != NULL) {

			soap_server_fault("Client", "looks like we got

\"Body\" with several functions call", NULL, NULL, NULL TSRMLS_CC);

		}

		func = trav;

	}

	trav = trav->next;

}

-------- END soap.c --------







-------- START Soap msg from .NET --------



<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/
<http://schemas.xmlsoap.org/soap/envelope/> "

	xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/
<http://schemas.xmlsoap.org/soap/encoding/> "

	xmlns:tns="http://spock/xxx/scooset <http://spock/xxx/scooset> "

	xmlns:types="http://spock/xxx/scooset/encodedTypes
<http://spock/xxx/scooset/encodedTypes> "

	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
<http://www.w3.org/2001/XMLSchema-instance> "

	xmlns:xsd="http://www.w3.org/2001/XMLSchema
<http://www.w3.org/2001/XMLSchema> ">



<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/
<http://schemas.xmlsoap.org/soap/encoding/> ">

	<q1:bassCall xmlns:q1="http://spock/xxx/types/scooset
<http://spock/xxx/types/scooset> ">

		<system xsi:type="xsd:string">TestSystem</system>

		<function xsi:type="xsd:string">TestFunction</function>

		<parameter href="#id1" />

	</q1:bassCall>

	

	<soapenc:Array id="id1" soapenc:arrayType="tns:Item[1]">

		<Item href="#id2" />

	</soapenc:Array>

	

	<tns:Item id="id2" xsi:type="tns:Item">

		<key xsi:type="xsd:string">ABCabc123</key>

		<val xsi:type="xsd:string">123456</val>

	</tns:Item>

	

</soap:Body>

</soap:Envelope>



-------- END Soap msg from .NET --------







______________________________________ 

OBS! Vi har andrat vara e-postadresser, se avsandaradressen ovan. V.g.

uppdatera dina eventuella sandlistor.

N.B. Our e-mail addresses are changed (see above sender address). Please

change any sendlists accordingly. Thank you. 

______________________________________ 

This message and any files or documents attached are confidential and may

also be legally privileged or protected by other legal rules. It is intended

only for the individual or entity named. If you are not the named addressee

or you have received this email in error, please inform the sender

immediately, delete it from your system and do not copy or disclose it or

its contents or use it for any purpose.

 Thank you. 



Please also note that transmission cannot be guaranteed to be secure or

error-free. 






______________________________________ 
OBS! Vi har ändrat våra e-postadresser, se avsändaradressen ovan. V.g.
uppdatera dina eventuella sändlistor.
N.B. Our e-mail addresses are changed (see above sender address). Please
change any sendlists accordingly. Thank you. 
______________________________________ 
This message and any files or documents attached are confidential and may
also be legally privileged or protected by other legal rules. It is intended
only for the individual or entity named. If you are not the named addressee
or you have received this email in error, please inform the sender
immediately, delete it from your system and do not copy or disclose it or
its contents or use it for any purpose.
 Thank you. 

Please also note that transmission cannot be guaranteed to be secure or
error-free. 



[Index of Archives]     [PHP Home]     [PHP Users]     [Kernel Newbies]     [PHP Database]     [Yosemite]

  Powered by Linux