http://wiki.apache.org/solr/ExtractingRequestHandler没有提供太多信息,如何在具有自己的上下文的webapplication中配置此处理程序,并希望将solr用作服务器功能,如embebdedd solr。 您能否提供一些有关如何将文档上传到solr以及从这些文档中搜索某些内容的信息? 我在solrConf.xml中配置了DIH
<requestHandler name="/dataimport"
class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">tika-data-config.xml</str>
</lst>
</requestHandler>
和tika-data-config.xml看起来像
<dataConfig>
<dataSource type="BinFileDataSource" name="bin" />
<document>
<entity name="sd"
processor="FileListEntityProcessor"
newerThan="'NOW-30DAYS'"
filenName=".*\.(DOC)|(PDF)|(pdf)|(doc)|(docx)|(ppt)"
baseDir="G:/workspace/FacetedSearch/src/solr/docs"
recursive="true"
rootEntity="false"
>
<field column="fileAbsolutePath" name="path" />
<field column="fileSize" name="size" />
<field column="fileLastModified" name="lastmodified" />
<field column="fileAbsolutePath" name="text" />
<!-- <field column="fileName" name="text" /> -->
<field column="baseDir" name="text" />
<!-- <entity name="tika-test" processor="TikaEntityProcessor"
url="${sd.fileAbsolutePath}" format="text" dataSource="bin">
-->
<entity name="tika-test"
dataSource="bin"
processor="TikaEntityProcessor"
url="G:/workspace/FacetedSearch/src/solr/docs"
format="text" >
<field column="Author" name="author" meta="true"/>
<field column="Content-Type" name="title" meta="true"/>
<field column="title" name="title" meta="true"/>
<field column="text" name="text"/>
</entity>
</entity>
</document>
</dataConfig>
目录G:/ workspace / FacetedSearch / src / solr / docs包含许多pdf和html文件 其中一些是tutorial.pdf ...... index.pdf
当我将solrQuery对象构建为时,在此配置之后
CoreContainer.Initializer initializer = new CoreContainer.Initializer();
CoreContainer coreContainer = initializer.initialize();
EmbeddedSolrServer solrServer = new EmbeddedSolrServer(coreContainer, "");
SolrQuery solrQuery = new SolrQuery();
solrQuery.addField("literal.id");
solrQuery.setQuery("index.pdf");
QueryResponse queryResponse = null ;
try{
queryResponse = (QueryResponse) solrServer.query(solrQuery);
}catch(Exception e){
System.out.println("exception occured while processing the solrQuery "+
e.getMessage() +"stack trace " + e + solrQuery.toString());
}
out.println(queryResponse);
我没有得到任何结果(这里queryResponse为null)。 我有一个由solr 3.5分发的schema.xml,并添加了一些字段为
<field name="path" type="text_general" indexed="true" stored="true" />
<field name="lastmodified" type="date" indexed="true" stored="true" />
我的问题是“G:/ workspace / FacetedSearch / src / solr / docs”中的文档 将在Solr启动时由solr索引? 如果这些是索引的,我怎么能得到结果呢?
任何人都可以让我知道我在哪里做错了吗?
如果我在回答问题时需要更多信息,请告诉我。