gpt4 book ai didi

android - 从 HttpTransportSE.responseDump 获取 ksoap 对象

转载 作者:行者123 更新时间:2023-11-29 01:54:12 25 4
gpt4 key购买 nike

在将返回字符串(字符串形式的 xml 数据)的 transport.responseDump 转换为 ksoap 对象时,我不知道如何进一步进行。可能是一些代码 fragment 可以帮助我描述我的问题:

synchronized (transportLockObject)
{
transport.debug = true;
String soapAction = TARGET_NAMESPACE+"/"+method;

try {
transport.call(soapAction, envelope);
} catch (SSLHandshakeException she) {
she.printStackTrace();
}
}
System.out.println("Response ----------"+transport.responseDump);

这就是我获取 responseDump 的方式。我正在保存此转储以便以后使用(比如当我不想要用于测试目的的实际在线数据或没有连接[无论如何])。后来我通常做的是

        Object response = envelope.getResponse();

//Check if response is available... if yes parse the response
if (response != null)
{
if (myResponse != null)
{
myResponse.parse(response);
}
}

我在 parse() 中传递的这个响应实际上是一个 soap 对象。 任何人都可以告诉我如何将从 transport.responseDump 返回的值转换为 soap 对象,以便我可以将它传递给 parse() 方法吗?

任何线索或链接都会有所帮助。任何帮助将不胜感激。

最佳答案

您可以使用“bodyIn”代替“getResponse”

之后

httpTransport.call(SOAP_ACTION, soapEnvelope);

使用

SoapObject result = (SoapObject) soapEnvelope.bodyIn;
UserDefined resultVariable = new UserDefined(j);

UserDefined 构造函数应该能够处理这个。

如果您期望的对象是用户定义的对象,您应该使用 kvmserializable 来实现它。你可以在这里找到一些例子。

KSoap2 and KvmSerializable - How to Send complex Objects like Stringarrays

关于android - 从 HttpTransportSE.responseDump 获取 ksoap 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16184006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com