我有solr的以下配置文件:
<requestHandler name="/update/extract"
startup="lazy"
class="solr.extraction.ExtractingRequestHandler" >
<lst name="defaults">
<!-- All the main content goes into "text"... if you need to return
the extracted text or do highlighting, use a stored field. -->
<str name="lowernames">true</str>
<str name="fmap.content">content</str>
<str name="fmap.application_name">type</str>
<str name="fmap.content_type">mime</str>
<str name="fmap.stream_size">size</str>
<str name="uprefix">ignored_</str>
<str name="captureAttr">false</str>
</lst>
</requestHandler>
这是我的架构:
<field name="id" type="string" indexed="true" stored="true" required="true" />
<field name="access_type" type="string" indexed="true" stored="false"/>
<field name="access_restriction" type="string" indexed="true" stored="false" multiValued="true"/>
<field name="title" type="string" indexed="true" stored="true" multiValued="true" />
<field name="tags" type="string" indexed="true" stored="true" multiValued="true"/>
<field name="content" type="text_en_splitting" indexed="true" stored="true"/>
<field name="created" type="date" indexed="true" stored="true"/>
<field name="createdby" type="string" indexed="true" stored="true"/>
<field name="modified" type="date" indexed="true" stored="true"/>
<field name="modifiedby" type="string" indexed="true" stored="true"/>
<field name="source" type="string" indexed="true" stored="true" />
<field name="version" type="string" indexed="true" stored="true" />
<field name="resourcelink" type="string" indexed="true" stored="true" />
<field name="downloadlink" type="string" indexed="true" stored="true" />
<field name="type" type="string" indexed="true" stored="true" />
<field name="mime" type="string" indexed="true" stored="true" />
<field name="size" type="string" indexed="true" stored="true" />
我想自己设置title
。但Tika一直设置它自己的title
(这就是我暂时设置multiValued="true"
的原因),我觉得这很奇怪,因为我必须手动映射stream_size
和content_type
等内容。
这个问题可以解决哪些问题?
我希望Tika覆盖我指定的title
,如下所示:
我有3个文件,其中一个,Tika没有提取title
,在这种情况下,我有自己的标题,我设置通过literal.title
,当Tika确实提取title
1}},我希望它覆盖我传递给literal.title
的那个。这可能吗?
答案 0 :(得分:1)
前段时间我正在研究同一个问题,但我也碰到了一堵墙:( 我让Tika取“标题”,并使用literal.other_title_like_field来存储正确的标题。 这不是最好的解决方案,但对我有用。
答案 1 :(得分:0)
对于那些仍在努力解决这个问题的人,我通过添加
解决了这个问题<str name="fmap.title">ignored_</str>
在我的ExtractingRequestHandler默认值中。