After Integrating our existing Hibernate Search application with *ElasticSearch *, we are getting the following exception upon querying from created indexes : java.lang.ClassCastException:
Cannot cast org.hibernate.search.elasticsearch.analyzer.impl.ScopedElasticsearchAnalyzerReference to org.hibernate.search.analyzer.impl.LuceneAnalyzerReference java.lang.Class.cast(Class.java:3369) org.hibernate.search.analyzer.impl.RemoteAnalyzerReference.unwrap(RemoteAnalyzerReference.java:28) org.hibernate.search.engine.impl.ImmutableSearchFactory.getAnalyzer(ImmutableSearchFactory.java:394) org.hibernate.search.engine.impl.MutableSearchFactory.getAnalyzer(MutableSearchFactory.java:211) org.hibernate.search.impl.SearchFactoryImpl.getAnalyzer(SearchFactoryImpl.java:53) com.nucleus.controller.HibernateSearchController.search(HibernateSearchController.java:62)
The indexes were created successfully on ElasticSearch server. But when we try to query the indexes using the analyzer we get the above exception. The query is:
FullTextSession fullTextSession = org.hibernate.search.Search.getFullTextSession((Session) entityManager.getDelegate()); Analyzer analyzer = fullTextSession.getSearchFactory().getAnalyzer(AccountingStructure.class); org.hibernate.search.jpa.FullTextEntityManager fullTextEntityManager = org.hibernate.search.jpa.Search .getFullTextEntityManager(entityManager); org.apache.lucene.search.Query luceneQuery = MultiFieldQueryParser.parse(queryList, fieldList, analyzer);
|
|