The problem with your code snippets are that they aren't plain Lucene
API calls. I'm assuming that you've got your own classes that
actually compile  <G>. There's nothing I can say about "what's
going on" without knowing what your custom classes are doing.....

We need to know what analyzers you are using, both at query and
compile time. I suspect that you're using an analyzer that perhaps
breaks on the path separators, but I can't be sure.

I recommend that you try a basic case using the stock Lucene
API code, and post that. Otherwise we're pretty helpless.

Two other things:
1> get a copy of Luke (google lucene luke) and examine your index.
   Luke can also be used to examine the effects of various analyzers
   on queries.
2> use query.toString() to examine what the query looks like after parsing
   and print that to system.out.

Best
Erick

On 6/18/07, Lee Li Bin <[EMAIL PROTECTED]> wrote:

Hi,



The following query, I am getting only the file path results. I have a
field
name 'text' in the index. May I know do I display the text file data?

Is this the problem with the indexing or the query string?



Creating Index:

Document doc5 = new Document();

doc5.add(Field.UnIndexed("path", path));

doc5.add(Field.Text("MMmanualType", new StringReader(manualType)));

doc5.add(Field.Text("text", new StringReader(info)));





Search:

TermQuery queryOM = new TermQuery(new Term("text",OMcriteriaIn));

subquery.add(new BooleanClause(query3, true, false));

subquery.add(new BooleanClause(queryOM, true, false));

System.out.println("Searching for: " + subquery.toString("text"));

Hits hits = searcher.search(subquery);

System.out.println("Number of matching documents = " + hits.length());



for (int c = 0; c < hits.length(); c++) {

Document doc = hits.doc(c);

System.out.println("Query found in file: " + doc.get("path"));

System.out.println("Content: " + doc.get("text"));




}





Regards,

Lee Li Bin




Reply via email to