Solr тег фасета исключает не работает с пробелом

Я использую исключить и тег для огранки. Странно, это работает там, где у меня нет места в стоимости.

http://192.168.2.114:8983/solr/customer/select?indent=on&q=*:*&fq=(%7B!tag%3DstateName%7DstateName:%22Gujarat%22)&fq=(%7B!tag%3DstateName%7DstateName:%22AndhraPradesh%22)&facet=true&facet.limit=100&facet.mincount=0&facet.field=%7B!ex%3DstateName%7DcountryName&facet.field=%7B!ex%3DstateName%7DstateName&facet.field=%7B!ex%3DstateName%7Dicity&facet=true - Это работает

но

http://192.168.2.114:8983/solr/customer/select?indent=on&q=*:*&fq=(%7B!tag%3DstateName%7DstateName:%22Gujarat%22)&fq=(%7B!tag%3DstateName%7DstateName:%22Andhra Pradesh%22)&facet=true&facet.limit=100&facet.mincount=0&facet.field=%7B!ex%3DstateName%7DcountryName&facet.field=%7B!ex%3DstateName%7DstateName&facet.field=%7B!ex%3DstateName%7Dicity&facet=true - это не

Единственная разница между этими двумя - это пробел в {!tag=stateName}stateName="Andhra Pradesh" ({!tag=stateName}stateName="AndhraPradesh" - это работает).

Я не понимаю почему. Я пробовал кодировать URL, т.е. поставить + или же %20 для космоса все еще не повезло.

Изображения PFA для того же

Рабочая копия

РЕДАКТИРОВАТЬ

Вот определение stateName поле.

<field name="stateName" type="string" multiValued="false" indexed="true" stored="true"/>

<fieldType name="string" class="solr.StrField" sortMissingLast="true"/>

1 ответ

Решение

Проблема в том, что локальные параметры в запросе должны находиться в начале строки:

{!tag=stateName}(stateName:"Andhra Pradesh")

и не

({!tag=stateName}stateName:"Andhra Pradesh")

Вы также можете избежать скобок:

{!tag=stateName}stateName:"Andhra Pradesh"
Другие вопросы по тегам