ksoap2-Android应用程序调用webservice更新远程数据库-运行但不记录

ksoap2-Android应用程序调用webservice更新远程数据库-运行但不记录,android,web-services,soap,Android,Web Services,Soap,目标:应用程序调用一个Web服务,发送5个参数,确定选择标准,以在远程数据库表中交换状态。webservice响应是文本OK,即正常执行 问题:Webservice通常运行时没有错误(没有异常),但要检查远程数据库,没有记录任何更新。这就像Web服务运行未实现的提交一样。在应用程序调试期间不会显示任何错误。这一切都让我相信错误在我的应用程序中,因为当通过SoapUI 5.0.0软件运行相同的Web服务时,数据库被正确更新。我没有解决这个问题的高级知识。谢谢你的帮助! 欢迎提供有关如何调试此问题的

目标:应用程序调用一个Web服务,发送5个参数,确定选择标准,以在远程数据库表中交换状态。webservice响应是文本OK,即正常执行

问题:Webservice通常运行时没有错误(没有异常),但要检查远程数据库,没有记录任何更新。这就像Web服务运行未实现的提交一样。在应用程序调试期间不会显示任何错误。这一切都让我相信错误在我的应用程序中,因为当通过SoapUI 5.0.0软件运行相同的Web服务时,数据库被正确更新。我没有解决这个问题的高级知识。谢谢你的帮助! 欢迎提供有关如何调试此问题的任何提示

可能原因:显然,参数传递正确(请参见下面的xml请求,该请求与SoapUI发送的xml进行了比较,后者工作正常)。有没有办法知道xml请求是如何进入webservice的?如何调试它

感谢本教程:

示例SOAP1.1WebService(WSDL的提取定义)

以下是SOAP 1.1请求和响应示例。显示的占位符需要替换为实际值。
POST/wsv_teste/wsv.asmx HTTP/1.1
主持人:10.154.1.15
内容类型:text/xml;字符集=utf-8
内容长度:长度
SOAPAction:“http://tempuri.org/set_Bloqueia"
int
一串
一串
一串
一串
HTTP/1.1200ok
内容类型:text/xml;字符集=utf-8
内容长度:长度

您的web服务变量应该是这样的

String HOST = "http://10.154.1.15";
String NAMESPACE = "http://10.154.1.15/wsv_teste/";
String URL = "http://10.154.1.15/wsv_teste/wsv.asmx";
String SOAP_ACTION = "http://10.154.1.15/wsv_teste/";
String METHOD_NAME = "set_Bloqueia";
并替换这个

SoapObject requestBloquear = new SoapObject("http://tempuri.org/", METHOD_NAME);

(代表OP发布)


我终于找到了问题所在。错误是soap请求xml元素之一。“ABR”是错误的。正确的名称是“ARB”。人物性格发生了逆转。我至少花了两天时间才找到它。我为这个幼稚的错误道歉。

投票以“简单的印刷错误”而搁置。
SoapObject requestBloquear = new SoapObject(NAMESPACE, METHOD_NAME);