【发布时间】:2012-01-26 18:18:46
【问题描述】:
我将以下代码部署到应用引擎服务器(唯一 我可以测试 JDO 的地方,不幸的是我无法在本地测试 JDO 因为我没有本地 BigTable 实现)。
final class PMF {
private static final PersistenceManagerFactory pmf = JDOHelper.getPersistenceManagerFactory("transactions-optional");
private PMF() { }
public static PersistenceManagerFactory get() { return pmf; }
}
@PersistenceCapable
class Data {
// ...
@Persistent
private static List<Store> stores = new ArrayList<Store>();
static List<Store> getStores() {
return stores;
}
}
...
Data.getStores().add(store);
writer.write("this line received OK by client.");
PMF.get().getPersistenceManager().makePersistent(Data.getStores());
writer.write("this line never received by client.");
如图所示,客户端接收到来自服务器的第一行输出,而第二行没有,这意味着 makePersistent() 失败。
有人知道为什么会这样吗?
【问题讨论】:
-
在 Rick Mangi 回复之后,您可以复制在 code.google.com/p/datanucleus-appengine/source/browse 下所做的测试。这就是 JDO 插件最初的开发方式。
标签: java google-app-engine jdo