Google App Engine DataNucleus “does not seem to have been enhanced” Issue

I got DataNucleus exception while developing a Google App Engine based Web Application for one of my office clients. Here is the error message.

javax.jdo.JDOUserException: Persistent class 
"Class com.xxxxx.xxxxx.domain.XXXXXUser 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 

org.datanucleus.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:375)
 at org.datanucleus.jdo.JDOQuery.execute(JDOQuery.java:252)

NestedThrowablesStackTrace:
Persistent class "Class com.xxxxx.xxxxx.domain.XXXXXUser
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. org.datanucleus.store.exceptions.NoTableManagedException: 
Persistent class "Class com.xxxxx.xxxxx.domain.XXXXXUser 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.


Every time when i am getting the latest version form version control, GAE shows the error. As a solution I had to cut and paste all persistent classes. There were about 30 persistent(Domain) classes.
Finally I found the solution for this issue. There is a special configuration in GAE eclipse plug-in which need to be done, to run the datanucleus enhancer.

Go to:
Project Settings -> Google -> App Engine -> ORM

Then remove default value(src/) and configure the source path to persistent file or folder like this:


Post a Comment

Popular posts from this blog

Yield Price Sri Lanka - Android Application

Manage SOAPAction of the Out Message

Remove duplicate XML elements using XSLT