solr异常--Expected mime type application/octet-stream but got text/html.

Exception in thread "main" org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: 

Expected mime type application/octet-stream but got text/html.Apache Tomcat/7.0.54 - Error report

HTTP Status 404 - /solr/core0/update/extract


type Status report

message /solr/core0/update/extract

description The requested resource is not available.


Apache Tomcat/7.0.54

at org.apache.solr.client.solrj.impl.HttpSolrServer.executeMethod(HttpSolrServer.java:516)
at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:210)
at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:206)
at solrj.CreateIndexFromPDF.indexFilesSolrCell(CreateIndexFromPDF.java:54)

at solrj.CreateIndexFromPDF.main(CreateIndexFromPDF.java:21)

部分代码:

        String urlString = "http://localhost:8080/solr/core0";  
        SolrServer solr = new HttpSolrServer(urlString);  
        ContentStreamUpdateRequest up = new ContentStreamUpdateRequest("/update/extract");  

是因为我用的: core0 (这个在当前的solr目录下是不存在的),已经被删除了。改为存在collection1  就正常通过。

所以有这样的错误一般是配置错误,或者操作的core核心不存在,或者没有配置对应的handler。都是路径错误,或者用法上的错误。

---------------------------------------

public class CreateIndexFromPDF {
public static void main(String[] args)  
    {  
        String fileName = "E:/apache-solr-ref-guide-4.4.pdf";   
        String solrId = "solr用户指南中文版.pdf";   
        try  
        {  
            indexFilesSolrCell(fileName, solrId);  
        }  
        catch (IOException e)  
        {  
            e.printStackTrace();  
        }  
        catch (SolrServerException e)  
        {  
            e.printStackTrace();  
        }  
          
    }  
      
    /** 从文件创建索引 
     * <功能详细描述> 
     * @param fileName 
     * @param solrId 
     * @see [类、类#方法、类#成员] 
     */  
    public static void indexFilesSolrCell(String fileName, String solrId)   
        throws IOException, SolrServerException  
    {  
        String urlString = "http://localhost:8080/solr/core0";  
        SolrServer solr = new HttpSolrServer(urlString);  
        ContentStreamUpdateRequest up = new ContentStreamUpdateRequest("/update/extract");  
          
        String contentType="application/pdf";  
        up.addFile(new File(fileName), contentType);  
        up.setParam("literal.id", solrId);  
        up.setParam("uprefix", "attr_");  
        up.setParam("fmap.content", "attr_content");  
        up.setAction(AbstractUpdateRequest.ACTION.COMMIT, true, true);  
          
        solr.request(up);  
          
        QueryResponse rsp = solr.query(new SolrQuery("*:*"));  
        System.out.println(rsp);  
    }  
}


你可能感兴趣的:(java,solr)