Dans l'implémentation JDO d'App Engine, les types d'objet sont enregistrés en tant que 'Kind' avec l'entité qui est conservée dans le magasin de données. Lorsque ces entités sont récupérées hors du magasin de données, elles sont automatiquement renvoyées (dans une couche de JDO) en tant que type d'objet d'origine. Ce qui me trouble, c'est que seul le nom simple de la classe est sauvé; pas le chemin complet. Alors, comment la JVM charge-t-elle la bonne classe? Par exemple, si com.project.domain.User et moi-même sauvegardons une instance de cette classe dans le magasin de données, seul 'User' est défini pour le type d'entité. Par exemple,Comment GAE/JDO convertit-il les entités en objets de domaine?
Lorsque j'utilise JDO pour sélectionner ces données, je récupère un fichier com.project.domain.User. Comment GAE/JDO a-t-il pu charger com.project.domain.User et non com.project.other.domain.User?
Alors, comment ce mappage interne est-il conservé entre le démarrage et l'arrêt de la machine virtuelle Java? Je n'ai rien défini en XML ou en annotation. – Brad
En fait GAE est impliqué dans cela puisque le "fournisseur JDO" est GAE (ou plutôt leur plugin pour DataNucleus). Si vous voulez vous en sortir, il faut passer par cette classe http://code.google.com/p/datanucleus-appengine/source/browse/trunk/src/org/datanucleus/store/appengine/DatastorePersistenceHandler.java – DataNucleus