Индексирование и поиск MySQL с помощью Solr - PullRequest
0 голосов
/ 04 августа 2010

Я настроил Solr и пытаюсь проиндексировать простой 2 столбец, 2 строки таблицы (MySQL 'test_tb' tabe в базе данных 'test_db') с (первым столбцом) уникальным идентификатором (в mysql типа int) и ( второй столбец) немного текста. Я получаю сообщение об ошибке:

WARNING: Error creating document : SolrInputDocument[{ID_F=ID_F(1.0)={1}}]
org.apache.solr.common.SolrException: Document [null] missing required field: id

Что это значит? Пожалуйста, помогите.

schema.xml

<fields>
    <field name="ID_F" type="string" indexed="true" stored="true" required="false"/>
    <field name="COLA" type="string" indexed="true" stored="true" required="false"/>
 </fields>

Данные-config.xml

<dataConfig>
<dataSource type="JdbcDataSource"
              driver="com.mysql.jdbc.Driver"
              url="jdbc:mysql://localhost/test_db"
              user="root"
              password="root_pwd"/>

<document name="doc">

<entity name="test_tb" query="select ID_F,COLA from test_tb">
        <field column="ID_F" name="ID_F" />
        <field column="COLA" name="COLA" />
</entity>

</document>
</dataConfig>

1 Ответ

2 голосов
/ 04 августа 2010

В вашей схеме вы, вероятно, определили обязательное поле с именем "id". Либо вы переименуете ID_F в id <field column="ID_F" name="id" />, либо измените значение в вашей схеме.

...