You're on the right track I think... perhaps try using RangeFilter directly rather than creating your own class. Something like:
Filter filter = RangeFilter.More("lastUpdatedDate",""); searcher.search(query, filter) If that works for you, then the next step would be to look at CachingWrapperFilter, which can help prevent calculating the filter for every query. -Yonik On Tue, Oct 14, 2008 at 12:55 PM, Reetha Hariharan <[EMAIL PROTECTED]> wrote: > Hi Yonik, > > Thanks for your reply. > > In my case I don't want those document that has Null value for the field > that I am willing to sort > > I tried writing my own filter using RangeFilter, but it doesn't work. > > I used something like the following in my custom filter. > > public class NotNullRangeFilter extends org.apache.lucene.search.Filter { > private RangeFilter rangeFilter; > public BitSet bits(IndexReader reader) throws IOException { > rangeFilter = RangeFilter.More("lastUpdatedDate"/*Field to sort*/, > "" /*atleast an empty string but not null*/); > return rangeFilter.bits(reader); > } > } > > The above does not work. Let me know if I am doing something wrong. > > Any inputs on this ? > > Thanks, > > On Tue, Oct 14, 2008 at 8:11 AM, Yonik Seeley <[EMAIL PROTECTED]> wrote: > >> On Tue, Oct 14, 2008 at 4:35 AM, Reetha Hariharan <[EMAIL PROTECTED]> >> wrote: >> > I am searching using one field, say X and want to sort the results using >> > another, say Y (Which can have null values). But I am expecting Sort to >> > ignore all the null values and just sort only records that has values in >> Y >> > field. >> >> Do you want docs with null (missing) values in the results or not? >> If so, they need to go somewhere (before or after the others). >> If you don't want those docs at all, exclude them in the query, or >> with a filter. >> >> -Yonik >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> >> > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]