2012-04-20 40 views
0

我執行與EntityManager的一個更新集合更新如下:如何處理與Hibernate Search的

​​

改變是annoted領域如下:Lucene索引確實

@Column(nullable = false) 
@Field([email protected](impl=StandardAnalyzer.class)) 
@FieldBridge(impl=org.hibernate.search.bridge.builtin.BooleanBridge.class) 
private Boolean changed = false; 

更新後沒有得到更新。我必須做什麼,lucene索引也得到更新?

親切的問候 基督教

回答

1

執行一個SQL查詢繞過會話的生命週期。出於這個原因,自動索引更新將不起作用。你基本上有兩種選擇:

  1. 通過負載條件查詢受影響的實體,對其進行修改,然後保存它們(當然所有的會話中)
  2. 手動指數通過搜索索引API的實體。儘管這裏有同樣的想法,但您需要選擇/查詢要索引的正確實體