Google App Engine 프로젝트에서 작업 중이며 JDO에서 관계가 제대로 작동하기 위해 애 쓰고 있습니다. 개체가 올바르게 저장되지만 관련 개체가 데이터 저장소 뷰어 또는 쿼리에 표시되지 않습니다.Google App Engine에서 소유 관계가 작동하지 않습니다.
A는 내 코드의 예를 손질 :
@PersistenceCapable
public class Project implements Persistable {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key id;
@Persistent(defaultFetchGroup = "true")
private Client client;
// Extra fields and getter and setters remove
}
@PersistenceCapable
public class Client implements Persistable {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key id;
Representation r = null;
PersistenceManager pm = PMF.get().getPersistenceManager();
try {
XMLToObject p = new XMLToObject(new org.everglade.tempus.persistence.dataobjects.Project());
p.parse(xml);
org.everglade.tempus.persistence.dataobjects.Project proj = (org.everglade.tempus.persistence.dataobjects.Project) p.getObject();
pm.makePersistent(proj);
getResponse().setStatus(Status.SUCCESS_CREATED);
getResponse().setLocationRef("/project/" + KeyFactory.keyToString(proj.getId()));
} catch (Exception e) { // Add finer exception handling here so can alter status based on what went wrong!
getResponse().setStatus(Status.SERVER_ERROR_INTERNAL);
Log.severe("The following error occurred whilst trying to add a new project: " + e.getMessage());
} finally {
pm.close();
}
프로젝트의 목적은 그러나 어떤 클라이언트가 연결되지 않습니다 저장 - 사람이 왜 볼 수 있습니까? 이것은 앱 엔진에서의 첫 번째 앱이자 JDO를 사용하는 앱이기 때문에 매우 분명합니다.
미리 감사드립니다.