Здравствуйте, я уже некоторое время пытаюсь перестроить веб-сервис tempconverter в школе w3.Это также работает довольно хорошо до сих пор.Однако при доступе к моему серверу из моего приложения для Android появляется следующее сообщение об ошибке:
SoapFault - код ошибки: 'soap: Client' faultstring: 'Unmarshalling Error: непредвиденный элемент (uri: "http://soapservicetest/", local: "input"). Ожидаемые элементы: <{} input> 'faultactor:' null 'detail: null
Мой код выглядит следующим образом:
fun getResultFromInput(input: Int?){
//new SoapRequest soapRequest = new SoapRequest; SoapReq
val request = SoapObject(NAMESPACE, METHOD_NAME)
val celsiusPI = PropertyInfo()
celsiusPI.setName("input")
celsiusPI.value = input
celsiusPI.setType(Double::class.javaPrimitiveType)
request.addProperty(celsiusPI)
val envelope = SoapSerializationEnvelope(
SoapEnvelope.VER11
)
envelope.env = "http://schemas.xmlsoap.org/soap/envelope/"
envelope.bodyOut = request
envelope.encodingStyle = SoapSerializationEnvelope.ENC2003
envelope.dotNet = true
envelope.setOutputSoapObject(request)
val androidHttpTransport = HttpTransportSE(URL)
try {
androidHttpTransport.call(SOAP_ACTION, envelope)
response = responseLocal.toString()
}catch (e: Exception){
e.printStackTrace()
}catch (t: SocketTimeoutException) {
t.printStackTrace();
} catch (i: IOException) {
i.printStackTrace();
}
}
SoapFault попадает в блок перехвата Exception, но я не получил ответа от своего веб-сервиса. Но если я протестирую его, например, с помощью wsdlbrowser.com, все работает нормально.
Кто-то получил идею и может помочьменя нет?