RE: URGENT:!!! Please help insert XML data in kSOAP envelope
<[email protected]> Wed, 29 Oct 2003 15:57:16 +0200
| Newsgroups | gmane.comp.java.enhydra.ksoap |
|---|---|
| Message-ID | <[email protected]> |
Hi
i am using following code for inserting
<agency>
<name>..</name>
<tel>..</tel>
<email>..</email>
<contacted>...</contacted>
<contactPerson>...</contactPerson>
</agency>
on the receiving side (struts/servlet) i can successfully build a SOAPEnvelope..
SoapObject method = new SoapObject("http://www.tgmm.com/agenciesdemo", "agency");
method.addProperty("name", name);
method.addProperty("tel", phone);
method.addProperty("email", email);
method.addProperty("contacted", contact);
method.addProperty("contactperson",person);
SoapSerializationEnvelope envelope =
new SoapSerializationEnvelope(SoapSerializationEnvelope.VER10);
envelope.bodyOut = method;
System.err.println("connecting to new endpoint...");
HttpTransport ht = new HttpTransport("http://localhost:8080/struts/insert.do");//http://services.xmethods.net/soap");
ht.debug = true;
try {
ht.call("http://localhost:8080/struts/insert.do", envelope);
}
catch (Exception e) {
e.printStackTrace();
}
hope this helps...
regards
marco
-----Original Message-----
From: [email protected] [mailto:[email protected]]On Behalf Of ext KHOURY Shérine (Dr&T)
Sent: 29 October, 2003 16:16
To: [email protected]
Subject: Ksoap: URGENT:!!! Please help insert XML data in kSOAP envelope
Hi guys,
I have to send an XML result looking like this
<Person>
<FirstName>Smith</FirstName>
<LastName>John</LastName>
</Person>
inside a SOAP message using kSOAP.
I'm proceding as follows:
//result being a String containing the XML result
response = new SoapObject( soapReq.getNamespace( ) , name + "Response" );
if ( result != null )
response.addProperty( "return", result );
}
SoapEnvelope ResEnv = new SoapEnvelope();
// Puts the Soap response in the envelope's body
ResEnv.setBody(response);
The problem is that upon receipt of this Soap message, the contents of the SOAP envelope looks something like this:
<SOAP-ENV:Envelope 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> xmlns:SOAP-ENC= "http://schemas.xmlsoap.org/soap/encoding/" <http://schemas.xmlsoap.org/soap/encoding/> xmlns:SOAP-ENV= "http://schemas.xmlsoap.org/soap/envelope/" <http://schemas.xmlsoap.org/soap/envelope/> >
<SOAP-ENV:Body SOAP-ENV:encodingStyle= "http://schemas.xmlsoap.org/soap/encoding/" <http://schemas.xmlsoap.org/soap/encoding/> >
<findResponse xmlns="urn:sncf:profilekeeper:profilekeeper.ProfileKeeper" id="o0" SOAP-ENC:root="1">
<return xmlns="" xsi:type="xsd:string"><Person>
<FirstName>Smith</FirstName>
<LastName>John</LastName>
<Person>
</return>
</findResponse>
</SOAP-ENV:Body>
Can anyone tell me how to avoid letting SoapObject assume all properties to be Strings?
I'm in urgent need of help!! So I will appreciate any suggestions