我是couchbase lite的新手。
到目前为止我做了什么:
在我的couchbase云上创建文档并创建视图(所有视图按预期返回行)
建立连接并将文档从云端提取到Android设备
正确检索并查看我的Android设备上的所有文件
我的问题是:
当我这样做时:
Query query = database.getView("getCategory").createQuery();
//query.setStartKey("m");
query.setLimit(100);
QueryEnumerator result;
try {
result = query.run();
} catch (CouchbaseLiteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
我收到错误:
com.couchbase.lite.CouchbaseLiteException: getViewId() < 0
at com.couchbase.lite.View.updateIndex(View.java:376)
at com.couchbase.lite.Database.queryViewNamed(Database.java:2046)
at com.couchbase.lite.Query.run(Query.java:350)
at com.example.helloworldeclipse.MainActivity.retrieveByView(MainActivity.java:133)
at com.example.helloworldeclipse.MainActivity.onCreate(MainActivity.java:87)
at android.app.Activity.performCreate(Activity.java:5255)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1097)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2213)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2299)
at android.app.ActivityThread.access$700(ActivityThread.java:154)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1284)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5306)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
at dalvik.system.NativeStart.main(Native Method)
我知道方法database.getView(视图名称)的调用没有返回任何视图。
我的文档视图如下:
retrievedDocument={_rev=2-01da195a3162c4bfd3c42996e8c13ea8, language=javascript, _id=_design/getCategory, views={getCategory={map=function(doc) {
if (doc.idCategoryParent && doc.class == "category" ) {
emit(doc.idCategoryParent, doc.categoryName);
}
}}}}
我尝试将其称为getView(“_ design / getCategory / getCategory”),将“_design / getCategory”称为文档名称,将“getCategory”称为视图名称...但仍然会导致相同的错误。