4
請求soap請求拋出錯誤。服務器無法處理您的請求,值不能爲空:肥皂解析
10-02 06:05:05.840: E/@@@@@@@@@@(1722): RawXML Request:<?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>
<soap:Fault>
<faultcode>soap:Server</faultcode>
<faultstring>Server was unable to process request. ---> Value cannot be null.
10-02 06:05:05.840: E/@@@@@@@@@@(1722): Parameter name: String</faultstring>
<detail />
</soap:Fault>
</soap:Body>
</soap:Envelope>
我真誠地傳遞了所需的參數,即使它的拋出錯誤。
這是我用於肥皂請求的功能。
ChangePassword
public void ChangePassword(String METHOD, String token,
String userId, String oldPassword,String newPassword) {
SoapObject request = null;
request = new SoapObject(NAME_SPACE, METHOD);
Log.e("####", "ChangePassword token=" + token.trim());
Log.e("####", "ChangePassword userId=" + userId);
Log.e("####", "ChangePassword oldPassword=" + oldPassword);
Log.e("####", "ChangePassword newPassword=" + newPassword);
request.addProperty("token", token.trim());
request.addProperty("userId", userId);
request.addProperty("oldPassword", oldPassword);
request.addProperty("newPassword", newPassword);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
try {
HttpTransportSE transport = new HttpTransportSE(URL);
transport.debug = true;
String action=SOAP_ACTION+METHOD;
Log.e("@@@@", "soap action="+action);
transport.call(action, envelope);
// transport.setXmlVersionTag("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
String response = transport.responseDump;
Log.e("@@@@@@@@@@","RawXML Request:"+response.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
有什麼我錯過了,同時擊中的要求嗎?
請將'Log.e'輸出添加到您的問題。 – ashoke 2014-10-07 04:03:09
第一句話後已添加。 – RobinHood 2014-10-07 04:05:16
我懷疑是序列化問題,你可以添加所有其他'Log.e'消息嗎? – ashoke 2014-10-07 04:08:26