Tag: hibernate search

ElasticSearch – 定义排序的自定义字母顺序

我正在使用ElasticSearch 2.4.2(来自Java的HibernateSearch 5.7.1.Final)。 我有字符串排序的问题。 我的应用程序的语言有变音符号,它具有特定的字母顺序。 例如, Ł直接在L之后, Ó在O之后,等等。所以你应该像这样排序字符串: Dla Dła Doa Dóa Dza Eza ElasticSearch首先按典型字母排序,并在结尾处移动所有奇怪的字母: Dla Doa Dza Dła Dóa Eza 我可以为ElasticSearch添加自定义字母顺序吗? 也许有一些插件吗? 我需要编写自己的插件吗? 我该如何开始? 我为ElasticSearch找到了一个波兰语插件 ,但据我所知它是用于分析,并且分析在我的情况下不是解决方案,因为它会忽略变音符号并留下L和Ł混合的单词: Dla Dłb Dlc 这有时是可以接受的,但在我的具体用例中是不可接受的。 对此有任何评论我将不胜感激。

由于SearchFactoryIntegrator不在注册表中,因此无法在JBoss 7上查询Infinispan

TL:DR我收到以下错误,我看不出它的原因,索引已启用,SearchFactoryIntegrator在类路径上,需要查看它的所有内容。 此缓存未启用索引。 在注册表中找不到org.hibernate.search.spi.SearchFactoryIntegrator接口 长版: JBoss版本:7.1.1 FINAL Infinispan版本:5.16(从5.1.2 JBoss升级,试图解决问题) Java版本:1.7 我正在尝试构建一个简单的测试应用程序来运行针对Infinispan缓存的查询。 我成功地将对象添加到缓存中。 缓存定义为private org.infinispan.Cache cache; 代理是我自己的对象。 当尝试查询缓存时,我从SearchManager searchManager = Search.getSearchManager(cache);行获得以下错误SearchManager searchManager = Search.getSearchManager(cache); 17:35:43,873 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/SearchableCacheTest].[Faces Servlet]] (http-localhost-127.0.0.1-8080-1) Servlet.service() for servlet Faces Servlet threw exception: java.lang.IllegalArgumentException: Indexing was not enabled on this cache. interface org.hibernate.search.spi.SearchFactoryIntegrator not found in registry at org.infinispan.query.impl.ComponentRegistryUtils.getComponent(ComponentRegistryUtils.java:40) [infinispan-query-5.1.6.FINAL.jar:5.1.6.FINAL] at org.infinispan.query.SearchManagerImpl.(SearchManagerImpl.java:56) [infinispan-query-5.1.6.FINAL.jar:5.1.6.FINAL] at […]

查询Lucene

表“testtable”的结构是 id int主键 productid int attributeid int value varchar(250) 其中productid是产品的唯一ID,attributeid是产品属性的唯一ID,例如尺寸,质量,高度,颜色,’value’是属性的值 我必须过滤结果。 我通过此查询达到了要求。 但我无法在查询中进行此操作。 select a.* from dbo.testtable a where a.attributeId=10 and a.[Value]=’Romance’ and productId in ( select productId from dbo.testtable where attributeId =7 and [Value]=’Hindi’ ) 需要帮助来构建此查询..

如何在Hibernate Search中搜索带通配符和空格的字段

