@OneToMany 関係を使用して、コンストラクターがゼロのエンティティでシリアライズ可能な 2 つがあります (@OneToMany リストを使用せずにエンティティを 1 つだけ使用すると、すべてが正しく機能します)。
@Entity
@Table(name = "directory")
public class Directory implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String documentName;
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
private List<DirectoryValues> dirValues;
public Directory() {}
...
getters and setters
}
@Entity
@Table(name = "directoryvalues")
public class DirectoryValues implements Serializable{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String value;
public DirectoryValues() {}
...
getters and setters
}
@OneToMany アノテーションを追加すると問題が発生します。
SEVERE: 着信 RPC 呼び出し com.google.gwt.user.client.rpc.SerializationException のディスパッチ中の例外: タイプ 'org.hibernate.collection.PersistentBag' は、この SerializationPolicy またはそのクラスによってシリアル化できるタイプのセットに含まれていませんでしたオブジェクトを読み込めませんでした。セキュリティ上の理由から、この型はシリアル化されません。: instance = [] at com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.serialize(ServerSerializationStreamWriter.java:619)
エンティティ内のリストの何が問題になっていますか?