You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by bu...@apache.org on 2004/02/23 19:47:16 UTC
DO NOT REPLY [Bug 27174] New: -
NullPointerException calling IndexSearcher.search().
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=27174>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=27174
NullPointerException calling IndexSearcher.search().
Summary: NullPointerException calling IndexSearcher.search().
Product: Lucene
Version: unspecified
Platform: Sun
OS/Version: Solaris
Status: NEW
Severity: Blocker
Priority: Other
Component: Search
AssignedTo: lucene-dev@jakarta.apache.org
ReportedBy: schoenm@earthlink.net
IndexSearher.search() gets a NullPointerException. The demo SearchFiles.java
gets this error, as does my own simple Search test problem (included below). I
added a stack trace, which gets...
$ java Search
Query: foo
Searching for: foo
caught a class java.lang.NullPointerException
with message: null
java.lang.NullPointerException
at org.apache.lucene.search.IndexSearcher.explain
(IndexSearcher.java:196)
at org.apache.lucene.search.Hits.getMoreDocs(Hits.java:93)
at org.apache.lucene.search.Hits.<init>(Hits.java:80)
at org.apache.lucene.search.Searcher.search(Searcher.java:71)
at org.apache.lucene.search.Searcher.search(Searcher.java:65)
at Search.main(Search.java:35)
The source for Search.java...
import java.io.*;
import java.util.*;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.search.Searcher;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.Hits;
import org.apache.lucene.queryParser.QueryParser;
class Search {
public static void main(String[] args) {
try {
Searcher searcher = new IndexSearcher("psr_index");
Analyzer analyzer = new StandardAnalyzer();
BufferedReader in = new BufferedReader(new
InputStreamReader(System.in));
while (true) {
System.out.print("Query: ");
String line = in.readLine();
if (line.length() == -1)
break;
Date startT = new Date();
Query query = QueryParser.parse
(line, "description", analyzer);
System.out.println("Searching for: " +
query.toString("description"));
Hits hits = searcher.search(query);
Date endT = new Date();
System.out.print("...found " + hits.length()
+ " total matching listings; ");
System.out.print(endT.getTime() - startT.getTime
());
System.out.println(" milliseconds\n");
final int HITS_PER_PAGE = 10;
for (int start = 0; start < hits.length();
start += HITS_PER_PAGE) {
int end = Math.min(hits.length(), start
+ HITS_PER_PAGE);
for (int i = start; i < end; i++) {
Document doc = hits.doc(i);
String title = doc.get("title");
String description = doc.get
("description");
Hits hits = searcher.search(query);
Date endT = new Date();
System.out.print("...found " + hits.length()
+ " total matching listings; ");
System.out.print(endT.getTime() - startT.getTime
());
System.out.println(" milliseconds\n");
final int HITS_PER_PAGE = 10;
for (int start = 0; start < hits.length();
start += HITS_PER_PAGE) {
int end = Math.min(hits.length(), start
+ HITS_PER_PAGE);
for (int i = start; i < end; i++) {
Document doc = hits.doc(i);
String title = doc.get("title");
String description = doc.get
("description");
System.out.println(i + ". " +
title);
System.out.println(" - " +
description);
}
Date displayT = new Date();
System.out.print("\n...results
displayed in ");
System.out.print(displayT.getTime() -
endT.getTime());
System.out.println(" milliseconds\n");
if (hits.length() > end) {
System.out.print("more
(y/n) ? ");
line = in.readLine();
if (line.length() == 0 ||
line.charAt(0) == 'n')
break;
}
System.out.println("\n");
endT = new Date();
}
}
searcher.close();
} catch (Exception e) {
System.out.println(" caught a " + e.getClass() +
"\n with message: " + e.getMessage());
e.printStackTrace();
}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: lucene-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: lucene-dev-help@jakarta.apache.org