Here they are:
/**
* Convenience method: gets a new PersistenceManager
*/
public PersistenceManager newPersistenceManager() {
return this.getPersistenceManagerFactory()
.getPersistenceManager();
}
/**
* Gets the PersistenceManagerFactory that was created by
* this Initializer.
*/
public PersistenceManagerFactory getPersistenceManagerFactory() {
if (pmf == null) {
Logger.getLogger("DataNucleus.JDO").setLevel(Level.FINEST);
Logger.getLogger("DataNucleus.JPA").setLevel(Level.FINEST);
Logger.getLogger("DataNucleus.Persistence").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Query").setLevel(Level.FINEST);
Logger.getLogger("DataNucleus.Lifecycle").setLevel(Level.FINEST);
Logger.getLogger("DataNucleus.Reachability").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Cache").setLevel(Level.FINEST);
Logger.getLogger("DataNucleus.ClassLoading").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.MetaData").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Management").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.General").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Connection").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.JCA").setLevel(Level.FINEST);
Logger.getLogger("DataNucleus.Transaction").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Plugin").setLevel(Level.OFF);
Logger.getLogger("DataNucleus.ValueGeneration").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Datastore").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Datastore.Schema").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Datastore.Persist").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Datastore.Retrieve").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Datastore.Native").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.Enhancer").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.SchemaTool").setLevel
(Level.FINEST);
Logger.getLogger("DataNucleus.IDE").setLevel(Level.FINEST);
Properties newProperties = new Properties();
newProperties.put("javax.jdo.PersistenceManagerFactoryClass",
"org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManagerFactory");
newProperties.put
("javax.jdo.option.ConnectionURL","appengine");
newProperties.put("javax.jdo.option.NontransactionalRead",
"true");
newProperties.put("javax.jdo.option.NontransactionalWrite",
"true");
newProperties.put("javax.jdo.option.RetainValues","true");
newProperties.put
("datanucleus.appengine.autoCreateDatastoreTxns","true");
pmf = JDOHelper.getPersistenceManagerFactory(newProperties);
}
return pmf;
}
@PersistenceCapable(identityType = IdentityType.APPLICATION)
@Inheritance(strategy = InheritanceStrategy.SUBCLASS_TABLE)
public class User implements PersistHooks {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent
private Email email;
@Persistent
private String user_type;
@Persistent
private String password;
@Persistent
private Date create_time;
@Persistent
private Date create_date;
@Persistent
private Date update_time;
@Persistent
private Date update_date;
@SuppressWarnings("deprecation")
public void beforeSave() {
if (this.create_date == null) {
this.create_time = new Date();
this.create_date = new Date(create_time.getYear(),
create_time.getMonth(), create_time.getDate());
}
this.update_time = new Date();
this.update_date = new Date(update_time.getYear(),
update_time.getMonth(), update_time.getDate());
}
public void afterLoad() {}
public User(String email, String password) {
this.email = new Email(email);
this.password = password;
}
public User() {
}
public Key getKey() {
return key;
}
public void setKey(Key key) {
this.key = key;
}
public Email getEmail() {
return email;
}
public void setEmail(Email email) {
this.email = email;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Date getCreate_time() {
return create_time;
}
public void setCreate_time(Date createTime) {
create_time = createTime;
}
public Date getCreate_date() {
return create_date;
}
public void setCreate_date(Date createDate) {
create_date = createDate;
}
public Date getUpdate_time() {
return update_time;
}
public void setUpdate_time(Date updateTime) {
update_time = updateTime;
}
public Date getUpdate_date() {
return update_date;
}
public void setUpdate_date(Date updateDate) {
update_date = updateDate;
}
public String getUser_type() {
return user_type;
}
public void setUser_type(String userType) {
user_type = userType;
}
}
On Jan 27, 2:08 pm, "Ikai L (Google)" <[email protected]> wrote:
> Any chance you can post the User class and the method definition for
> newPersistenceManager()?
>
>
>
> On Wed, Jan 27, 2010 at 2:04 PM, Will Bunker <[email protected]> wrote:
> > Also turned on logging of the Datanucleus to the finest level and am
> > getting the following:
>
> > Jan 27, 2010 2:00:08 PM org.datanucleus.PersistenceConfiguration
> > setProperty
> > INFO: Property datanucleus.rdbms.sql.allowAllSQLStatements unknown -
> > will be ignored
> > Jan 27, 2010 2:00:08 PM org.datanucleus.PersistenceConfiguration
> > setProperty
> > INFO: Property datanucleus.rdbms.stringDefaultLength unknown - will be
> > ignored
> > Jan 27, 2010 2:00:08 PM org.datanucleus.PersistenceConfiguration
> > setProperty
> > INFO: Property datanucleus.appengine.autoCreateDatastoreTxns unknown -
> > will be ignored
> > Jan 27, 2010 2:00:08 PM org.datanucleus.ObjectManagerFactoryImpl
> > logConfiguration
> > INFO: ================= Persistence Configuration ===============
> > Jan 27, 2010 2:00:08 PM org.datanucleus.ObjectManagerFactoryImpl
> > logConfiguration
> > INFO: DataNucleus Persistence Factory - Vendor: "DataNucleus"
> > Version: "1.1.5"
> > Jan 27, 2010 2:00:08 PM org.datanucleus.ObjectManagerFactoryImpl
> > logConfiguration
> > INFO: DataNucleus Persistence Factory initialised for datastore
> > URL="appengine" driver="" userName=""
> > Jan 27, 2010 2:00:08 PM org.datanucleus.ObjectManagerFactoryImpl
> > logConfiguration
> > INFO: ===========================================================
> > Jan 27, 2010 2:00:08 PM org.datanucleus.PersistenceConfiguration
> > setProperty
> > INFO: Property datanucleus.query.cached unknown - will be ignored
> > Jan 27, 2010 2:00:08 PM
> > org.datanucleus.jdo.metadata.JDOMetaDataManager <init>
> > INFO: Registering listener for metadata initialisation
> > Jan 27, 2010 2:00:08 PM org.datanucleus.jdo.metadata.JDOMetaDataManager
> > $MetaDataRegisterClassListener registerClass
> > INFO: Listener found initialisation for persistable class
> > com.sootra.shared.User
> > Jan 27, 2010 2:00:08 PM
> > org.datanucleus.jdo.metadata.JDOAnnotationReader
> > processClassAnnotations
> > INFO: Class "com.sootra.shared.User" has been specified with JDO
> > annotations so using those.
> > Jan 27, 2010 2:00:08 PM
> > org.datanucleus.store.appengine.MetaDataValidator validate
> > INFO: Performing appengine-specific metadata validation for
> > com.sootra.shared.User
> > Jan 27, 2010 2:00:08 PM
> > org.datanucleus.store.appengine.MetaDataValidator validate
> > INFO: Finished performing appengine-specific metadata validation for
> > com.sootra.shared.User
> > Jan 27, 2010 2:00:08 PM org.datanucleus.store.StoreDataManager
> > registerStoreData
> > INFO: Managing Persistence of Class : com.sootra.shared.User [Table :
> > (none), InheritanceStrategy : subclass-table]
> > Jan 27, 2010 2:00:08 PM org.datanucleus.store.StoreDataManager
> > registerStoreData
> > INFO: Managing Persistence of Class : com.sootra.shared.User [Table :
> > (none), InheritanceStrategy : subclass-table]
>
> > So it seems to be running the metadata validation but then can't find
> > the enhanced information???
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "Google App Engine for Java" group.
> > To post to this group, send email to
> > [email protected].
> > To unsubscribe from this group, send email to
> > [email protected]<google-appengine-java%[email protected]>
> > .
> > For more options, visit this group at
> >http://groups.google.com/group/google-appengine-java?hl=en.
>
> --
> Ikai Lan
> Developer Programs Engineer, Google App
> Enginehttp://googleappengine.blogspot.com|http://twitter.com/app_engine
--
You received this message because you are subscribed to the Google Groups
"Google App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-appengine-java?hl=en.