2010-01-11 14 views
5

¿Alguien ha configurado con éxito JDO datanucleus predeterminado al motor de la aplicación de Google para trabajar en una base de datos local?Appengine jdoconfig.xml para la base de datos local

¿Por qué siempre obtengo un error en jdoconfig.xml cuando he especificado la propiedad "datanucleus.storeManagerType" con el valor "rdbms". en la parte final

He intentado googlear pero parece no tener suerte.

Causado por: org.datanucleus.exceptions.NucleusUserException: No hay StoreManager disponible del tipo "rdbms". Por favor asegúrese de que ha especificado "datanucleus.storeManagerType" correctamente y que todos los plugins son relevantes en el CLASSPATH

<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"/> 

código para PMF.java

private static final PersistenceManagerFactory pmfInstance = 
JDOHelper.getPersistenceManagerFactory("postgresql"); 

Respuesta

2

Al utilizar otro almacén de datos, aparte de el almacén de datos "transaccional-opcional" de sdk del motor de aplicación, necesita utilizar otro contenedor de aplicaciones web como apache-tomcat o embarcadero para las clases de controlador rdbms (es decir, postgresql.jar-org.postgresql.Driver, mysql. jar com.mysql.jdbc.Driver) para trabajar si na vez que el motor de Google App inhibe la aplicación para utilizar el java.net.Socket. * que es utilizado por los controladores de base

4

Recuerdo de fijación mediante la inclusión de este DataNucleus RDBMS-XYZjar en mi WEB-INF/lib

+0

Gracias. Resolví el mismo problema añadiendo la dependencia 'org.datanucleus: datanucleus-rdbms: X.Y.Z' en pom.xml. –

Cuestiones relacionadas