Question

I just installed the Google Plugin for Eclipse and created my first Web Application Project using the built-in wizard. Going to MyProject >> Properties >> Google >> App Engine >> ORM I see a listbox and a section of text that reads:

Enhance the following classes for usage with ORM:

Searching for this online, the only documentation I can find states that GAE, which uses JDO (DataNucleus), requires post-compilation "enhancement" (which I assume means bytecode generation?!?), and that this dialog gives you the ability to specify which classes get "enhanced"?

  • Still confused by what this "enhancement" stuff is all about, and why its necessary
  • Confused about what classes I would want to select for enhancement
  • Also, I assume this enhancement only occurs when building/deploying my app from inside Eclipse, how do I access this "enhancement" functionality from inside my Ant build?

Thanks in advance!

Was it helpful?

Solution

  1. JDO class enhancement gives data classes ability to detect "dirty" fields, i.e. fields that have been changed since data was last loaded. This is needed to efficiently decide which objects need saving.

  2. The JDO data classes, e.g. the ones that get mapped to data in the database.

  3. GAE SDK includes several ant tasks related to GAE development, including one to do JDO enhancement.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top