Java.io.IOException: Error en la solicitud HTTP, estado HTTP: 500 (ksoap2)

Estoy utilizando KSOAP2, al enviar la solicitud al servidor y obtuvo java.io.IOException: solicitud HTTP no, estado HTTP: 500 en la línea httpTransport.call(SOAP_ACTION, envelope) , pero el servidor funciona, lo he comprobado con SoapUI . ¿Cual puede ser el problema?

 public class SOAPClient { private static final int TIMEOUT_SOCKET = 180000; public static SoapObject get(Context context, String methodName, ArrayList<Pair<String, ?>> args) throws Exception { final String URL = PrefHelper.getSOAPUrl(context); final String NAMESPACE = PrefHelper.getSOAPNamespace(context); final String SOAP_ACTION = methodName; //NAMESPACE + "#" + "mapx" + ":" + methodName; SoapObjectEve request = new SoapObjectEve(NAMESPACE, methodName); if (args != null) { for (Pair<String, ?> arg : args) { if (arg.first != null) { request.addProperty(arg.first, arg.second); } } } SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); new MarshalBase64().register(envelope); envelope.setOutputSoapObject(request); envelope.implicitTypes = true; HttpTransportSE httpTransport = new HttpTransportSE(URL, TIMEOUT_SOCKET); httpTransport.setXmlVersionTag("<?xml version=\"1.0\" encoding=\"utf-8\"?>"); try { httpTransport.call(SOAP_ACTION, envelope); AppLog.e(httpTransport.requestDump+"requestDump"); } catch (ConnectTimeoutException e) { AppLog.e(e.getMessage()); throw new Exception(context.getString(R.string.node_unavailable)); } catch (SocketTimeoutException e) { AppLog.e(e.getMessage()); throw new Exception(context.getString(R.string.timeout)); } catch (Exception e) { e.printStackTrace(); AppLog.e(e.getMessage()); AppLog.e(httpTransport.requestDump+"requestDump"); throw new Exception(context.getString(R.string.warning_error_get_data) + e.getMessage() == null ? "" : " " + e.getMessage()); } AppLog.i(httpTransport.requestDump+"requestDump"); SoapObject soapObj = null; try { soapObj = (SoapObject) envelope.getResponse(); } catch (Exception e) { String response = ((SoapPrimitive) envelope.getResponse()).toString(); boolean res = Boolean.valueOf(response); soapObj = new SoapObject(); soapObj.addProperty("response", res); soapObj.addProperty("msg", ""); soapObj.addProperty("data", null); } AppLog.e(httpTransport.responseDump+"responseDump"); return soapObj; } } 

One Solution collect form web for “Java.io.IOException: Error en la solicitud HTTP, estado HTTP: 500 (ksoap2)”

Asegúrese de que su NAMESPACE , METHODNAME , WSDL y SOAP_ACTION son correctos.

Pruebe este código,

 private static final String NAMESPACE = "http://www.kltro.com"; private static final String METHODNAME = "getUser"; private static final String WSDL = "http://ap.kashkan.org:55555/tro/ws/kltro"; private static final String SOAP_ACTION = NAMESPACE + "#kltro:" + METHODNAME ; private static String TAG = "soap"; public static String callWebservice() { String responseDump = ""; try { SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); SoapObject request = new SoapObject(NAMESPACE, METHODNAME); request.addProperty("login", login); request.addProperty("pass", password); request.addProperty("androidID", androidID); request.addProperty("ver", version); envelope.bodyOut = request; HttpTransportSE transport = new HttpTransportSE(WSDL); transport.debug = true; try { transport.call(SOAP_ACTION, envelope); String requestDump = transport.requestDump; responseDump = transport.responseDump; Log.e(TAG, requestDump); Log.e(TAG, responseDump); } catch (IOException e) { e.printStackTrace(); } } catch (Exception e) { e.printStackTrace(); } return responseDump; } 

También asegúrese de que tiene permiso de Internet en el manifiesto,

 <uses-permission android:name="android.permission.INTERNET" /> 
  • KSoap2 y KvmSerializable-Envía el objeto de clase con un campo de lista a webservice en java android
  • SOapObject emite Android
  • Llame al servicio web .NET en Android
  • Generación de stub de servicios Web + android
  • Crear sobres de jabón con encabezado de seguridad en android utilizando ksoap2
  • ¿Por qué la reflexión ralentiza el teléfono Android
  • Usando addMapping sin el atributo "i: type =" en ksoap2 para android
  • Eliminación del campo i: type en la solicitud SOAP generada por kSoap2 en Android
  • ¿Cómo pasar el objeto de androide a servicio web de jabón?
  • Android 1.6 ksoap2 "RuntimeException: No se puede serializar: java.util.GregorianCalendar ..", al pasar el parámetro datetime
  • KSOAP 2 Android con HTTPS
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.