0

我的本地 Java Google App Engine 实例似乎可以很好地索引搜索文档,但在运行搜索时开始抛出异常。包括代码片段和异常。蒂亚!

搜索代码:

QueryOptions options = QueryOptions.newBuilder()
            .setLimit(500)
            .build();
    String queryString = searchStr;
    Query query = Query.newBuilder().setOptions(options).build(queryString);

    IndexSpec indexSpec = IndexSpec.newBuilder().setName(projectName + "Search").build(); 
    Index index = SearchServiceFactory.getSearchService().getIndex(indexSpec);

    Results<ScoredDocument> results = null;

    try {

        results = index.search(query);

    } catch (SearchException e) {

    }

例外:

java.lang.NullPointerException at com.google.appengine.repackaged.com.google.appengine.api.search.SearchServicePb$ListDocumentsResponse$Builder.addDocument(SearchServicePb.java:13298) at com.google.appengine.api.search.dev .LocalSearchService.listDocumentsForApp(LocalSearchService.java:527) 在 com.google.appengine.api.search.dev.LocalSearchService.getFieldTypes(LocalSearchService.java:710) 在 com.google.appengine.api.search.dev.LocalSearchService.searchForApp (LocalSearchService.java:564) 在 com.google.appengine.api.search.dev.LocalSearchService.search(LocalSearchService.java:547) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.callInternal(ApiProxyLocalImpl.java:525) 在 com.google.appengine.tools 的 java.lang.reflect.Method.invoke(Method.java:606) .development.ApiProxyLocalImpl$AsyncApiCall.call(ApiProxyLocalImpl.java:479) 在 com.google.appengine.tools.development.ApiProxyLocalImpl$AsyncApiCall.call(ApiProxyLocalImpl.java:456) 在 java.util.concurrent.Executors$PrivilegedCallable$1。在 java.util.concurrent.Executors$PrivilegedCallable.call(Executors.java:490) 在 java.util.concurrent.FutureTask.run( FutureTask.java:262) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 在 java.util.concurrent.ThreadPoolExecutor$Worker。在 java.lang.Thread.run(Thread.java:744) 处运行(ThreadPoolExecutor.java:615)

4

0 回答 0