पर पॉप्युलेट नहीं किया गया है जब मैं एक वर्ग बनाता हूं जो "gae.encoded-pk" और "gae.pk-id" दोनों को परिभाषित करता है, तो एन्कोडेड-पीके अपडेट किया जाता है, लेकिन आईडी शून्य हो जाती है । फेंकने का कोई अपवाद नहीं है और कोड Google के दस्तावेज़ से सीधी प्रतिलिपि पेस्ट है, इसलिए मुझे यहां क्या हो रहा है, इस बारे में एक नुकसान हुआ है।Datanucleus gae.pk-id makePersistent
वर्ग की परिभाषा:
@PersistenceCapable
public class MyClass {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
@Extension(vendorName="datanucleus", key="gae.encoded-pk", value="true")
private String encodedKey;
@Persistent
@Extension(vendorName="datanucleus", key="gae.pk-id", value="true")
private Long keyId;
और मैं यह लगातार इस तरह बनाना: मैं इस कोड से निकलने के लिए डिबगर उपयोग कर रहा हूँ
PersistenceManager pm = PMF.get().getPersistenceManager();
try {
pm.makePersistent(myInstance);
// myInstance = pm.makePersistent(myInstance); - Produces the same result.
} finally {
pm.close();
}
, लेकिन Keyid अशक्त बना हुआ है के बाद भी, दृढ़ता प्रबंधक बंद है।
मुझे यह भी इंगित करना चाहिए कि यह Google appengine विकास किट का उपयोग करके स्थानीय रूप से चल रहा है। किसी भी पॉइंटर्स के रूप में मैं इसे कैसे डिबग कर सकता हूं इसकी सराहना की जाएगी!
GAE JDO प्लगइन ही कभी एक "gae.pk-आईडी"/"gae.pk-नाम" फ़ील्ड जब यह एक क्षेत्र डेटास्टोर से उस के साथ चिह्नित में पढ़ता सेट (:
यहां एक ही समस्या – craigrs84