org.xmlpull.v1.XmlPullParserException:意外类型(位置:END_DOCUMENT null @ 1:0 in java.io.InputStreamReader@c

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了org.xmlpull.v1.XmlPullParserException:意外类型(位置:END_DOCUMENT null @ 1:0 in java.io.InputStreamReader@c相关的知识,希望对你有一定的参考价值。

我是blackberry的新手,我只是试图调用在SAP CRM上执行某些操作的Web服务,但是我得到了这个异常:org.xmlpull.v1.XmlPullParserException:意外类型(位置:END_DOCUMENT null @ 1:0在java中.io.InputStreamReader @ c599f9fd)

这是代码......

   SoapObject rpc = new SoapObject(serviceNamespace,"zws_incoming_email");

   rpc.addProperty("username","sreenu");

   rpc.addProperty("Password","ravi");

   SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
   envelope.bodyOut = rpc;

   envelope.dotNet = true;
   envelope.encodingStyle = SoapSerializationEnvelope.ENC;
   envelope.env = "http://schemas.xmlsoap.org/soap/envelope/";
   HttpTransport ht = new HttpTransport(serviceUrl);
 //s  ht.requestDump=msg;
   ht.debug = true;
   String request="";
   ht.setXmlVersionTag("<?xml version="1.0" encoding="UTF-8"?>"  ); 
   String response=ht.responseDump;
        try
            {  
            System.out.print("2222222");
            ht.call(soapAction,envelope);
            String result = (envelope.getResponse()).toString();
            System.out.println("in try block"+result);
            System.out.println("Request"+request);
            System.out.println("Response"+response);
            System.out.println("Result......"+result);  
             }        
        catch(org.xmlpull.v1.XmlPullParserException ex2){
            String msg2 = ex2.toString();
              request=ht.requestDump;
               response=ht.responseDump;
             System.out.println("Exception...... "+msg2);
              System.out.println("request...... "+request);
              System.out.println("response...... "+response);
                 }

          catch(Exception ex)
           {
        String msg1 = ex.toString();
           System.out.println(".......... catch block"+msg1);
          }     
}

在ht.call()方法之后引发异常,请帮助我..............

答案

我有同样的问题,得到END_DOCUMENT错误,但我解决了它。

主要问题是在模拟器中的代理设置。

当我尝试从Blackberry模拟器访问Web服务时,无论我做了什么,我都会一直收到此错误。经过2天的“研究”,我解决了这个问题。请执行下列操作:

  1. 确保您已经预先验证了KSOAP2罐。如果不采取措施:http://www.craigagreen.com/index.php?/Blog/blackberry-and-net-webservice-tutorial-part-1.html
  2. 确保已安装MDS。如果没有,请去https://swdownloads.blackberry.com/Downloads/entry.do?code=996009F2374006606F4C0B0FDA878AF1下载并安装Blackberry Email和MDS Services Simulator Package。
  3. 转到C:Program Files (x86)Research In MotionBlackBerry Email and MDS Services Simulators 4.1.2MDSconfig(安装了步骤2的包)。打开rimpublic.property文件。在[HTTP HANDLER]下添加以下行: application.handler.http.proxyEnabled = true application.handler.http.proxyHost=YOUR_PROXY_IP application.handler.http.proxyPort=PROXY_PORT application.handler.http.proxyUser=PROXY_USER (with domain if required) application.handler.http.proxyPass=PASSWORD application.handler.http.proxyAutoConfig = false`
  4. 现在相当重要且有趣的一步。我在Eclipse中有用户的第一个Blackberry模拟器没有采用代理设置。我并不打算输入代理设置。所以我在模拟器中没有互联网接入(这是主要问题)。然后我尝试安装其他模拟器。 (在我的案例中,Blackberry Pearl 9100版本5.0.0.884您可以在这里下载:http://us.blackberry.com/developers/resources/simulators.jsp)。当我尝试通过网络浏览器连接到互联网时,系统提示我输入用户名,域名和密码。繁荣,我有互联网连接。问题解决了。我的应用程序工作正常。
另一答案

我有同样的问题,我可以通过再次下载KSOAP库来解决它

ksoap2-机器人组装-3.0.0-RC.4-JAR-与依赖性

发现在https://code.google.com/p/ksoap2-android/

似乎他们在以前的版本中存在问题。我希望它能帮助人们解决同样的问题。

以上是关于org.xmlpull.v1.XmlPullParserException:意外类型(位置:END_DOCUMENT null @ 1:0 in java.io.InputStreamReader@c的主要内容,如果未能解决你的问题,请参考以下文章