This is because phrases are expected to contain >1 clause and the ComplexPhraseQueryParser was expecting a BooleanQuery from the base class which is used to hold the elements in the phrase.
In this single-clause scenario I guess we could silently hide the error and return whatever single query clause was inappropriately found between the quotes. On 19 Feb 2010, at 19:53, David Kaelbling wrote: > Hi, > > ComplexPhraseQueryParser doesn't appear to handle some simple wildcard > phrases correctly. In TestComplexPhraseQuery.testComplexPhrases() on > trunk I tried these two tests: > > checkMatches("\"j*n sm*h\"", "1,2"); > checkMatches("\"j*n\"", "1,2,3,4"); > > The first check succeeds. The second throws an IllegalArgumentException > trying to rewrite the query, complaining that WildcardQuery is an > unknown query type. If this is bad syntax I would have expected the > first query to have failed too. > > Does anyone have a fix? > > Thanks, > David > > -- > David Kaelbling > Senior Software Engineer > Black Duck Software, Inc. > > dkaelbl...@blackducksoftware.com > T +1.781.810.2041 > F +1.781.891.5145 > > http://www.blackducksoftware.com > > --------------------------------------------------------------------- > To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org > For additional commands, e-mail: java-dev-h...@lucene.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org For additional commands, e-mail: java-dev-h...@lucene.apache.org