`
qindongliang1922
  • 浏览: 2188580 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:117663
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:126070
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:60024
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:71399
社区版块
存档分类
最新评论
阅读更多
今天在用solr4.3和web项目结合的时候,出了一个莫名的异常就是,我无论用solrj向solr服务添加数据,总是报如下的一个异常

六月 18, 2013 8:33:12 下午 org.apache.solr.client.solrj.impl.HttpClientUtil createClient
信息: Creating new http client, config:maxConnections=128&maxConnectionsPerHost=32&followRedirects=false
Exception in thread "main" java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)V
	at org.apache.commons.logging.impl.SLF4JLocationAwareLog.debug(SLF4JLocationAwareLog.java:133)
	at org.apache.http.client.protocol.RequestAuthCache.process(RequestAuthCache.java:78)
	at org.apache.http.protocol.ImmutableHttpProcessor.process(ImmutableHttpProcessor.java:109)
	at org.apache.http.protocol.HttpRequestExecutor.preProcess(HttpRequestExecutor.java:176)
	at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:520)
	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:906)
	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:805)
	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:784)
	at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:352)
	at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:180)
	at org.apache.solr.client.solrj.request.AbstractUpdateRequest.process(AbstractUpdateRequest.java:117)
	at org.apache.solr.client.solrj.SolrServer.add(SolrServer.java:116)
	at org.apache.solr.client.solrj.SolrServer.addBean(SolrServer.java:136)
	at org.apache.solr.client.solrj.SolrServer.addBean(SolrServer.java:125)
	at solr.impl.SolrServiceImpl.addIndex(SolrServiceImpl.java:61)
	at solr.impl.SolrServiceImpl.main(SolrServiceImpl.java:35)






这个问题我找了半天原因,也请教了好多高手,结果都不理想,因为solr4.3的部署,它的日志模块与整体的配置已经分离了,所以如果你还是按照4.2的之前的配置去启动这个solr服务那么肯定不会成功的,需要额外在配置日志模块才可以,对于这个我在这里简单说明一下,从官网下载的solr4.3的解压包里面找到例子下面的lib/ext包将其下面的所有jar包拷贝到tomcat的lib中或者拷贝到solr的webinfo/lib都可以,最后再把例子中的log4j文件拷贝到webinfo中


言归正传,关于上面的那个错误,其实因为多放了slf4j-log4j12-1.6.6.jar包导致,如果你仔细看日志信息的话就会发现有一个信息提示,在你的项目中发现了多个slf4j-log4j12-1.6.6.jar包,另外一点在hibernate中的也有一个日志jar包slf4j-log4j12-1.5.8.jar只要放的位置不冲突即可,
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/F:/eclipse10tomcat/lib/slf4j-log4j12-1.6.6.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/F:/eclipse10tomcat/webapps/Search/WEB-INF/lib/slf4j-log4j12-1.5.8.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/F:/eclipse10tomcat/webapps/Search/WEB-INF/lib/slf4j-log4j12-1.6.6.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.


这个是异常的信息,OK,然后我们需要做的就是,按照上面的移除多余的jar包,即可,因为多个jar可能记录日志信息时,日志模块,不知道需要用那个jar包,记录所以就出现了最上面的那个异常问题,当我们把多余的jar包移除后(留一个即可),再启动tomcat这时候就不会出现那行信息了,至此,用solrj向solr服务添加数据,就可以成功了!



分享到:
评论

相关推荐

    solr4.3源代码一

    Solr4.3是Apache Solr的一个早期版本,它是一个基于Lucene的全文搜索服务器,提供了高可配置、可扩展的搜索和分析功能。Solr4.3源代码的获取通常是为了深入理解其内部工作原理,进行定制开发或优化。在你提供的信息...

    solr4.3源代码二

    Solr是Apache Lucene项目的一个子项目,是一个高性能、基于Java的全文检索服务器。源代码是理解其工作原理和进行自定义开发的关键。在你提供的资料中,"solr4.3源代码二"显然是Solr 4.3版本的源代码包,这将包含Solr...

    solr4.3-ik-analyzer

    solr4.3 分词器 把IKAnalyzer.jar放到solr\WEB-INF\lib下。

    ik-analyzer-5.01-for solr4.3.jar

    ik-analyzer-5.01-for solr4.3.jar

    solr4.3的IK分词器

    最新版solr4.3的IK分词器,中文分词效果良好!对付一般的大众分词没有问题

    solr3.5与tomcat的部署配置以及与java项目的集成

    ### Solr 3.5与Tomcat的部署配置及与Java项目的集成 #### 一、Solr 3.5与Tomcat的部署配置 **1. 下载与安装Solr** 首先,需要从官方或其他可信任来源下载Apache Solr 3.5.0。根据描述中的链接(虽然不可用),...

    solr与java结合的小例子

    标题 "solr与java结合的小例子" 涉及的核心知识点是Apache Solr与Java的集成应用。Apache Solr是一个开源的企业级全文搜索引擎,它提供了一个高效、可扩展的搜索和导航层,常用于大数据量的网站内容和文档检索。在...

    solr教程(配置+集成)

    Solr是一个独立的企业级应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的xml文件, 生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回...

    Solr4.3 版本中文分词组件

    最高版本的 solr 中文分词配置 , 小弟已经测试过了 里面的 jar 要到各官网上下载

    solr入门java工程

    在这个"solr入门java工程"中,我们将探讨如何使用Java客户端与华为FusionInsight SolrTest进行交互,以及如何在SolrCloud模式下进行分布式搜索。 首先,让我们了解Solr的基本概念。Solr的核心功能是提供高效的全文...

    solr ssm java

    标题中的"solr ssm java"表明这是一个使用Java语言,结合Spring、SpringMVC和MyBatis(SSM)框架的项目,其中整合了Apache Solr搜索引擎。让我们深入了解一下这些技术及其相互作用。 **Solr**: Apache Solr是基于...

    JAVA+Solr分词项目工程实例Java源码

    - 使用Java与Solr集成,主要通过SolrJ库,这是一个Java客户端API,用于与Solr服务器通信。 - 集成步骤包括:添加SolrJ依赖、创建SolrServer对象、构建索引文档、发送请求到Solr服务器进行索引或查询操作。 3. **...

    solr在java中使用总结

    Solr是一个高性能的全文搜索引擎,基于Apache Lucene开发,使用Java 5编写。它不仅继承了Lucene的强大功能,还提供了更丰富的查询语言以及更好的性能优化。Solr具备高度可配置性和可扩展性,支持通过HTTP请求提交XML...

    ik4solr4.3:ik分词器for Solr4.3,支持4.4,二进制不用修改也支持4.6,不放心可以改下POM中的依赖

    ik4solr4.3(不再维护,未来可能删除:请去 ) solr4.3的ik分词器(改了一些smart分词算法。使用maven编译),隔壁有我写的包 支持从solr自己的环境中获取自定义词典(使用solr的ResourceLoader,只需要把字典文件...

    solr3.5与tomcat6集成,添加自己的分词器

    Solr 是一个高性能、采用 Java 开发的企业级搜索服务器,它基于 Lucene 库提供了一个完整的全文检索框架。而 Tomcat 是一个开源的Servlet容器,主要用于运行Java Web应用程序。本文将详细介绍如何在Tomcat 6环境下...

    solr-java运用

    solr配置,部署,定时任务更新,数据源配置, solr_java 运用详解

    Solr结合Java所需Jar

    Solr是Apache Lucene项目下的一个企业级搜索服务器,它提供了全文检索、命中高亮、 faceted search(分面搜索)以及与多种数据源的集成等功能。在Java环境中使用Solr,我们需要引入相应的Jar包来支持Java代码与Solr...

    Java搜索服务Solr操作指南.pdf

    在Java后台开发中,Solr通过SolrJ客户端库与Java应用进行交互,通过配置和编码实现数据索引、搜索等功能。 ### 1. Solr服务器搭建与配置 搭建Solr服务需要Java环境,推荐在Linux系统中使用Tomcat作为应用服务器进行...

    solr4.7.2服务器tomcat集成

    综上所述,集成Solr4.7.2与Tomcat7是一项涉及多方面配置和调整的任务,需要对Java Web应用、Solr配置以及数据库操作有深入理解。这个集成包简化了部分流程,但仍有自定义和优化的空间,以适应具体的应用场景。

    solr-5.5.4与spring 集成项目示例2

    solr-5.5.4与spring集成,增加了账号密码身份验证,增加了zk中文分词,增加了增量导入,mysql数据同步,增加了git链接地址

Global site tag (gtag.js) - Google Analytics