I tried to convert below HS 5 code into HS 6 but its throwing exception while searching
created_date defined and isEligible boolean field in entity class like
@ApiModelProperty(hidden = true)
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSZ")
@Column(name = "created_date", nullable = false, updatable = false)
@Temporal(TemporalType.TIMESTAMP)
@CreatedDate
@GenericField
private Date createdDate;
```@Column(name = "is_eligible", nullable = false)
@NotNull
@ApiModelProperty(required = true)
@GenericField
@JsonAlias("isEligible")
private boolean isEligible;
search ="";
excludedFields = [createdDate, isEligible]
HS 5 code
query = ArrayUtils.isEmpty(excludedFields) ? qb.all().createQuery()
: qb.all().except(qb.simpleQueryString().onFields(excludedFields[0], excludedFields) .matching(search).createQuery()).createQuery();
Converted into HS 6
searchPredicate = ArrayUtils.isEmpty(excludedFields) ? pf.matchAll().toPredicate()
: pf.matchAll().except(pf.simpleQueryString().fields(excludedFields)
.matching(search).toPredicate()).toPredicate();
Exception -
Caused by: org.hibernate.search.util.common.SearchException: HSEARCH400614: Cannot use 'predicate:simple-query-string' on field 'createdDate'. Make sure the field is marked as searchable/sortable/projectable/aggregable (whichever is relevant). If it already is, then 'predicate:simple-query-string' is not available for fields of this type.
Context: field 'createdDate'
at org.hibernate.search.backend.elasticsearch.document.model.impl.ElasticsearchIndexSchemaValueFieldNode.queryElement(ElasticsearchIndexSchemaValueFieldNode.java:70)
at org.hibernate.search.backend.elasticsearch.search.predicate.impl.ElasticsearchSimpleQueryStringPredicate$Builder.field(ElasticsearchSimpleQueryStringPredicate.java:182)
at org.hibernate.search.engine.search.predicate.dsl.impl.SimpleQueryStringPredicateFieldMoreStepImpl$CommonState.field(SimpleQueryStringPredicateFieldMoreStepImpl.java:74)
at org.hibernate.search.engine.search.predicate.dsl.impl.SimpleQueryStringPredicateFieldMoreStepImpl.<init>(SimpleQueryStringPredicateFieldMoreStepImpl.java:38)
at org.hibernate.search.engine.search.predicate.dsl.impl.SimpleQueryStringPredicateFieldStepImpl.fields(SimpleQueryStringPredicateFieldStepImpl.java:27)