App Engine'in JDO uygulamasının yerel geliştirme sürümünü kullanıyorum. Gömülü alanlar olarak başka nesneler içeren bir nesneyi sorguladığımda, katıştırılmış alanlar boş olarak döndürülür.Gömülü JDO Alanı Sorgu Tarafından Alınmadı
@PersistenceCapable
public class Branch {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long id;
@Persistent
private String name;
@Persistent
private Address address;
...
}
ve bu benim gömülü nesne:
@PersistenceCapable(embeddedOnly="true")
public class Address {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long id;
@Persistent
private String street;
@Persistent
private String city;
...
}
Aşağıdaki kod gömülü nesneyi almak değildir:
Örneğin, bu ben ısrarcı am ana nesnedir diyelim
PersistenceManager pm = MyPersistenceManagerFactory.get().getPersistenceManager();
Branch branch = null;
try {
branch = pm.getObjectById(Branch.class, branchId);
}
catch (JDOObjectNotFoundException onfe) {
// not found
}
catch (Exception e) {
// failed
}
finally {
pm.close();
}
Bunun için bir çözümü olan var mı? Katıştırılmış adres alanıyla birlikte Branch nesnesini nasıl geri alabilirim?
Hızlı yanıt için teşekkürler! Bunu test edip çalışıp çalışmadığını size bildiririm. – Chania
Bir alan aktif getirme grubundaysa, açıkça alınmalıdır. Öyleyse neden basit bir test çantası sunmuyor ve http://code.google.com/p/datanucleus-appengine/issues/list adresinden raporlamıyorsunuz. Raporlama, muhtemelen projeye dahil olan kimsenin bilmeyeceği anlamına geliyor. bu konuda – DataNucleus
Bu bir hata veya JDO belirtiminin bir parçası olup olmadığından emin değilim. Gömülü alanların tembel yüklenmesinin JDO özelliklerinde olduğunu bir yerlerde okumayı hatırlıyorum, ama şimdi bulamıyorum. – Cengiz