Google Glass アプリケーション内で OData を使用しようとしています。これまでに行ったことは、必要な odata4j.JAR をインポートし、「AsyncTask」クラスを拡張する「PersonRequest」というクラスを実装することでした。このクラスは次のことのみを行います。
public class PersonRequest extends AsyncTask<Void, Void, ArrayList<Person>>{
private ArrayList<Person> persons;
@Override
protected ArrayList<Person> doInBackground(Void... params){
int i = 0;
String serviceURL = "http://services.odata.org/OData/OData.svc/";
ODataConsumer myConsumer = ODataConsumers.create(serviceURL);
for(OEntity category : myConsumer.getEntities("Categories").execute()){
String categoryName = category.getProperty("Name", String.class).getValue();
System.out.println("Category: " + categoryName);
}
return(this.persons);
}
次のコードで、あるビューから別のビューに切り替えるときに、このクラスを呼び出します。
new PersonRequest().execute()
私が今抱えている問題は、次のようなエラーが常に発生することです。
FATAL EXCEPTION: AsyncTask #1
java.lang.RuntimeException: An error occured while executing doInBackground() ...
Caused by: java.lang.IllegalArgumentException: Unknown ODataVersion 3.0
私は実際に odata4j の公式 Web サイトから最新の OData-Package-Version 0.7 をダウンロードし、「odata4j-0.7.0-clientbundle.jar」を追加しましたが、これは機能しないようです...問題???あなたの答えを楽しみにしています!
こんにちはステフ