2

私のアプリケーションでは、Webサービスに接続して、結果が成功した場合にブール値を返したいと思います。セキュリティ上の理由から5つのフィールドを解析しましたが、soapを使用して入力と出力を送受信する方法がわかりません。私はw3schoolの例に従いました。これは、1つの入力で正常に機能しますが、現在、いくつかのデータで混乱しています。助けてください、これが私のコードです。

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
SoapObject loginTo = new SoapObject(NAMESPACE, "LoginDetail");

PropertyInfo pi = new PropertyInfo();
loginTo.addAttribute("idCon", "124059432");
loginTo.addProperty("codeSession", "1234");
loginTo.addProperty("type","CLIENT");
loginTo.addProperty("client_number","167");
loginTo.addProperty("account_num","3403");
loginTo.addProperty("codeAuth","333");

request.addProperty("loginDetails", loginTo);

Log.e("Soap Request : ", "" + request);

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);

HttpTransportSE aht = new HttpTransportSE(URL);

try {
    aht.call(SOAP_ACTION, envelope);
    SoapObject response = (SoapObject) envelope.getResponse();

    Log.e ("login result", response.toString()); //lblResult.setText(results.toString());

    Boolean loginStatus = Boolean.getBoolean(response.getProperty("success").toString());

} catch (Exception e) {
    e.printStackTrace();
}
4

1 に答える 1

0
 SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);


request.addProperty("codeSession", "1234");
request.addProperty("type","CLIENT");
request.addProperty("client_number","167");
request.addProperty("account_num","3403");
request.addProperty("codeAuth","333");

Log.e("Soap Request : ", "" + request);

SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);

HttpTransportSE aht = new HttpTransportSE(URL);

try

{
    aht.call(SOAP_ACTION, envelope);
    SoapObject response = (SoapObject) envelope.getResponse();

    Log.e ("login result", response.toString()); //lblResult.setText(results.toString());

    Boolean loginStatus = Boolean.getBoolean(response.getProperty("success").toString());

}

このように使用します。それがうまくいくことを願っています。

于 2013-03-26T12:39:02.563 に答える