Пытаюсь сделать запрос на мыльный сервис из приложения андроид, код такой.Ошибка, которую он мне выдает, находится в импульсе после вызова, который уже приходит с сообщением, в котором говорится, что «серверу не удалось обработать запрос. ---> СБОЙ ЧИТАТЬ В DSSubexploitation ---> Процедура или функция 'P_BDGX_Encuestas_Obtener_Recorrido'Я ждал параметра '@comcomarca', который не был указан. "Но параметры, если они происходят, два, которые необходимы, я помещаю soapUI capture, что если вы возвращаете данные Спасибо и извините за мой плохой английский введите описание изображения здесь
public class MainActivity extends Activity {
private final String NAMESPACE_M = "http://EINFOSAGEX/WebServices/";
private final String URL_M = "http://pruwseinfosagex.gobex.pri/WSSincroniza.asmx";
private final String SOAP_ACTION_M = "http://EINFOSAGEX/WebServices/ObtenerRecorrido";
private final String METHOD_NAME_M = "ObtenerRecorrido";
private final String NAMESPACE_ObtEnc = "http://EINFOSAGEX/WebServices/";
private final String URL_ObtEnc = "http://pruwseinfosagex.gobex.pri/WSSincroniza.asmx";
private final String SOAP_ACTION_ObtEnc= "http://EINFOSAGEX/WebServices/ObtenerEncuesta";
private final String METHOD_NAME_ObtEnc = "ObtenerEncuesta";
private String TAG ="LOG_AsyncTask";
AsynCallWS task = new AsynCallWS();
ProgressDialog dialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btnClick = (Button) findViewById(R.id.bntClick);
btnClick.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
task.execute();
}
});
}
private class AsynCallWS extends AsyncTask<Void,Void,Void>{
@Override
protected void onPostExecute(Void result) {
Log.i(TAG, "onPostExecute");
}
@Override
protected void onPreExecute() {
Log.i(TAG, "onPreExecute");
}
@Override
protected Void doInBackground(Void... voids) {
Log.i(TAG, "doInBackground");
//dialog.show();
callWebserviceObtenerRecorrido();
//callWebserviceObtenerEncuesta();
return null;
}
}
public void callWebserviceObtenerRecorrido() {
//dialog.show();
// Modelo el request
SoapObject request = new SoapObject(NAMESPACE_M, METHOD_NAME_M);
request.addProperty("idComarca","idComarca", 1004); // Paso parametros al WS
//request.addAttribute("idComarca", 1004);
request.addProperty("anio", "anio",2017); // Paso parametros al WS
//request.addAttribute("anio", 2017);
PropertyInfo stringArrayPropertyInfo = new PropertyInfo();
// Modelo el Sobre
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope .dotNet = true;
envelope .setOutputSoapObject(request);
// Modelo el transporte
HttpTransportSE transporte = new HttpTransportSE(URL_M);
transporte.debug = true;
Object response = null;
try {
// Llamada
transporte.call(SOAP_ACTION_M, envelope );
String result =
envelope.getResponse().toString();
// Resultado
SoapPrimitive resultado = (SoapPrimitive) envelope .getResponse();
Log.i("Resultado", resultado.toString());
}catch (NullPointerException e) {
Log.e("NullPointerException", e.getMessage());
response = e.toString();
} catch (Exception pe) {
Log.e("ERROR", pe.getMessage());
response = pe.toString();
}
}
public void callWebserviceObtenerEncuesta() {
//dialog.show();
// Modelo el request
SoapObject request = new SoapObject(NAMESPACE_ObtEnc, METHOD_NAME_ObtEnc);
//request.addProperty("idComarca", 1004); // Paso parametros al WS
//request.addAttribute("idComarca", 1004);
//request.addProperty("anio", 2017); // Paso parametros al WS
//request.addAttribute("anio", 2017);
// Modelo el Sobre
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope .dotNet = true;
envelope .setOutputSoapObject(request);
// Modelo el transporte
HttpTransportSE transporte = new HttpTransportSE(URL_ObtEnc);
Object response = null;
try {
// Llamada
transporte.call(SOAP_ACTION_ObtEnc, envelope );
String result =
envelope.getResponse().toString();
// Resultado
SoapPrimitive resultado = (SoapPrimitive) envelope .getResponse();
Log.i("Resultado", resultado.toString());
}catch (NullPointerException e) {
Log.e("NullPointerException", e.getMessage());
response = e.toString();
} catch (Exception pe) {
Log.e("ERROR", pe.getMessage());
response = pe.toString();
}
}
private void setupProgressDialog() {
}
}