Я не могу представить больше методов для решения моей проблемы. Вот тема, которую я создал вчера, которая подробно описывает родительский и дочерний класс: https://stackoverflow.com/questions/3800450/many-to-one-unidirectional-gae-jdo-relationship-amongst-entities
Я пытаюсь добавить Truck и сохранить его, но диспетчер постоянства настаивает на том, что первичный ключ родительского элемента равен NULL, даже если я записываю значение до сохранения дочернего элемента, а родительский элемент НЕ равен NULL, на самом деле это действительный ключ, он тоже должен быть установлен. Почему менеджер настойчивости видит что-то, чем я не являюсь?
try{
if (!findTruck(truck)){
_logger.warning("get tweeter key " + truck.getTweeter().getEncodedKey());
pm.makePersistent(truck);
}
}
finally {
pm.close();
}
из журналов:
09-27 06:37PM 12.158
com.google.truxmap.server.TruckJdoDAO addTruck: get tweeter key agp0cnV4bWFwcGVych8LEgdUd2VldGVyIhJrZXltdW5jaGllbWFjaGluZTEM
W 09-27 06:37PM 12.160
com.google.truxmap.server.TruckJdoDAO addTruck: addTruck exception: class java.lang.IllegalStateException. Message:Primary key for object of type Tweeter is null.