我有一个搜索框,根据给定的输入在标题字段上执行搜索,因此用户建议所有可用的标题以插入的文本开头。它基于Lucene和Hibernate Search。 它一直工作,直到输入空间。 然后结果消失了。 例如,我希望“学习H”给我“学习Hibernate”作为结果。 但是,这不会发生。 你能告诉我我应该在这里使用什么呢? 查询生成器: QueryBuilder qBuilder = fullTextSession.getSearchFactory() .buildQueryBuilder().forEntity(LearningGoal.class).get(); Query query = qBuilder.keyword().wildcard().onField(“title”) .matching(searchString + “*”).createQuery(); BooleanQuery bQuery = new BooleanQuery(); bQuery.add(query, BooleanClause.Occur.MUST); for (LearningGoal exGoal : existingGoals) { Term omittedTerm = new Term(“id”, String.valueOf(exGoal.getId())); bQuery.add(new TermQuery(omittedTerm), BooleanClause.Occur.MUST_NOT); } @SuppressWarnings(“unused”) org.hibernate.Query hibQuery = fullTextSession.createFullTextQuery( query, LearningGoal.class); Hibernate类 : @AnalyzerDef(name = “searchtokenanalyzer”,tokenizer […]

如何在Hibernate中用TableGenerator替换已弃用的MultipleHiLoPerTableGenerator

我在一个带有spring boot 1.4.0.RELEASE的应用程序中使用hibernate。 索引的实体看起来像是: @Entity(name = “SearchableTariffItem”) @Indexed public class SearchableTariffItem { public static final String ZIFFER_ANALYZER_NAME = “ZIFFER_ANALYZER”; @GeneratedValue(strategy = GenerationType.TABLE) @Id private Long id; … } 我第一次保存实体时现在收到以下警告: 2016-08-26 15:08:32.501 WARN 8476 — [apr-8080-exec-6] org.hibernate.orm.deprecation : HHH90000015: Found use of deprecated [org.hibernate.id.MultipleHiLoPerTableGenerator] table-based id generator; use org.hibernate.id.enhanced.TableGenerator instead. See Hibernate Domain Model Mapping Guide […]

在群集配置中进行Hibernate搜索?

我正在开发一个Java Web应用程序,使用JBoss Seam作为应用程序框架。 我想利用Hibernate Search来提供实体搜索function。 集成进展顺利,我正在接近部署。 生产中的应用程序的设置将是: 2(或更多)Tomcat应用服务器,负载均衡 后端的PostgreSQL数据库 我的问题是,如何在App Server#1上保留实体时,如何配置Hibernate Search以便在App Server#2上更新本地Lucene索引,反之亦然? Hibernate Search是否支持任何类型的群集配置? 由于持久性可能发生在任何一个负载均衡的应用服务器上,因此设置必须在某种程度上是master-master。 有没有人有任何关于如何解决这个问题的建议? 感谢您的帮助!

如何在Hibernate Search中使用布尔运算符

我正在学习Hibernate Search Query DSL ,我不知道如何使用AND或OR等布尔参数构造查询。 例如,假设我想返回firstName值为“bill”或“bob”的所有人员记录。 在hibernate文档之后,一个示例使用bool()方法w /两个子查询,例如: QueryBuilder b = fts.getSearchFactory().buildQueryBuilder().forEntity(Person.class).get(); Query luceneQuery = b.bool() .should(b.keyword().onField(“firstName”).matching(“bill”).createQuery()) .should(b.keyword().onField(“firstName”).matching(“bob”).createQuery()) .createQuery(); logger.debug(“query 1:{}”, luceneQuery.toString()); 这最终产生了我想要的lucene查询,但这是在hibernate搜索中使用布尔逻辑的正确方法吗? “should()”是否等同于“OR”(类似地,“must()”对应于“AND”)? 此外,以这种方式编写查询感觉很麻烦。 例如,如果我有一个firstNames的集合来匹配怎么办? 这种类型的查询首先是DSL的良好匹配吗?

基于Java(GWT,Spring,Hibernate)Web应用程序的SaaS /多租户方法

我目前正在考虑将使用Spring,GWT,Hibernate,Jackrabbit,Hibernate Search / Lucene(以及其他)的单租户基于Java的Web应用程序转换为完全成熟的SaaS风格应用程序。 我偶然发现了一篇文章,强调了以下7个“事物”作为对单个租户应用程序进行重要更改以使其成为SaaS应用程序: 该应用程序必须支持多租户。 该应用程序必须具有一定程度的自助注册。 必须有一个订阅/计费机制。 应用程序必须能够有效扩展。 必须具备监视,配置和管理应用程序和租户的function。 必须有一种机制来支持唯一的用户识别和身份validation。 必须有一个机制来支持每个租户的某种程度的定制。 我的问题是,是否有人使用与我列出的类似技术在SaaS /多租户应用程序中实现上述任何内容? 在我走上正在考虑的道路之前,我渴望得到关于最佳方法的尽可能多的意见。 作为一个开始,我很确定我能够很好地处理如何在模型级别处理多个租户。 我想在我们的所有表中添加一个租户ID,然后使用Hibernatefilter(以及Hibernate Search的全文filter)根据所有查询的登录用户的租户ID进行过滤。 然而,我对性能也有一些担忧,特别是当我们的租户数量增长很多时。 任何有关如何实施此类解决方案的建议都将受到高度赞赏(如果这个问题有点过于开放,我会道歉)。

如何在日期之间搜索(Hibernate Search)?

我想知道如何使用Range-Query在Hibernate Search中按日期搜索,或者我是否需要实现任何filter。以下是我在Record Entity中的字段 /** * When the analysis started. */ @Temporal(TemporalType.TIMESTAMP) @Field(index = Index.UN_TOKENIZED) @DateBridge(resolution = Resolution.MILLISECOND) private Date startTS; 我的要求是找到两个日期之间分析的记录,例如。 11/11/2011至11/11/2012。我很困惑如何做到这一点。

java.lang.NoSuchMethodError:javax.persistence.OneToMany.orphanRemoval()Z

我收到此错误: java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z 这些是我的类路径中的jar: com.sun.faces/jsf-api/jars/jsf-api-2.0.0.jar com.sun.faces/jsf-impl/jars/jsf-impl-2.0.0.jar org.apache.myfaces.orchestra/myfaces-orchestra-core20/jars/myfaces-orchestra-core20-1.5-SNAPSHOT.jar commons-lang/commons-lang/jars/commons-lang-2.1.jar commons-logging/commons-logging/jars/commons-logging-1.1.1.jar org.springframework/spring/jars/spring-2.5.6.jar commons-el/commons-el/jars/commons-el-1.0.jar org.richfaces.ui/richfaces-ui/jars/richfaces-ui-3.3.3.Final.jar org.richfaces.framework/richfaces-api/jars/richfaces-api-3.3.3.Final.jar commons-collections/commons-collections/jars/commons-collections-3.2.jar commons-beanutils/commons-beanutils/jars/commons-beanutils-1.8.0.jar org.richfaces.framework/richfaces-impl-jsf2/jars/richfaces-impl-jsf2-3.3.3.Final.jar com.sun.facelets/jsf-facelets/jars/jsf-facelets-1.1.14.jar org.hibernate/hibernate-core/jars/hibernate-core-3.6.0.Final.jar antlr/antlr/jars/antlr-2.7.6.jar dom4j/dom4j/jars/dom4j-1.6.1.jar org.hibernate/hibernate-commons-annotations/jars/hibernate-commons-annotations-3.2.0.Final.jar org.slf4j/slf4j-api/jars/slf4j-api-1.6.1.jar org.hibernate.javax.persistence/hibernate-jpa-2.0-api/jars/hibernate-jpa-2.0-api-1.0.0.Final.jar javax.transaction/jta/jars/jta-1.1.jar org.hibernate/hibernate-c3p0/jars/hibernate-c3p0-3.6.0.Final.jar c3p0/c3p0/jars/c3p0-0.9.1.jar org.hibernate/hibernate-entitymanager/jars/hibernate-entitymanager-3.6.0.Final.jar cglib/cglib/jars/cglib-2.2.jar asm/asm/jars/asm-3.1.jar javassist/javassist/jars/javassist-3.12.0.GA.jar org.hibernate/hibernate-search/jars/hibernate-search-3.3.0.Final.jar org.hibernate/hibernate-search-analyzers/jars/hibernate-search-analyzers-3.3.0.Final.jar org.apache.lucene/lucene-core/jars/lucene-core-3.0.3.jar org.apache.lucene/lucene-analyzers/jars/lucene-analyzers-3.0.3.jar mysql/mysql-connector-java/jars/mysql-connector-java-5.1.13.jar com.ocpsoft/prettyfaces-jsf2/jars/prettyfaces-jsf2-3.0.1.jar commons-digester/commons-digester/jars/commons-digester-2.0.jar org.slf4j/slf4j-log4j12/jars/slf4j-log4j12-1.6.1.jar log4j/log4j/bundles/log4j-1.2.16.jar xom/xom/jars/xom-1.2.5.jar xml-apis/xml-apis/jars/xml-apis-1.3.03.jar xerces/xercesImpl/jars/xercesImpl-2.8.0.jar xalan/xalan/jars/xalan-2.7.0.jar org.jboss.jsfunit/jboss-jsfunit-core/jars/jboss-jsfunit-core-1.3.0.Final.jar net.sourceforge.htmlunit/htmlunit/jars/htmlunit-2.8.jar xalan/xalan/jars/xalan-2.7.1.jar xalan/serializer/jars/serializer-2.7.1.jar xml-apis/xml-apis/jars/xml-apis-1.3.04.jar commons-collections/commons-collections/jars/commons-collections-3.2.1.jar commons-lang/commons-lang/jars/commons-lang-2.4.jar org.apache.httpcomponents/httpclient/jars/httpclient-4.0.1.jar org.apache.httpcomponents/httpcore/jars/httpcore-4.0.1.jar commons-codec/commons-codec/jars/commons-codec-1.4.jar org.apache.httpcomponents/httpmime/jars/httpmime-4.0.1.jar org.apache.james/apache-mime4j/jars/apache-mime4j-0.6.jar […]