Я использую Hibernate search 3.3 для поиска по индексу Lucene.У меня есть фильтр, который мне нужно использовать для определенного поля, но я также делаю его TOKENIZED для полнотекстового поиска.Я обнаружил, что когда у меня установлено поле UN_TOKENIZED, фильтр работает, а полнотекстовый поиск - нет, а когда у меня установлено значение TOKENIZED, полнотекстовый поиск работает, а фильтр - нет.
POJO
@Field(name = "owningOrganization", index = Index.UN_TOKENIZED, store = Store.YES)
@FieldBridge(impl = OrganizationNameFieldBridge.class)
public Organization getOwningOrganization()
{
Фильтр
@Factory
public Filter getFilter()
{
BooleanQuery query = new BooleanQuery();
Term orgTerm = new Term("owningOrganization", userOrganization);
Term activeTerm = new Term("currentStateIsActive", "1");
query.add(new TermQuery(orgTerm), Occur.SHOULD);
query.add(new TermQuery(activeTerm), Occur.SHOULD);
return new CachingWrapperFilter(new QueryWrapperFilter(query));
}
Когда я ввожу условия поиска owningOrganization:"This is the exact value of an organization"
, я не получаю результатов, но фильтр работает как нужно.И наоборот, когда я переключаю его на TOKENIZED.
Есть предложения?