问题描述
当我尝试导入schooLocationDetails solr核心时,出现以下错误。使用Solr 5.3.1
处理中的异常:机会详细文档:SolrInputDocument(fields []):org.apache.solr.handler.dataimport.dataimporthandlerException:org.apache.solr.client.solrj.impl.HttpSolrClient $ RemoteSolrException:服务器错误http://: 下面是我的Solr核心schooLocationDetails的data-config.xml。<dataConfig>
<document>
<entity name="school" dataSource="datasource" query="select * from school_table" transformer="RegexTransformer">
<field column="recordKey" name="recordKey" />
<field column="name" name="name" />
<field column="location" name="location" />
<field column="title" name="title" />
</entity>
<entity name="locationDetail" processor="SolrEntityProcessor" url="http://<solr-user>:<solr_pwd>@<solr_server>:<solr_port>/solr/locationCore" query="locationId:${school.location}"
fl="*,old_version:_version_">
<field column="locationId" name="locationId" />
<field column="city" name="city" />
<field column="state" name="state" />
<field column="old_version" name="old_version" />
</entity>
</document>
</dataConfig>
解决方法
您必须在其他实体内添加引用值 的实体。当它们是两个单独的实体时,它们不能互相引用值(而是将它们互相导入)。
<entity name="school" dataSource="datasource" query="select * from school_table" transformer="RegexTransformer">
<field column="recordKey" name="recordKey" />
<field column="name" name="name" />
<field column="location" name="location" />
<field column="title" name="title" />
<entity name="locationDetail" processor="SolrEntityProcessor" url="" query="locationId:${school.location}"
fl="*,old_version:_version_">
<field column="locationId" name="locationId" />
<field column="city" name="city" />
<field column="state" name="state" />
<field column="old_version" name="old_version" />
</entity>
</entity>