Shinsuke Sugaya
shins****@yahoo*****
2010年 5月 23日 (日) 08:57:54 JST
菅谷です。 or 検索に対応しました(ついでにnot検索も対応)。 利用方法は ほげ OR ふが というように OR でつなぎます。 not検索は NOT ほげ ほげ NOT ふが のようにします。ただし、 NOT ほげ OR NOT ふが のような not の or 検索はできません。 問題がありましたら、お知らせください。 shinsuke 2010年5月20日14:58 Shinsuke Sugaya <shins****@yahoo*****>: > 菅谷です。 > > 情報をありがとうございます。 > そのエラーも合わせて対応します。 > > shinsuke > > > 2010年5月20日14:42 <Tetsu****@csk*****>: >> >> >> 柏崎です。 >> >> すいません。見落としていました。 >> ご対応お待ちしております。 >> >> ただ、一点気になるのが、 >> 現在"単語1 OR 単語2"と入れると >> 不正なクエリ文字列になってしまいシステムエラーとなってしまいます。 >> ORだけではないかもしれませんのでエスケープ処理が必要かと思います。 >> >> 以下、ログです。 >> "名前 OR 住所"が"((title:名前 AND title:OR AND title:住所) OR (content:名前 >> AND content:OR AND content:住所)) AND type:"pc""となってしまったようです。 >> >> 2010/05/20 14:30:52 org.apache.solr.common.SolrException log >> 致命的: org.apache.solr.common.SolrException: org.apache.lucene.queryParser.ParseException: Cannot parse '((title:名前 AND title:OR AND title:住所) OR >> (content:名前 AND content:OR AND content:住所)) AND type:"pc"': Encountered " <OR> "OR "" at line 1, column 21. >> Was expecting one of: >> "(" ... >> "*" ... >> <QUOTED> ... >> <TERM> ... >> <PREFIXTERM> ... >> <WILDTERM> ... >> "[" ... >> "{" ... >> <NUMBER> ... >> >> at org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:108) >> at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:174) >> at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:131) >> at org.apache.solr.core.SolrCore.execute(SolrCore.java:1316) >> at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:338) >> at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:241) >> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) >> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) >> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) >> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) >> at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:558) >> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) >> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) >> at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) >> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) >> at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852) >> at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) >> at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) >> at java.lang.Thread.run(Thread.java:619) >> Caused by: org.apache.lucene.queryParser.ParseException: Cannot parse '((title:名前 AND title:OR AND title:住所) OR (content:名前 AND content:OR AND >> content:住所)) AND type:"pc"': Encountered " <OR> "OR "" at line 1, column 21. >> Was expecting one of: >> "(" ... >> "*" ... >> <QUOTED> ... >> <TERM> ... >> <PREFIXTERM> ... >> <WILDTERM> ... >> "[" ... >> "{" ... >> <NUMBER> ... >> >> at org.apache.lucene.queryParser.QueryParser.parse(QueryParser.java:205) >> at org.apache.solr.search.LuceneQParser.parse(LuceneQParserPlugin.java:78) >> at org.apache.solr.search.QParser.getQuery(QParser.java:131) >> at org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:89) >> ... 18 more >> Caused by: org.apache.lucene.queryParser.ParseException: Encountered " <OR> "OR "" at line 1, column 21. >> Was expecting one of: >> "(" ... >> "*" ... >> <QUOTED> ... >> <TERM> ... >> <PREFIXTERM> ... >> <WILDTERM> ... >> "[" ... >> "{" ... >> <NUMBER> ... >> >> at org.apache.lucene.queryParser.QueryParser.generateParseException(QueryParser.java:1846) >> at org.apache.lucene.queryParser.QueryParser.jj_consume_token(QueryParser.java:1728) >> at org.apache.lucene.queryParser.QueryParser.Clause(QueryParser.java:1355) >> at org.apache.lucene.queryParser.QueryParser.Query(QueryParser.java:1294) >> at org.apache.lucene.queryParser.QueryParser.Clause(QueryParser.java:1341) >> at org.apache.lucene.queryParser.QueryParser.Query(QueryParser.java:1265) >> at org.apache.lucene.queryParser.QueryParser.Clause(QueryParser.java:1341) >> at org.apache.lucene.queryParser.QueryParser.Query(QueryParser.java:1265) >> at org.apache.lucene.queryParser.QueryParser.TopLevelQuery(QueryParser.java:1254) >> at org.apache.lucene.queryParser.QueryParser.parse(QueryParser.java:200) >> ... 21 more >> >> 以上 >> >> >> >> >> >> Shinsuke Sugaya <shins****@yahoo*****>@lists.sourceforge.jp 2010/05/20 >> 14:16:25 >> >> fess-****@lists*****に返信してください >> >> 送信者: fess-****@lists***** >> >> >> 宛先: fess-****@lists***** >> cc: >> 件名: [fess-user 203] Re: OR 検索について >> >> >> 菅谷です。 >> >> http://sourceforge.jp/ticket/browse.php?group_id=4342&tid=21070 >> として近いうちに対応したいと思います。 >> 少々お待ちください…。 >> >> shinsuke >> >> >> 2010年5月20日14:14 Masayuki Shibata <mshib****@shima*****>: >>> 柴田@亀岡市といいます。 >>> >>> Fess の機能の追加要求については >>> http://sourceforge.jp/projects/fess/ticket/ >>> ...に一覧がありますが、どうやら OR 検索はまだ実装されていないよう >>> です。 >>> >>>> >>>>はじめまして。柏崎と申します。 >>>> >>>>今回全文検索を導入することになり、 >>>>Fessを使用させて頂こうと考えております。 >>>> >>>>つきましては下記質問をさせて頂きます。 >>>> >>>>検索時のOR検索はどのように行うのでしょうか? >>>>"単語1 単語2"と入れるとAND検索になってしまいます。 >>>> >>>>以上 >>>> >>>>_______________________________________________ >>>>Fess-user mailing list >>>>Fess-****@lists***** >>>>http://lists.sourceforge.jp/mailman/listinfo/fess-user >>>> >>> >>> _______________________________________________ >>> Fess-user mailing list >>> Fess-****@lists***** >>> http://lists.sourceforge.jp/mailman/listinfo/fess-user >>> >> >> _______________________________________________ >> Fess-user mailing list >> Fess-****@lists***** >> http://lists.sourceforge.jp/mailman/listinfo/fess-user >> >> _______________________________________________ >> Fess-user mailing list >> Fess-****@lists***** >> http://lists.sourceforge.jp/mailman/listinfo/fess-user >> >