This is really a Java question, but it involves PyLucene knowledge so
I hope no-one minds it being posted here...
I need to use MultiFieldQueryParser, with AND as the default
operator. In Python I can do
fields = ["field_a","field_b"]
analyzer = StandardAnalyzer(stopwords)
qp = MultiFieldQueryParser(fields, analyzer)
qp.setOperator(QueryParser.DEFAULT_OPERATOR_AND)
query = qp.parseQuery(q)
hits = searcher.search(query)
but in Java I can't work out how to phrase the code so that it works
properly. What I'm trying to do is:
String[] fields = {"field_a","field_b"};
Analyzer analyzer = new StandardAnalyzer(stopwords);
QueryParser qp = new MultiFieldQueryParser(fields, analyzer);
qp.setOperator(QueryParser.DEFAULT_OPERATOR_AND);
Query query = qp.parse(q);
Hits hits = searcher.search(query);
but it gives an error:
cannot find symbol
[javac] symbol : constructor MultiFieldQueryParser
(java.lang.String[],org.apache.lucene.analysis.Analyzer)
whereas this works fine (but still has OR as the default operator):
String[] fields = {"field_a","field_b"};
Analyzer analyzer = new StandardAnalyzer(stopwords);
Query query = MultiFieldQueryParser.parse(q, fields, analyzer);
Hits hits = searcher.search(query);
Any ideas? (this is all using (Py)Lucene 1.9.1)
alf.
_______________________________________________
pylucene-dev mailing list
[email protected]
http://lists.osafoundation.org/mailman/listinfo/pylucene-dev