首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >本地数据库的Appengine jdoconfig.xml

问本地数据库的Appengine jdoconfig.xml
EN

Stack Overflow用户
提问于 2010-01-11 18:00:37
回答 2查看 3.4K关注 0票数 5

有没有人成功地将JDO datanucleus默认配置为google app engine,以便在本地数据库上工作?

当我用“rdbms”值指定属性"datanucleus.storeManagerType“时,为什么我总是在jdoconfig.xml中得到一个错误。在最后的部分。

我试着用谷歌搜索,但似乎不太走运。

原因: org.datanucleus.exceptions.NucleusUserException:没有可用的"rdbms“类型的StoreManager。请确保您正确地指定了"datanucleus.storeManagerType“,并且所有相关的插件都在CLASSPATH中

代码语言:javascript
复制
<persistence-manager-factory name="postgresql"> 
<property name="datanucleus.mapping.Schema" value="jdo"/>
<property name="javax.jdo.PersistenceManagerFactoryClass" value="org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManagerFactory"/> 
<property name="datanucleus.ConnectionDriverName" value="org.postgresql.Driver"/> 
<property name="datanucleus.ConnectionURL" value="jdbc:postgresql://localhost:5432/jdo"/> 
<property name="datanucleus.ConnectionUserName" value="jdo"/> 
<property name="datanucleus.ConnectionPassword" value="jdo"/> 
<property name="datanucleus.appengine.autoCreateDatastoreTxns" value="true"/> 
<property name="datanucleus.autoStartMechanism" value="None"/> 
<property name="datanucleus.autoCreateSchema" value="true"/> 
<property name="datanucleus.validateTables" value="true"/> 
<property name="datanucleus.validateConstraints" value="true"/> 
<property name="datanucleus.validateColumns" value="true"/> 
<property name="datanucleus.DetachAllOnCommit" value="true"/> 
<property name="datanucleus.maxFetchDepth" value="1"/> 
<property name="datanucleus.storeManagerType" value="rdbms"/>

PMF.java的代码

代码语言:javascript
复制
private static final PersistenceManagerFactory pmfInstance =
JDOHelper.getPersistenceManagerFactory("postgresql");
EN

回答 2

Stack Overflow用户

发布于 2011-12-11 20:38:40

我记得通过在WEB-INF/lib中包含datanucleus-rdbms-X.Y.Z.jar修复了这个问题

票数 4
EN

Stack Overflow用户

发布于 2010-01-25 11:16:15

当使用默认应用程序引擎sdk的"transaction-optional“数据存储之外的其他数据存储时,您需要使用另一个web应用程序容器(例如apache-tomcat或jetty )才能使rdbms驱动程序类(即postgresql.jar-org.postgresql.Driver、mysql.jar com.mysql.jdbc.Driver)工作,因为谷歌应用程序引擎禁止您的应用程序使用数据库驱动程序使用的java.net.socket

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2041031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档