Infinispan中的Hibernate DSL关键字搜索

Infinispan中的Hibernate DSL关键字搜索,hibernate,hibernate-search,infinispan,Hibernate,Hibernate Search,Infinispan,我在Infinispan中使用Hibernate DSL进行搜索 当我使用关键字查询时有一个问题 首先,这里是映射类: mapping .analyzerDef("fr",StandardTokenizerFactory.class) .filter(LowerCaseFilterFactory.class) .entity(DatatypeProperty.class).indexed().providedId() .property("rdfResource",Ele

我在Infinispan中使用Hibernate DSL进行搜索

当我使用关键字查询时有一个问题

首先,这里是映射类:

mapping
  .analyzerDef("fr",StandardTokenizerFactory.class)
    .filter(LowerCaseFilterFactory.class)
  .entity(DatatypeProperty.class).indexed().providedId()
    .property("rdfResource",ElementType.FIELD).field().analyze(Analyze.NO).store(Store.YES)
    .property("typeId",ElementType.FIELD).field().analyze(Analyze.NO)
    .property("xmlLang",ElementType.FIELD).field().analyze(Analyze.NO)
    .property("normVal", ElementType.FIELD).field().analyzer("fr");
还有我在缓存中添加的数据:

dpId====>> DP_1464688  rdfResource====>> HPO_TE_HP:0002099  NormVal====>> asthme xmlLang====>> fr
dpId====>> DP_2009562  rdfResource====>> MDR_PT_10003553  NormVal====>> asthme  xmlLang====>> fr
dpId====>> DP_914319   rdfResource====>> MED_T_T2  NormVal====>> asthme  xmlLang====>> fr
dpId====>> DP_8271402  rdfResource====>> MSH_M_0001885  NormVal====>> asthme  xmlLang====>> fr
dpId====>> DP_4432234  rdfResource====>> MSH_D_001249  NormVal====>> asthme  xmlLang====>> fr
用于搜索的查询:

Query query1 = queryBuilder
                .bool()
                .must(queryBuilder.keyword().onField("normVal").matching("asthme").createQuery())
                .must(queryBuilder.keyword().onField("xmlLang").matching("fr").createQuery())
                .createQuery();
test = CSECore.searchManager.getQuery(query1, DatatypeProperty.class).list();
但搜索结果中没有人

PS:MSH_D_001249的有一个属性“normVal”,其内容是“哮喘支气管炎”; 如果我将其添加到缓存中,结果中将显示MSH\u D_001249


有人对此有想法吗?

在我看来是正确的。通常,analyzer的配置和使用是一个常见问题,但按照您描述的方式,它应该可以正常工作。