Java &引用;意外类型错误“;在Android设备上使用ksoap2时?

Java &引用;意外类型错误“;在Android设备上使用ksoap2时?,java,android,web-services,http,ksoap,Java,Android,Web Services,Http,Ksoap,我正在尝试使用ksoap2库从正在工作的(专业的)服务器中提取请求。在java应用程序中进行了测试(完美无瑕),但当我试图在Android应用程序中实现它时,它就搞砸了 这是我的webservice类和链接,请求也是如此: private final static String MAIN_REQUEST_URL = "http://quantore-test.rightclick.nl/rc/public/webservices/private/app/catalog.cfc?wsdl";

我正在尝试使用ksoap2库从正在工作的(专业的)服务器中提取请求。在java应用程序中进行了测试(完美无瑕),但当我试图在Android应用程序中实现它时,它就搞砸了

这是我的webservice类和链接,请求也是如此:

 private final static String MAIN_REQUEST_URL = "http://quantore-test.rightclick.nl/rc/public/webservices/private/app/catalog.cfc?wsdl";
    private final static String SOAP_ACTION = "";
    private final static String NAMESPACE = "http://rightclick.nl/webservices/private/app/catalog";

    String value;

    public WebService() throws Exception {      

        String id = "1456458";
        double shopId = 156;
        double siteId = 1456398;

        HttpTransportSE ht = getHttpTransportSE();

        String methodname = "getFolders";

        SoapObject request = new SoapObject(NAMESPACE, methodname);


        request.addProperty("id", id);
        request.addProperty("shopId", shopId);
        request.addProperty("siteId", siteId);


        SoapSerializationEnvelope envelope = getSoapSerializationEnvelope(request);

        MarshallDouble marshall = new MarshallDouble();

        marshall.register(envelope);

        try {

        ht.call(SOAP_ACTION, envelope); // bug is here. 

        }
        catch(Exception e) {
            System.out.println("Show error: ");
            System.err.println(e.getMessage());
            System.out.println("--------------------");
        }
下面是我想要实现它的Android代码:

private class ParseNFill extends AsyncTask<Void, Void, String> {

        @Override
        protected String doInBackground(Void... params) {
            WebService service = null;
            String data = null;

            /**
             * checks if a connection can be made. TODO: MAKE NICER AND NOT COPY PASTW
             */
            try {

                service = new WebService();
                data = service.getServerData("1456458", 156, 1456398);

            } catch (Exception e) {
                e.printStackTrace();
            }
            return data;
        }

        @Override
        protected void onPostExecute(String data) {
            text.setText(data);
        }

    }
私有类ParseNFill扩展异步任务{
@凌驾
受保护字符串doInBackground(无效…参数){
WebService服务=null;
字符串数据=null;
/**
*检查是否可以建立连接。TODO:使连接更好,而不是复制过去
*/
试一试{
服务=新的WebService();
data=service.getServerData(“1456458”,1561456398);
}捕获(例外e){
e、 printStackTrace();
}
返回数据;
}
@凌驾
受保护的void onPostExecute(字符串数据){
text.setText(数据);
}
}
这是我的日志。nullpointexception是因为ht.call(SOAP_操作,信封);它从来没有真正制造过

这是我的日志:

    07-11 09:08:13.966: I/System.out(21059): Show error: 
07-11 09:08:13.966: W/System.err(21059): unexpected type (position:END_DOCUMENT null@1:1 in java.io.InputStreamReader@4265c7b0) 
07-11 09:08:13.966: I/System.out(21059): --------------------
07-11 09:08:13.966: W/System.err(21059): java.lang.NullPointerException
07-11 09:08:13.991: W/System.err(21059):    at org.ksoap2.serialization.SoapSerializationEnvelope.getResponse(SoapSerializationEnvelope.java:534)
07-11 09:08:13.991: W/System.err(21059):    at com.dayone.testing.resources.WebService.<init>(WebService.java:55)
07-11 09:08:13.991: W/System.err(21059):    at com.webarchitects.activities.Splash_activity$ParseNFill.doInBackground(Splash_activity.java:61)
07-11 09:08:13.991: W/System.err(21059):    at com.webarchitects.activities.Splash_activity$ParseNFill.doInBackground(Splash_activity.java:1)
07-11 09:08:13.996: W/System.err(21059):    at android.os.AsyncTask$2.call(AsyncTask.java:287)
07-11 09:08:13.996: W/System.err(21059):    at java.util.concurrent.FutureTask.run(FutureTask.java:234)
07-11 09:08:13.996: W/System.err(21059):    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
07-11 09:08:13.996: W/System.err(21059):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
07-11 09:08:13.996: W/System.err(21059):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
07-11 09:08:14.001: W/System.err(21059):    at java.lang.Thread.run(Thread.java:841)
07-11 09:08:13.966:I/System.out(21059):显示错误:
07-11 09:08:13.966:W/System.err(21059):意外类型(位置:结束文档)null@1:1在java.io中。InputStreamReader@4265c7b0) 
07-11 09:08:13.966:I/系统输出(21059):--------------------
07-11 09:08:13.966:W/System.err(21059):java.lang.NullPointerException
07-11 09:08:13.991:W/System.err(21059):位于org.ksoap2.serialization.SoapSerializationEnvelope.getResponse(SoapSerializationEnvelope.java:534)
07-11 09:08:13.991:W/System.err(21059):位于com.dayone.testing.resources.WebService.(WebService.java:55)
07-11 09:08:13.991:W/System.err(21059):位于com.webarchitects.activities.Splash_activity$ParseNFill.doInBackground(Splash_activity.java:61)
07-11 09:08:13.991:W/System.err(21059):位于com.webarchitects.activities.Splash_activity$ParseNFill.doInBackground(Splash_activity.java:1)
07-11 09:08:13.996:W/System.err(21059):在android.os.AsyncTask$2.call(AsyncTask.java:287)
07-11 09:08:13.996:W/System.err(21059):位于java.util.concurrent.FutureTask.run(FutureTask.java:234)
07-11 09:08:13.996:W/System.err(21059):在android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
07-11 09:08:13.996:W/System.err(21059):位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
07-11 09:08:13.996:W/System.err(21059):位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
07-11 09:08:14.001:W/System.err(21059):at java.lang.Thread.run(Thread.java:841)

任何帮助都将不胜感激。我已经看过了其他一些有类似问题的帖子。似乎都不管用

服务不允许我使用的internet连接的IP地址。SoapUI中的一个简单修改修复了它