私はGoogleのアプリエンジン/データストアのスキルを追い払っています。Google Datastore - エンティティの更新に関する問題
私は次のようにエンティティを更新しようとしていますthe example on the GAE documentationを1として:
// persistence and business logic
PersistenceManager pm = PMF.get().getPersistenceManager();
// get it
NickName n = pm.getObjectById(NickName.class, nicknameId);
// update fields
n.givenName = "new name";
n.nickName = "new nickname";
n.timeStamp = new Date();
// close manager to persist changes
pm.close();
これは動作しません(変更のように持続し、ないエラーや他の何かされていません)!
// persistence and business logic
PersistenceManager pm = PMF.get().getPersistenceManager();
NickName n = new NickName("new name", "new nickname", new Date());
// set id
n.id = nicknameId;
pm.makePersistent(n);
pm.close();
が、私は感じが私はすでにこの私はアプリエンジンと近づい第一の時間を解決した:私は、同じIDを持つ新しいエンティティを作成する場合、変更が持続し得ることを見出した。同時に
データストア。すべてのヘルプ感謝
@PersistenceCapable
public class NickName {
public NickName(String name, String nickname, Date timestamp) {
this.givenName = name;
this.nickName = nickname;
this.timeStamp = timestamp;
}
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
public String id;
@Persistent
public String givenName;
@Persistent
public String nickName;
@Persistent
public Date timeStamp;
}
:
これは私のエンティティは次のようになります!
「これは機能しません!」良い声明ではありません。コンソールログに表示される正確なエラーは何ですか? –
コンソールログには何も表示されませんが、データストアを見ても変更内容は保持されません(あるいは、古い値がそこに残っています) – JohnIdol