In CQ5.6.1 to enable the "Did you mean? " in the search component, all you had to do was to added the spellchecker line in the workspace.xml
This all well and good, but in AEM6.0 this isn't valid anymore, you have to set up SolR to do this. Unfortunately, the documentation on that effect is extremely parse at best. Following the instruction at
I was able to use Solr do to normal searches, using the recommended conf zip file.
I then followed SolR instructions into enabling the Spellchecker by adding
<searchComponent name="spellcheck" class="solr.SpellCheckComponent"> <lst name="spellchecker"> <str name="classname">solr.IndexBasedSpellChecker</str> <str name="spellcheckIndexDir">./spellchecker</str> <str name="field">catch_all</str> <!-- wasn't sure here what to use --> <str name="buildOnCommit">true</str> </lst> </searchComponent>
Then, in the requestHandler /select and /query I've added the necessary nodes as well
<requestHandler....> <lst...> ... <str name="spellcheck">true</str> </lst> <arr name="last-components"> <str>spellcheck</str> </arr> </requestHandler>
Then I reindexed CQ completely.
Normal searches shows the results, but if I search for a word with a mistake in it like "testf" instead of test, I never get the "Did you mean test?"
result.getSpellCheck() always returns false.
Anyone out there ever succeeded in enabling the Spellchecker in AEM 6.0 so far?
the lack of concise AEM documentation on this is really frustrating.