2012-02-21 12 views
2

データベースからエンティティを削除しようとすると、いくつかの問題が発生します。私はビジネスオブジェクトからAppEngineエンティティを抽象化するためのインターフェイスを持っています。私は簡単に挿入して、アップデートが、私はエラーを得削除しようとすることができます。AppEngineのエンティティの削除中にエラーが発生しました

java.lang.UnsupportedOperationException: Non-owned relationships are not currently supported at org.datanucleus.store.appengine.DatastoreFKListStoreSpecialization.clearWit houtDelete(DatastoreFKListStoreSpecialization.java: 123) at org.datanucleus.sco.backed.List.clear(List.java:817) at org.datanucleus.store.mapped.mapping.CollectionMapping.preDelete(Collection Mapping.java: 299) at org.datanucleus.store.appengine.DependentDeleteRequest.execute(DependentDel eteRequest.java: 71) ...

私はインターフェイスを持って...

public interface ICompany extends IEntityBean { 
    // Getters 
    public List<IUser> getUsers(); 
    public List<IDepartment> getDepartments(); 
    public ICurrency getCurrency() throws Exception; 
} 

を...実装を...

public class GAECompany extends GAEEntityBean implements ICompany { 
    @Override 
    @OneToMany(mappedBy = "company") 
    public List<IUser> getUsers() { 
    return this.users; 
    } 

    @Override 
    @OneToMany(mappedBy = "company") 
    public List<IDepartment> getDepartments() { 
    return this.departments; 
    } 

    @Transient 
    public ICurrency getCurrency() throws Exception { 
    return this.currency; 
    } 
} 

および削除するためのコード...

// Get the entity manager 
    EntityManager em = this.getDBManager(); 

    IEntityBean persistent = em.find(obj.getClass(), obj.getId()); 
    em.remove(persistent); 
    em.flush(); 

I私はちょうど会社を作成し、今私はそれを削除しようとしている依存オブジェクトがありません。 会社に更新を挿入できるので、マッピングが正しいと思われました。削除しないでください! 私は何か間違っているのですか?

+0

v2.0が利用可能な場合に、なぜGoogle JDO/JPAプラグインのv1.0を使用するのですか? – DataNucleus

答えて

0

解決済み!

Google JDO/JPAのバージョンを2.0にアップデートしました。うまくいきました。

関連する問題