0
 protected void onPreExecute()
                {
                    super.onPreExecute();               
                    progressDialog = ProgressDialog.show(getActivity(),"Fetching", "Fetching Contacts", true, false);
                }

                @Override


                protected ArrayList<String> doInBackground(Void... params) {

                // TODO Auto-generated method stub

                ODataConsumer c = ODataJerseyConsumer.create("http://mythreeg.dyndns.org:8088/WcfService_Officetail/WcfDataService.svc/VW_CONTACTS()/?$filter=mobile ne null");

                List<OEntity> listEntities = c.getEntities("VW_CONTACTS").execute().toList();

                System.out.println("Size - " + listEntities.size());



                    for (OEntity entity : listEntities) {

                        categories.add((String) entity.getProperty("contact_name").getValue() + (String) entity.getProperty("mobile").getValue());

                    }

エラー:

    02-15 13:26:26.260: E/AndroidRuntime(330): Caused by: java.lang.IllegalArgumentException: Illegal character in query at index 102:
     http://mythreeg.dyndns.org:8088/WcfService_Officetail/WcfDataService.svc/VW_CONTACTS()/?$filter=mobile ne null/$metadata
4

3 に答える 3

0

Url.Encoder と URL.Decoder を使用すると、URL で使用される特殊文字に関する不正な引数 Ecxeption の問題を解決できます。

于 2013-02-15T09:03:25.843 に答える
0

以下の URL を試してみてください。

mythreeg.dyndns.org:8088/WcfService_Officetail/WcfDataService.svc/VW_CONTACTS/?$filter=mobile%20ne%20null

于 2013-02-15T08:54:15.673 に答える
0

これを試して

url="http://mythreeg.dyndns.org:8088/WcfService_Officetail/WcfDataService.svc/VW_CONTACTS()/?$filter=mobile ne null";
url.replaceAll(" ","%20");
ODataConsumer c = ODataJerseyConsumer.create(url);

スペースを %20 に置き換えるだけでうまくいきます

于 2016-10-12T21:24:55.147 に答える