Не удается обрезать конечные пробелы при индексации данных Solr? - PullRequest
0 голосов
/ 22 апреля 2019

У меня есть облачная установка solr с 3 экземплярами zookeeper и 2 solr.я пытаюсь проиндексировать данные из XML-файла (вложенного документа) в solr через dih и пытаюсь удалить конечные пробелы, чтобы после поиска не показывать пробелы.

образец файла:

<doc>
   <sku>...</sku>
   <data>
     <date>..</date>
     <store>..</store>
    <econn>..</econn>
   </data>
</doc>
...
...
</product>

i have not shared the DIH , as it is working fine.

i have tried both links :- 

https://stackoverflow.com/questions/24570545/is-it-possible-to-get-solrs-dataimporthadler-to-ignore-fields-with-empty-string

https://fossies.org/linux/solr/solr/example/example-DIH/solr/atom/conf/solrconfig.xml

actual file :-
<doc>
   <sku>abc </sku>
   <data>
      <date>2019-19-08</date>
      <store>somestore </store>
     <econn>false </econn>
   </data>
</doc>

expected output after indexing:- 
<doc>
   <sku>abc</sku>
   <data>
     <date>2019-19-08</date>
     <store>somestore</store>
     <econn>false</econn>
   </data>
</doc>

both parent and child trailing spaces should be trimmed or either of those ,which depends on context.

1 Ответ

0 голосов
/ 25 апреля 2019

Лучшее решение, которое сработало для меня, это применение regexTransformer внутри файла data-config.xml.

<entity name="foo" transformer="RegexTransformer" 
<field column="new_field" xpath="path/to/field/in/xml" regex="(\s|\t)" replaceWith="" />
...
...
...
...
</entity>

Иногда ответ прост и потрясающий !!!!!!!

...