It's a parsing problem. You must tell the query parser to consider spaces as real characters. This should work (backslashing the spaces): fq=ONLY_EXACT_MATCH_FIELD:salon\ de\ coiffure
or you may use something like that : fq={!term f=ONLY_EXACT_MATCH_FIELD v=$qq}&qq=salon de coiffure Hope it helps, Franck Brisbart Le jeudi 02 août 2012 à 09:56 +0200, elisabeth benoit a écrit : > Hello, > > I am using Solr 3.4. > > I'm trying to define a type that it is possible to match with only if > request contains exactly the same words. > > Let's say I have two different values for ONLY_EXACT_MATCH_FIELD > > ONLY_EXACT_MATCH_FIELD: salon de coiffure > ONLY_EXACT_MATCH_FIELD: salon de coiffure pour femmes > > I would like to match only with the first ont when requesting Solr with > fq=ONLY_EXACT_MATCH_FIELD:(salon de coiffure) > > As far has I understood, the solution is to do not tokenize on white > spaces, and use instead solr.KeywordTokenizerFactory > > > My actual type is defined as followed in schema.xml > > <fieldType name="ONLY_EXACT_MATCH_FIELD" class="solr.TextField" > omitNorms="true" positionIncrementGap="100"> > <analyzer type="index"> > <tokenizer class="solr.KeywordTokenizerFactory"/> > <charFilter class="solr.MappingCharFilterFactory" > mapping="mapping-ISOLatin1Accent.txt"/> > <filter class="solr.ISOLatin1AccentFilterFactory"/> > <filter class="solr.StandardFilterFactory"/> > <filter class="solr.LowerCaseFilterFactory"/> > <filter class="solr.LengthFilterFactory" min="1" max="100" /> > </analyzer> > </fieldType> > > But matching with fields with more then one word doesn't work. Does someone > have a clue what I am doing wrong? > > Thanks, > Elisabeth