У меня была такая же проблема. Мы хотели проиндексировать в solr сложные документы json с массивами и картами (гораздо сложнее, чем в примере, который вы опубликовали).
В конце я изменил класс JsonLoader для принятия такого рода документов. Что он делает, он выравнивает структуру json, позволяет индексировать поля и сохраняет исходную структуру json [company]. Наконец, он поддерживает глубокое вложение
Вы можете найти исходный код с некоторыми пояснениями на
http://www.solrfromscratch.com/2014/08/20/embedded-documents-in-solr/
В вашем примере он будет хранить / индексировать [в зависимости от того, как вы настраиваете поля] следующую структуру
name: 'ben',
state: 'california',
country: 'united states',
companies.0.name: 'google',
companies.0.title: 'software engineer',
companies.1.name: 'sherwin-williams',
companies.1.title: 'web developer'
companies_json:[
{
name: 'google',
title: 'software engineer',
},
{
name: 'sherwin-williams',
title: 'web developer'
}
]
М.