【问题标题】:KXmlParser.require(KXmlParser.java while accessing SOAP web service in javaKXmlParser.require(KXmlParser.java 在 java 中访问 SOAP Web 服务时
【发布时间】:2010-12-17 06:41:57
【问题描述】:

我添加了库“ksoap2-android-assembly-2.4-jar-with-dependencies.jar” 但我得到以下错误:

Exception in thread "main" java.lang.NullPointerException at org.kxml2.io.KXmlParser.require(KXmlParser.java:1353) at org.ksoap2.SoapEnvelope.parse(SoapEnvelope.java:127) at org.ksoap2.transport.Transport.parseResponse(Transport.java:63) at org.ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:100)


    private void getData()
    {
    String METHOD_NAME = "schedule.setschedule";

        String SOAP_ACTION = "urn:schedule#setschedule";

        String NAMESPACE = "urn:schedule";

        String URL = "http://96.30.19.40:8080/server.php?wsdl";

         try {
            SoapObject request=soap(METHOD_NAME,SOAP_ACTION,NAMESPACE,URL);
            System.out.println("suceess");
            System.out.println(request.toString());
        } catch (IOException e) {
            // TODO Auto-generated catch block
            System.out.println("fail1");
            e.printStackTrace();
        } catch (XmlPullParserException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            System.out.println("fail2");
        }
}

public static SoapObject soap(String METHOD_NAME, String SOAP_ACTION, String NAMESPACE, String URL) throws IOException, XmlPullParserException {
        SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); //set up request
        request.addProperty("iTopN", "5"); //variable name, value. I got the variable name, from the wsdl file!

        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); //put all required data into a soap envelope

        envelope.setOutputSoapObject(request);  //prepare request

        HttpTransport httpTransport = new HttpTransport(URL);  

        httpTransport.debug = true;  //this is optional, use it if you don't want to use a packet sniffer to check what the sent message was (httpTransport.requestDump)

        httpTransport.call(SOAP_ACTION, envelope); //send request

        SoapObject result=(SoapObject)envelope.getResponse(); //get response
        return result;
     }

【问题讨论】:

  • 您的 CLASSPATH 中是否有包含 javax/microedition/io/Connector 的 jar 文件?
  • 能否请您给我 jar 的路径,以便 iu 可以下载并添加到类路径中。我无法得到相同的结果。

标签: java ksoap2


【解决方案1】:

项目的正确下载地址在这里 http://code.google.com/p/ksoap2-android/wiki/HowToUse?tm=2

上面提供的直接网址是旧版本。阅读说明并下载完整的捆绑包。

【讨论】:

    【解决方案2】:

    您可能没有正确的ksoap2

    【讨论】:

    • 我已经添加了库“ksoap2-android-assembly-2.4-jar-with-dependencies.jar”,但现在我遇到了错误:线程“main”中的异常 java.lang.NullPointerException org.kxml2.io.KXmlParser.require(KXmlParser.java:1353) 在 org.ksoap2.SoapEnvelope.parse(SoapEnvelope.java:127) 在 org.ksoap2.transport.Transport.parseResponse(Transport.java:63) 在 org .ksoap2.transport.HttpTransportSE.call(HttpTransportSE.java:100)
    • 添加这个jar文件kxml2-min-2.3.0.jar
    • 我已经添加了 jar kxml2-min-2.3.0.jar 但仍然得到同样的错误,不知道为什么它没有拿 jar
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多