1. 程式人生 > >解決:xml中出現“文件中根元素後面的標記必須格式正確。”的錯誤

解決:xml中出現“文件中根元素後面的標記必須格式正確。”的錯誤

配置業務域,type指定使用自定義的fieldType。

修改solr工程下的schema.xml檔案,在檔案末尾新增一個自定義的fieldType,如下:

<schema>
......
......
</schema>
    <fieldType name="text_ik" class="solr.TextField">
      <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"
/>

    </fieldType>
      <field name="item_title" type="text_ik" indexed="true" stored="true"/>
      <field name="item_sell_point" type="text_ik" indexed="true" stored
="true"/>

      <field name="item_price" type="long" indexed="true" stored="true"/>
      <field name="item_image" type="string" indexed="false" stored="true"/>
      <field
 name="item_category_name" type="string" indexed="true" stored="true"/>

      <field name="item_desc" type="text_ik" indexed="true" stored="false"/>
    <!-- 複製域 -->
    <field name="item_keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>
      <copyField source="item_title" dest="item_keywords"/>
      <copyField source="item_sell_point" dest="item_keywords"/>
      <copyField source="item_category_name" dest="item_keywords"/>
      <copyField source="item_desc" dest="item_keywords"/>

由於不小心,我將新增的內容放在了標籤<schema></schema>的外面,重啟tomcat後,訪問,出現了“文件中根元素後面的標記必須格式正確。”的錯誤。
出現這個錯誤的原因是:沒有加根節點
解決辦法:將新增的內容放在標籤<schema></schema>的裡面,如下:

<schema>
......
......
    <fieldType name="text_ik" class="solr.TextField">
      <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
    </fieldType>
      <field name="item_title" type="text_ik" indexed="true" stored="true"/>
      <field name="item_sell_point" type="text_ik" indexed="true" stored="true"/>
      <field name="item_price" type="long" indexed="true" stored="true"/>
      <field name="item_image" type="string" indexed="false" stored="true"/>
      <field name="item_category_name" type="string" indexed="true" stored="true"/>
      <field name="item_desc" type="text_ik" indexed="true" stored="false"/>
    <!-- 複製域 -->
    <field name="item_keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>
      <copyField source="item_title" dest="item_keywords"/>
      <copyField source="item_sell_point" dest="item_keywords"/>
      <copyField source="item_category_name" dest="item_keywords"/>
      <copyField source="item_desc" dest="item_keywords"/>
</schema>

再次重啟tomcat,訪問沒有問題了!