Hi, the analyzer is only used for fulltext query statements within a CONTAINS() in SQL or jcr:contains() in XPath.
in your case you should rather use the built-in upper and lower case functions available in Jackrabbit. See the corresponding JIRA issue for a number of example queries: https://issues.apache.org/jira/browse/JCR-638 Regards Marcel > -----Original Message----- > From: Robert Haycock [mailto:[email protected]] > Sent: Donnerstag, 6. Dezember 2012 14:40 > To: [email protected] > Subject: How to make indexing case insensitive > > Hi, > > We have created our custom analyser and set the analyzer param in the > workspace.xml... > public class LowerCaseAnalyzer extends Analyzer { > > @Override > public TokenStream tokenStream(String fieldName, Reader reader) { > TokenStream stream = new LetterTokenizer(reader); > stream = new LowerCaseFilter(stream); > return stream; > } > } > And when I debug I can see it is being hit and tokens being converted to > lowercase. > On a node I have a property called "name" with value "FLOW". Problem is, > when I do a JCR2 SQL search the sql "WHERE name = 'FLOW'" returns the > node but "WHERE name = 'flow'" doesn't. This is not what I expected. > My assumption was that the LowerCaseFilter would convert all text to lower > case before being indexed. > Is my assumption wrong? How should I tell Jackrabbit to index everything as > lower case so when I search I can convert all my search terms to lower case? > > Thanks, > > Rob.
