Vikki
Vikki

Reputation: 279

JDO Exception in google app engine

       My google app engine project working fine last 4 months but today i have faced a strange Error like " i have not change any jar and library last four months related to jdo . could anyone explain me suddenly what happened to Google app engine and how to fix it.   Error is 

org.datanucleus.api.jdo.NucleusJDOHelper getJDOExceptionForNucleusException: Exception thrown Persistent class "Class com.zeronebyte.domain.MYUser does not seem to have been enhanced. You may want to rerun the enhancer and check for errors in the output." has no table in the database, but the operation requires it. Please check the specification of the MetaData for this class.

    at com.google.appengine.datanucleus.DatastoreManager.getDatastoreClass(DatastoreManager.java:551)
    at 

Any Help

Upvotes: 1

Views: 213

Answers (1)

Devashish Mamgain
Devashish Mamgain

Reputation: 2097

This can happen whenever there is a change in the database table related class files. It is a technique for byte-code manipulation to make the normal Java classes "persistable". The mechanism provided by DataNucleus is to use an "enhancer" process to perform this manipulation before you use your classes at runtime. Read more: http://www.datanucleus.org/products/datanucleus/jdo/enhancer.html

How to fix it: For eclipse: details are here: http://www.datanucleus.org/products/datanucleus/jpa/guides/eclipse.html#enhancer

If you are using Ant build then open build.xml and run the target "enhancer".

Upvotes: 2

Related Questions