2011-06-19 10 views
2

JPA 2.0を使用しています。 (EclipseLinkは2.0.2)GWT RPC問題による関係を持つエンティティ

エンティティは、たとえば、関係が含まれている場合:

@OneToMany(cascade = CascadeType.ALL, mappedBy = "userId") 
private Collection<Blog> blogCollection; 

私はRPCを通してそれを送信していたときに、私は次のエラーを取得しています:

com.google.gwt.user.client.rpc.SerializationException: Type 'org.eclipse.persistence.indirection.IndirectList' was not included in the set of types which can be serialized by this SerializationPolicy or its Class object could not be loaded. For security purposes, this type will not be serialized.: instance = {[]} 

答えて

2

それが永続仕事をするために、あなたのPOJOクラスにコードを挿入することを意味コードインジェクションという名前の技術を、使用しています。 これは実行時にGWTコンパイラがそれを見ることができないため、そのタイプのシリアライザを生成できません。 解決策は、ワイヤを通して持続クラスを送信しないことです。代わりに、DTO(データ転送オブジェクト)を使用します。

これが役に立ちます。 よろしくお願いいたします。 ダニエル

2

このエラーメッセージあなたの "Blog"オブジェクトにjava.util.Serializableまたはcom.google.gwt.user.client.rpc.IsSerializableが実装されていない可能性が最も高いです。一般的なすべての持続性のAPIで

RPC and Serializable Discussion

関連する問題