我正在关注有关从solr导入数据的文档。我可以连接到本地数据库,但配置文件无法读取外键。我的桌子是:
product
------------
id
name
continent_id
continent
------------
id
name
我data-config.xml
的是:
<dataConfig>
<dataSource type="JdbcDataSource" driver="org.postgresql.Driver" url="jdbc:postgresql://localhost/my_db" user="postgres" password="postgres" readOnly="true" />
<document name="products">
<entity name="product" query="select * from product">
<field column="ID" name="id" />
<field column="NAME" name="name" />
<entity name="continent" query="select NAME from continent where id='${product.CONTINENT_ID}'">
<field column="name" name="continent" />
</entity>
</entity>
</document>
</dataConfig>
我看到的错误是:
SEVERE: Exception while processing: product document : SolrInputDocument[{id=id(1.0)={1}, name=name(1.0)={Fancy Pants}}]:org.apache.solr.handler.dataimport.DataImportHandlerException: Unable to execute query: select NAME from continent where id='' Processing Document # 1
它连接到数据库很好,但无法读取外键product.CONTINENT_ID
。我是否需要以不同的方式配置上面的 xml 来读取和索引continent
外键?