Solr索引:日期字段,(空)没有值

sat*_*tya 0 solr field

我在SOlr Schema中有以下字段定义

name="DvdReleaseDate"   type="date "  stored="true" required="false"
Run Code Online (Sandbox Code Playgroud)

我的输入xml文件包含带DVDReleaseDate的电影名称.所以对于全新的版本,这个字段为空(aka null)现在当我正在编制索引时,SOLR抛出了空值异常.

我的其他选择是什么?

基本上,我需要支持基于DVD发布日期的查询,同时,空值是有效的用例.

根据反馈编辑我的问题:

我在solr架构中有以下内容

field name ="dvdReleaseDate"type ="date"stored ="true"required ="false"

例外细节是

HTTP ERROR 400访问solr更新的问题.原因:无效的日期字符串:''

Sep 8, 2011 9:14:22 AM org.apache.solr.common.SolrException log
SEVERE: org.apache.solr.common.SolrException: Invalid Date String:''
   at org.apache.solr.schema.DateField.parseMath(DateField.java:165)

    at org.apache.solr.schema.TrieDateField.createField(TrieDateField.java:169)
    at org.apache.solr.schema.SchemaField.createField(SchemaField.java:98)
    at org.apache.solr.update.DocumentBuilder.addField(DocumentBuilder.java:204)
    at org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:277)
    at org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:60)
    at org.apache.solr.handler.XMLLoader.processUpdate(XMLLoader.java:147)
    at org.apache.solr.handler.XMLLoader.load(XMLLoader.java:77)
    at org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:55)
    at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129)
    at org.apache.solr.core.SolrCore.execute(SolrCore.java:1360)
    at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:356)
Run Code Online (Sandbox Code Playgroud)

Mau*_*fer 7

在不使用dvdReleaseDate的情况下添加文档时,请勿在XML文档中包含该字段.例如,而不是:

<add>
  <doc>
    <field name="id">123</field>
    <field name="dvdReleaseDate"></field>
  </doc>
</add>
Run Code Online (Sandbox Code Playgroud)

做:

<add>
  <doc>
    <field name="id">123</field>
  </doc>
</add>
Run Code Online (Sandbox Code Playgroud)