I m trying to send a complex object to me web service and return a string value but my logcat from android returns Null Refference
the full code ksoap2 send the object
Questionnairekeyval qk = new Questionnairekeyval(5, 8, "Questionnaire1", "", "", "", "", "", "", "", "");
PropertyInfo pi = new PropertyInfo();
pi.setName("Questionnairekeyval");
pi.setValue(qk);
pi.setType(qk.getClass());
request.addProperty(pi);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.implicitTypes = true;
// 2. Set the request parameters
envelope.setOutputSoapObject(request);
envelope.addMapping(WS_NAMESPACE, "Questionnairekeyval",
new Questionnairekeyval().getClass());
// 3. Create a HTTP Transport object to send the web service request
HttpTransportSE httpTransport = new HttpTransportSE(WSDL_URL);
// httpTransport.debug = true; // allows capture of raw request/respose
// in
// Logcat
// 4. Make the web service invocation
httpTransport.call(SOAP_ACTION, envelope);
String result;
if (envelope.bodyIn instanceof SoapFault) { // SoapFault =
// FAILURE
SoapFault soapFault = (SoapFault) envelope.bodyIn;
throw new Exception(soapFault.getMessage());
} else {
// SoapObject = SUCCESS
SoapPrimitive soapObject = (SoapPrimitive) envelope.getResponse();
result = (soapObject).toString();
Log.wtf("result SOAPObject", result + " " + soapObject);
}
C# get the object and return a string
[WebMethod]
public String putAnswers(Questionnairekeyval reponse)
{
int a = reponse.idClient;
return Convert.ToString(a);
}
Solved the name of the proprety in the java request it was Questionnairekeyval but in the webservice was reponse so its basicly that the problem why it returns null