3

これは私のコードです:

package com.example.toggleDemo;

import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import org.odata4j.consumer.ODataConsumer;
import org.odata4j.core.OEntity;
import org.odata4j.jersey.consumer.ODataJerseyConsumer;
import java.util.List;
import java.util.ArrayList;

public class MainActivity  extends ListActivity {
    @Override
    public void  onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, GetExpenseReports()));
        getListView().setTextFilterEnabled(true);
    }

    ArrayList<String> GetExpenseReports()
    {
        ArrayList<String> listUI = new ArrayList<String>();
        ODataConsumer c = ODataJerseyConsumer.create("http://services.odata.org/Northwind/Northwind.svc/");
        List<OEntity> listCategories= (List<OEntity>) c.getEntities("Categories");
        for(OEntity category : listCategories) {
            listUI.add(String.format("%s-%s", category.getProperty("CategoryID").getValue().toString(), category.getProperty("CategoryName").getValue().toString()));
        }
        return  listUI;
    }
}

エミュレーターで実行すると、次のエラーが発生します: 08-28 17:30:05.793: ERROR/AndroidRuntime(781): FATAL EXCEPTION: main java.lang.NoClassDefFoundError: javax.ws.rs.ext.RuntimeDelegate at org.odata4j.jersey .consumer.ODataJerseyConsumer.(ODataJerseyConsumer.java:22) at org.odata4j.jersey.consumer.ODataJerseyConsumer.(ODataJerseyConsumer.java:14) at org.odata4j.jersey.consumer.ODataJerseyConsumer$Builder.build(ODataJerseyConsumer.java:93) ) org.odata4j.jersey.consumer.ODataJerseyConsumer.create(ODataJerseyConsumer.java:115) で com.example.toggleDemo.MainActivity.GetExpenseReports(MainActivity.java:38) で com.example.toggleDemo.MainActivity.onCreate(MainActivity. java:22) android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) で android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627) で android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) で android.app.ActivityThread.access$2300(ActivityThread.java:125) で android.app.ActivityThread$H.handleMessage( ActivityThread.java:2033) で android.os.Handler.dispatchMessage(Handler.java:99) で android.os.Looper.loop(Looper.java:123) で android.app.ActivityThread.main(ActivityThread.java:4627) ) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java で java.lang.reflect.Method.invoke(Method.java:521) で java.lang.reflect.Method.invokeNative(ネイティブ メソッド) で:868) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) で dalvik.system.NativeStart.main(ネイティブ メソッド)2627) android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) で android.app.ActivityThread.access$2300(ActivityThread.java:125) で android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) android.os.Handler.dispatchMessage(Handler.java:99) で android.os.Looper.loop(Looper.java:123) で android.app.ActivityThread.main(ActivityThread.java:4627) で java.lang. com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) の java.lang.reflect.Method.invoke(Method.java:521) でのreflect.Method.invokeNative(ネイティブ メソッド)。 android.internal.os.ZygoteInit.main(ZygoteInit.java:626) で dalvik.system.NativeStart.main(ネイティブ メソッド)2627) android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) で android.app.ActivityThread.access$2300(ActivityThread.java:125) で android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) android.os.Handler.dispatchMessage(Handler.java:99) で android.os.Looper.loop(Looper.java:123) で android.app.ActivityThread.main(ActivityThread.java:4627) で java.lang. com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) の java.lang.reflect.Method.invoke(Method.java:521) でのreflect.Method.invokeNative(ネイティブ メソッド)。 android.internal.os.ZygoteInit.main(ZygoteInit.java:626) で dalvik.system.NativeStart.main(ネイティブ メソッド)2679) android.app.ActivityThread.access$2300(ActivityThread.java:125) で android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) で android.os.Handler.dispatchMessage(Handler.java:99) android.os.Looper.loop(Looper.java:123) で android.app.ActivityThread.main(ActivityThread.java:4627) で java.lang.reflect.Method.invokeNative(Native Method) で java.lang.reflect で.Method.invoke(Method.java:521) で com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) で com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) ) dalvik.system.NativeStart.main(ネイティブ メソッド) で2679) android.app.ActivityThread.access$2300(ActivityThread.java:125) で android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) で android.os.Handler.dispatchMessage(Handler.java:99) android.os.Looper.loop(Looper.java:123) で android.app.ActivityThread.main(ActivityThread.java:4627) で java.lang.reflect.Method.invokeNative(Native Method) で java.lang.reflect で.Method.invoke(Method.java:521) で com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) で com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) ) dalvik.system.NativeStart.main(ネイティブ メソッド) でandroid.os.Looper.loop(Looper.java:123) での dispatchMessage(Handler.java:99)メソッド) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) で java.lang.reflect.Method.invoke(Method.java:521) com.android.internal.os.ZygoteInit で.main(ZygoteInit.java:626) at dalvik.system.NativeStart.main(ネイティブ メソッド)android.os.Looper.loop(Looper.java:123) での dispatchMessage(Handler.java:99)メソッド) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) で java.lang.reflect.Method.invoke(Method.java:521) com.android.internal.os.ZygoteInit で.main(ZygoteInit.java:626) at dalvik.system.NativeStart.main(ネイティブ メソッド)868) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) で dalvik.system.NativeStart.main(ネイティブ メソッド)868) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) で dalvik.system.NativeStart.main(ネイティブ メソッド)

前もって感謝します!

4

1 に答える 1

0

これを試してみてください ArrayList listUI = new ArrayList(); ODataConsumer c = ODataJerseyConsumer.create(" http://services.odata.org/Northwind/Northwind.svc/ "); OQueryRequest カテゴリ = c.getEntities("カテゴリ");

    Enumerable<OEntity> enumCatagory = catagories.execute();
    OEntity category = enumCatagory.first();
    System.out.println(enumCatagory.count());
    String str = String.format("%s-%s", category.getProperty("CategoryID").getValue().toString(), category.getProperty("CategoryName").getValue().toString());
    System.out.println(str);
于 2015-05-18T16:27:01.040 に答える