App Engine / Quercus数据存储区准备查询错误

时间:2011-12-18 23:27:02

标签: java php google-app-engine quercus

我正在尝试在AppEngine上复制Quercus上的java guestbook example,并且我在准备查询时遇到错误:

$greetings = $datastore->prepare($query)->asIterable();

我不是java开发人员所以我无法理解错误跟踪。如何在不触发此错误的情况下获取问候项?

以下是整个错误页面:

  

HTTP ERROR 500

     

访问/index.php时出现问题。原因是:

INTERNAL_SERVER_ERROR
     

引起:

     

java.lang.NullPointerException at   com.google.appengine.api.datastore.dev.LocalDatastoreService.next(LocalDatastoreService.java:1089)     在sun.reflect.GeneratedMethodAccessor8.invoke(未知来源)at   sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源)at   java.lang.reflect.Method.invoke(未知来源)at   com.google.appengine.tools.development.ApiProxyLocalImpl $ AsyncApiCall.callInternal(ApiProxyLocalImpl.java:498)     在   com.google.appengine.tools.development.ApiProxyLocalImpl $ AsyncApiCall.call(ApiProxyLocalImpl.java:452)     在   com.google.appengine.tools.development.ApiProxyLocalImpl $ AsyncApiCall.call(ApiProxyLocalImpl.java:430)     at java.util.concurrent.Executors $ PrivilegedCallable $ 1.run(未知   来自java.security.AccessController.doPrivileged(Native Method)     在java.util.concurrent.Executors $ PrivilegedCallable.call(未知   来自java.util.concurrent.FutureTask $ Sync.innerRun(未知   来自)java.util.concurrent.FutureTask.run(未知来源)at   java.util.concurrent.ThreadPoolExecutor $ Worker.runTask(未知来源)     at java.util.concurrent.ThreadPoolExecutor $ Worker.run(Unknown Source)     在java.lang.Thread.run(未知来源)

1 个答案:

答案 0 :(得分:0)

如果它是空指针异常,那么您正在尝试访问空对象的方法或属性
首先,您需要检查$ datastore是否为null,然后检查返回的查询是否为null。此外,您需要检查该错误是否在该特定代码行上(可能在其他地方失败)
您可以通过此链接/ _ah / admin访问数据库。也许那里有一个腐败的实体