gpt4 book ai didi

android - SOAP 调用仅在真实设备中抛出 XMLPullParser 异常

转载 作者:行者123 更新时间:2023-11-30 03:37:04 26 4
gpt4 key购买 nike

我在我的 Android 应用程序中使用 KSOAP2 库来调用 SOAP 服务。该代码在 2.2 版的模拟器中运行良好。但是当我尝试在我的手机 (HTC Wildfire) 中运行该应用程序时,它也是 2.2,我收到 XMLPullParser 异常...看到这个 link但没有人回复。另外,看到另一个讨论here但不明白那里的建议是什么。有人可以告诉我如何解决这个问题吗?或者是否有任何其他可靠的方法来使用我可以使用的 SOAP 服务?请在下面找到我的代码和日志。

SoapObject request=new SoapObject(NAMESPACE, METHOD_NAME);
SoapSerializationEnvelope envelope=new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet=true;
envelope.setOutputSoapObject(request);
envelope.setOutputSoapObject(request);
envelope.implicitTypes = false;


HttpTransportSE transport=new HttpTransportSE(URL);

try{
Log.v("Inside","Inside try");
transport.debug = true;
transport.call(SOAP_ACTION, envelope);

String xml=transport.responseDump;
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
XmlPullParser xpp = factory.newPullParser();

xpp.setInput( new StringReader ( xml ) );
int eventType = xpp.getEventType();
while (eventType != XmlPullParser.END_DOCUMENT) {
if(eventType == XmlPullParser.START_DOCUMENT) {
System.out.println("Start document");
} else if(eventType == XmlPullParser.START_TAG) {
if(xpp.getName().equals("MMDraw")){
System.out.println("Start tag "+xpp.getName());
megaMResult=new HashMap<String, String>();
boolean endParse=false;
while(!endParse){
xpp.nextTag();
if(xpp.getEventType()==XmlPullParser.END_TAG && xpp.getName().equals("MMDraw") )
{
endParse=true;
System.out.println("End Tag of MMDraw Reached");
}
else{
String key=xpp.getName();
megaMResult.put(xpp.getName(), xpp.nextText());

}
}

在真实设备上运行时来自日志的消息

05-11 00:00:19.413: W/System.err(8531): org.xmlpull.v1.XmlPullParserException: unexpected type (position:END_DOCUMENT null@1:0 in java.io.InputStreamReader@44830068) 

最佳答案

你的xml写对了吗?这个错误是一个解析器异常,之前尝试在 soapUI 程序上读取你的 xml。

关于android - SOAP 调用仅在真实设备中抛出 XMLPullParser 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16501072/

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