我使用谷歌应用程序引擎1.2.6 Eclipse插件和Web工具包1.7.1 DataNucleus将/ JDO是推动我疯了! 我怀疑我的创建是在写入之前默默地出错和/或读取不一致地填充对象。故障排除DataNucleus将JDO
我可以使用在搞清楚什么是真正发生的一些技巧。
- 利用最小未修改的GAE项目,其中日志写的DN增强?
- 有数据存储区编写的代码日志?
反正是有检查的内容是local_db.bin文件?
使用基本JDO事务下面的语法,我怎么知道不会干扰内建的错误处理机制的错误/异常?
TIA, 安迪
private final Provider<PersistenceManager> pmp; private PersistenceManager pm; MyResult result; // results from handler, usually has object id or error message try { pm = pmp.get(); pm.currentTransaction().begin(); /* validate, fetch, create/update persistent myObject */ pm.currentTransaction().commit(); result = new MyResult(myObject.getId()); } finally { if (pm.currentTransaction().isActive()) { logger.severe("DN fails..."); pm.currentTransaction().rollback(); result = new MyResult("error message why failed"); } } return (result);
为DN的运行记录是由logging.properties的内容,受影响的文件 我已经改变从WARN到的信息在这里: DataNucleus.JDO.level = INFO DataNucleus.Persistence.level = INFO DataNucleus.Cache.level = INFO DataNucleus.MetaData.level = INFO DataNucleus.General.level = INFO DataNucleus将.Utility.level = INFO DataNucleus.Transaction.level = INFO DataNucleus.Datastore.level = INFO DataNucleus.ClassLoading.level = INFO DataNucleus.Plugin.level = INFO DataNucleus.ValueGeneration.level = INFO DataNucleus.Enhancer .LEVEL = INFO DataNucleus.SchemaTool.level = INFO – Stevko 2009-11-29 03:36:24