すべてのヘルプ/コメントを歓迎します
@OneToMany 関係があります。TVenue と TVenueItem Venue のさまざまなフィールドで検索できるようにしたいので、@Indexed を付けました。私のセットアップは次のとおりです。
@Indexed
@Entity
public class TVenue implements java.io.Serializable {
private Set<TVenueItem> TVenueItems = new HashSet<TVenueItem>(0);
.......
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="TVenue")
public Set<TVenueItem> getTVenueItems() {
return this.TVenueItems;
}
...........
と
@Entity
public class TVenueItem implements java.io.Serializable {
private String name;
private TVenue TVenue;
...........
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="venue_id", nullable=false)
public TVenue getTVenue() {
return this.TVenue;
}
@Field
@Column(name="_name", nullable=false, length=100)
public String getName() {
return this.name;
}
.......
これまでのところ問題はありません。
ここで、完全に独立して、TVenueItem のフィールドを検索したいので、@Indexed としてもマークします。
問題: @Indexed を TVenueItem に追加するとすぐに、(手動の) インデックス作成が永遠にハングアップするか、または無限再帰が原因と考えられます。
この問題を回避する方法を知っている人はいますか?TVenue が所有エンティティであり、TVenueItem の操作は TVenue から実行できることを理解しています。ただし、関係なく、TVenueItem を個別に検索できるようにしたいと考えています。
どうもありがとう
J