从liferay发送到solr的ddm-date未解析为日期

时间:2019-03-27 11:03:22

标签: date solr liferay-6

在Liferay 6.2中,我向结构添加了一个新字段,类型为:ddm-date。接下来,在创建具有该结构的文章之后,将其发送到Solr 4.6。不幸的是,发送到Solr的数据的日期格式不正确。看来Liferay将其发送为java.util.Date.toString() e.g.: Fri Mar 29 00:00:00 CET 2019.

我尝试解析solr中的传入数据。这是我尝试过的:

1。将dateTimeFormat添加到schema.xml中的字段描述中:

<field indexed="true" multiValued="true" name="ddm/79280/realPublishDate_pl_PL" dateTimeFormat="EEE MMM dd HH:mm:ss zzz yyyy" stored="true" type="date" />

这给了我错误:

HTTP Status 500 - {msg=SolrCore 'collection1' is not available due to init failure: Schema Parsing Failed: Invalid field property: dateTimeFormat.

2。将处理器添加到solrconfig.xml中的updateRequestProcessorChain中,如下所示:

<updateRequestProcessorChain name="replica">
    <processor class="solr.ParseDateFieldUpdateProcessorFactory">
        <str name="fieldName">ddm/79280/realPublishDate_pl_PL</str>
        <str name="format">
            <str>EEE MMM dd HH:mm:ss zzz yyyy</str>
        </str>
    </processor>
    <processor class="solr.LogUpdateProcessorFactory" />
    <processor class="solr.DistributedUpdateProcessorFactory" />
    <processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>
<requestHandler class="solr.UpdateRequestHandler" name="/update">
    <lst name="defaults">
        <str name="update.chain">replica</str>
    </lst>
</requestHandler>

这给了我错误:

org.apache.solr.common.SolrException: Error while creating field 'ddm/79280/realPublishDate_pl_PL{type=date,properties=indexed,stored,omitNorms,multiValued,sortMissingLast}' from value 'Sat May 11 00:00:00 CEST 2019'

因此看来该处理器根本没有链接到解析过程吗?

不知道下一步该怎么做。任何帮助将不胜感激。

0 个答案:

没有答案