2015-10-28 30 views
0

我在索引太阳能服务器中的文件索引代码。索引索尔文件索引时出错

** String urlString =“http://localhost:8080/solr”;
SolrServer solr = new CommonsHttpSolrServer(urlString); java.io.File file = new java.io.File(“C:\ Users \ Guruprasad \ Desktop \ Search \ 47975832.doc”); 如果(file.canRead()){

 System.out.println("adding " + file); 
     try { 
      ContentStreamUpdateRequest req = new ContentStreamUpdateRequest("/update/extract"); 
      String parts[] = file.getName().split("\\."); 
      String type = "text"; 
      if (parts.length>1) { 
       type = parts[1]; 
      } 
      req.addFile(file); 
      req.setParam("literal.id", file.getAbsolutePath()); 
      req.setParam("literal.name", file.getName()); 
      req.setParam("literal.content_type", type); 
      req.setParam("uprefix", "attr_"); 
      req.setParam("fmap.content", "attr_content"); 
      req.setAction(ACTION.COMMIT, true, true); 

      solr.request(req);* //**Line no 36** here i am getting exception 

而执行此代码我得到以下Exception.` 例外: org.apache.solr.common.SolrException 异常消息: 内部服务器错误内部服务器错误请求:http://localhost:8080/solr/update/extract?literal.id=C:\用户\古鲁普拉萨德\桌面\搜索\ 47975832.doc & literal.name = 47975832.doc & literal.content_type = DOC & uprefix = attr_ & fmap.content = attr_content &提交=真正& waitFlush =真& waitSearcher =真&重量= javabin &版本= 2 异常迹: 在org.apache.solr.client.solrj.impl.CommonsHttpSolrServer.request(CommonsHttpSolrServer.java:435) 在org.apache.solr.client。 solrj.impl.CommonsHttpSolrServer.request(CommonsHttpSolrServer.java:244) 在com.solr.search.test.IndexFiles.indexDocs(IndexFiles.java:36)*

任何帮助将是有益的

回答

0

我不建议你使用dih来索引你的数据库数据,你可以使用solrj来索引你的数据,solrj很简单,如果你可以使用jdbc,那么事情很简单,你可以使用solrj build solr文件和批处理数据c ommit到solr服务器。有一个solrj wiki,希望它可以帮助你solrj wiki

0

solr 5.0自带内置实用程序DIH处理程序,用于从您正在使用的数据库索引数据,但其配置非常重要且棘手,请您发布DIH处理程序的配置或共享导入日志,它看起来像我的配置问题