如何在android中的soap对象中获取非常大的响应数据

如何在android中的soap对象中获取非常大的响应数据,android,ksoap2,Android,Ksoap2,我有一个在.net语言中使用Soap Web服务的应用程序。我有一个这样的结构: 问题:响应是一个表数组。soap对象的大小太大。当我在web浏览器上访问web服务时,它会显示所有数据。但当我试图在android应用程序中访问它时,它无法得到完整的响应。它断成两半回应 这是我能够获取数据的代码: HttpTransportSE androidHttpTransport=新HttpTransportsUrl; androidHttpTransport.callSOAP_操作,信封 !![>如果

我有一个在.net语言中使用Soap Web服务的应用程序。我有一个这样的结构:

问题:响应是一个表数组。soap对象的大小太大。当我在web浏览器上访问web服务时,它会显示所有数据。但当我试图在android应用程序中访问它时,它无法得到完整的响应。它断成两半回应

这是我能够获取数据的代码:

HttpTransportSE androidHttpTransport=新HttpTransportsUrl; androidHttpTransport.callSOAP_操作,信封

!![>如果在SoapObject{SoapObject]的实例中使用envelope.body soapObject=

SoapObject envelope.bodyIn;Log.iSoapObject SoapObject, +soapObject;}]

以下是响应图像:

试着这样使用

SoapObject response = (SoapObject) envelope.getResponse();

您的响应没有被截断。您将获得完整响应,但logcat无法显示完整响应。您可以通过查找响应数组元素的长度来检查它。在您的情况下,尝试记录响应中选择器元素的数量,并将数字与web响应进行比较。我大约有20个表&第20个表的名称是table_20。在此之前,我没有得到任何名称为TABLE_20的字符串。我在logcat中搜索表20并在响应中找到它,因为我无法在响应中看到它。这意味着响应包含最后一个表,但无法显示,很好。我从以下行中得到了这个响应:SoapObject SoapObject=SoapObject envelope.bodyIn;然后通过以下方法将其转换为json对象:JSONObject JSONObject=new JSONObject soapObject.getPropertyAsString0;。那么为什么我无法在jsonObject中获取完整数据。当我搜索时,它只显示一次存在。@Maddy我同意ravi。logcat无法显示完整响应。请检查长度。@Maddy一次存在是什么意思?jsonObject jsonObj;jsonObj=new JSONObjectString.valueOfenvelope.getResponse我想我的jsonObject无法执行所有的响应字符串。json对象长度是否存在任何问题。这将导致响应数据非常大而崩溃。
SoapObject response = (SoapObject) envelope.getResponse();