tags:

views:

200

answers:

1

My application takes a user inputted string and tries to parse it with the Lucene query parser. I noticed however that there are several formats of strings that provoke an error in this query parser.
e.g.:

  • ~anystring
  • anystring +

First I tried molding my user inputted string so that it could not contain these cases, but as I see it, there could be more cases I do not foresee now.

How do you handle Query parser exceptions? How do you prevent them?

+1  A: 

We catch the remaining parse exceptions and display an error message ("Your search did not match any documents. Suggestion: Try different keywords.").

See also http://stackoverflow.com/questions/263081/how-to-make-the-lucene-queryparser-more-forgiving

bwalliser
Hmm, yes, this is the most obvious way to go. But I would think that some common cases would be solved by the query parser itselve. But maybe that shouldn't be it's resposibility indeed.
borisCallens