`

使用spring+hibernate集成compass的一个错误!

阅读更多
请参考http://www.springside.org.cn/docs/reference/Compass1.htm上面的文章做的时候,遇到如下的问题:
java 代码
  1. java.lang.NoSuchMethodError: org.apache.lucene.document.Field.<init>(Ljava/lang/String;Ljava/lang/String;Lorg/apache/lucene/document/Field$Store;Lorg/apache/lucene/document/Field$Index;)V  
于是从google上进行查询,在网页上:http://jira.atlassian.com/browse/BAM-506看到如下的提示:
java 代码
 
  1. Jari,  
  2.   
  3. We've rewritten quite a bit of code around the building area for 0.8. We're going to be releasing 0.8 sometime today or tomorrow morning.  
  4.   
  5. It'd be great if you could give that a try and let us know if the problem is still there. If it is, please attach your atlassian-bamboo.log file and we'll try to track down the problem further.  
  6.   
  7. Cheers,  
  8.   
  9. Mark C  
还有:
java 代码
 
  1. Jari,  
  2.   
  3. Thanks for the extra info. We might try to detect the version of Lucene to make sure things are working correctly.  
  4.   
  5.     otherwise it will block the build queue indefinitely  
  6.   
  7. Do the queues still block indefinitely? The expected behaviour for 0.8 should be that the build is marked as failed (since it threw an unexpected exception) but the queues should not be blocked (as in you should be able to run new builds).  
  8.   
  9. As you alluded to, failure during the indexing phase should probably not be treated as a build failure (but should still log). It does, however, mean that certain stats and graphs may be corrupted.  
  10.   
  11. Cheers,  
  12.   
  13. Mark C  
  14. [ Show » ]  
  15. Mark Chaimungkalanont [Atlassian] - 12/Dec/06 05:18 PM Jari, Thanks for the extra info. We might try to detect the version of Lucene to make sure things are working correctly.  
  16.   
  17.     otherwise it will block the build queue indefinitely  
  18.   
  19. Do the queues still block indefinitely? The expected behaviour for 0.8 should be that the build is marked as failed (since it threw an unexpected exception) but the queues should not be blocked (as in you should be able to run new builds). As you alluded to, failure during the indexing phase should probably not be treated as a build failure (but should still log). It does, however, mean that certain stats and graphs may be corrupted. Cheers, Mark C  
才知道自己发布的应用当上的版本有冲突,其实就是lucene-core包的问题。
我使用的开发环境是spring 1.2和hiberante3.1,可能hiberante当中自己带lucene-core-1.4.3吧,所以导致这个错误,折腾了我一天,做技术就是这样,把自己搞的精疲力尽时才发现这是一个多么小的错误。
希望大家共勉.
分享到:
评论
2 楼 星星 2008-04-29  
迁移springside中的bookstore的搜索例子时报异常:
Exception in thread "Compass Indexer" java.lang.NoSuchMethodError: org.apache.lucene.document.Document.add(Lorg/apache/lucene/document/Field;)V
at org.compass.core.lucene.LuceneResource.<init>(LuceneResource.java:81)
at org.compass.core.lucene.LuceneResource.<init>(LuceneResource.java:67)
at org.compass.core.lucene.LuceneMultiResource.<init>(LuceneMultiResource.java:50)
at org.compass.core.lucene.engine.LuceneSearchEngine.createResource(LuceneSearchEngine.java:101)
at org.compass.core.marshall.DefaultMarshallingStrategy.marshall(DefaultMarshallingStrategy.java:133)
at org.compass.core.impl.DefaultCompassSession.create(DefaultCompassSession.java:297)
at org.compass.gps.device.hibernate.AbstractHibernateGpsDevice.doIndex(AbstractHibernateGpsDevice.java:86)
at org.compass.gps.device.AbstractGpsDevice$1.doInCompassWithoutResult(AbstractGpsDevice.java:90)
at org.compass.core.CompassCallbackWithoutResult.doInCompass(CompassCallbackWithoutResult.java:29)
at org.compass.core.CompassTemplate.execute(CompassTemplate.java:134)
at org.compass.gps.impl.SingleCompassGps.executeForIndex(SingleCompassGps.java:149)
at org.compass.gps.device.AbstractGpsDevice.index(AbstractGpsDevice.java:88)
at org.compass.gps.impl.SingleCompassGps$1.buildIndexIfNeeded(SingleCompassGps.java:121)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager$1.firstStep(DefaultLuceneSearchEngineIndexManager.java:186)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager.operate(DefaultLuceneSearchEngineIndexManager.java:130)
at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager.replaceIndex(DefaultLuceneSearchEngineIndexManager.java:184)
at org.compass.core.impl.DefaultCompass$TransactionalSearchEngineIndexManager$6.doInCompassWithoutResult(DefaultCompass.java:325)
at org.compass.core.CompassCallbackWithoutResult.doInCompass(CompassCallbackWithoutResult.java:29)
at org.compass.core.CompassTemplate.execute(CompassTemplate.java:134)
at org.compass.core.CompassTemplate.execute(CompassTemplate.java:117)
at org.compass.core.impl.DefaultCompass$TransactionalSearchEngineIndexManager.replaceIndex(DefaultCompass.java:323)
at org.compass.core.lucene.engine.manager.ScheduledLuceneSearchEngineIndexManager.replaceIndex(ScheduledLuceneSearchEngineIndexManager.java:119)
at org.compass.gps.impl.SingleCompassGps.doIndex(SingleCompassGps.java:116)
at org.compass.gps.impl.AbstractCompassGps.index(AbstractCompassGps.java:106)
at compass.CompassIndexBuilder$1.run(CompassIndexBuilder.java:42)

希望楼主能给以解答
1 楼 apple0668 2007-10-03  
用集成环境的时候集成用到包冲突的问题,要小心注意。有问题请教:在论坛上看到你发个eclipsework方面的。我现在想请教你,我先建立xwork.xml,然后建立action,就报错说找不到xwork.xml,不知道是我操作错误还是怎样?

相关推荐

    spring + hibernate + struts2 + compass2.1

    总结起来,这个项目是使用Spring、Hibernate、Struts2和Compass2.1构建的一个企业级Web应用,具备强大的后端数据管理、ORM、MVC架构以及高效的全文搜索功能。通过合理配置和整合这些技术,开发者可以创建出功能完备...

    struts2+spring2.5+hibernate3.26+compass2.1搜索引擎简单实现(无jar包)

    你需要下载并添加compass库的jar文件,然后配置Compass的连接器,使其与Hibernate集成。这样,当Hibernate进行数据操作时,Compass会自动更新索引。在Spring配置中,你可以声明一个CompassTemplate bean,它提供了与...

    Struts+Hibernate+spring+jpa+lucene+jbpm+compass配置文件

    整合这些技术时,开发者通常会创建一个综合的配置文件体系,例如Spring的配置文件可以管理所有组件的依赖和配置,通过引入Struts、Hibernate、JPA、Lucene、JBPM和Compass的相关配置。这需要对每个框架的原理有深入...

    JAVA 全文搜索 struts2+spring+hibernte+compass整合记录

    在本项目中,"JAVA 全文搜索 struts2+spring+hibernate+compass整合记录" 是一个关于如何在Java环境下集成四个关键组件来实现全文搜索引擎的实践教程。Struts2是一个流行的MVC框架,Spring是核心的依赖注入框架,...

    compass-2.2.0+hibernate-3.2+struts-2.1.8.1+spring-framework-2.5.4

    这个集成示例可能包含了一个使用这些框架协同工作的 Web 应用项目。通常,整合步骤会涉及到以下内容: - 将所有必要的 JAR 包添加到项目的类路径中,包括 Compass、Hibernate、Struts 2 和 Spring 的相关库。 - ...

    基于Java+Hibernate Spring JPA Compass实现的图书商城项目源码.zip

    本项目是一个基于Java技术栈,整合了Hibernate、Spring JPA以及Compass的图书商城系统,提供了全面的功能,适合用于课程设计、大作业、毕业设计、项目练习或学习演示。下面将详细阐述该项目所涉及的技术点及其重要性...

    整合compass2.0 spring hibernate示例源程序

    总结来说,这个示例项目是一个完整的Java应用框架,展示了如何优雅地集成Compass 2.0、Spring和Hibernate,实现一个功能强大的、支持全文搜索的持久层解决方案。它不仅有助于理解这三个框架的基本用法,还提供了实践...

    struts2 hibernate spring compass全文检索

    Struts2、Hibernate、Spring 和 Compass 是Java Web开发中四个重要的框架和技术,它们共同构建了一个强大的企业级应用架构。在本项目中,开发者利用SSH2(即Struts2、Hibernate和Spring的组合)作为基础框架,并引入...

    compass_hibernate_spring3.zip

    标签“compass_hibernate_spring3.zip”再次确认了压缩包的内容,可能包含了一个完整的示例项目,展示如何在 Spring 3 应用中配置和使用 Compass 与 Hibernate 的集成。 压缩包内的单一文件“compass_hibernate_...

    compass_hibernate_spring2.zip

    总的来说,这个压缩包提供了一个实践指南,帮助开发者了解和掌握如何在 Spring 应用中集成 Compass 和 Hibernate,以实现高效、灵活的全文检索功能。这对于那些希望提升 Java 应用程序搜索性能的开发者来说,是非常...

    ssh+compass实现站内搜索分页.rar

    通过以上步骤,你可以在SSH框架下成功集成Compass实现站内搜索分页。这一过程涉及到Java Web开发的多个层面,包括MVC架构、数据库操作、全文检索以及用户体验设计。熟练掌握这些技能将有助于构建高效且功能丰富的Web...

    compass_hibernate_spring.zip

    总之,Compass、Hibernate和Spring的整合是一个强大且实用的解决方案,它让Java应用在处理大量数据时依然能保持良好的性能和响应速度。通过理解并掌握这种整合方式,开发者能够更好地应对复杂的企业级应用场景。

    STRUTS SPRING COMPASS 实例

    这个实例"STRUTS SPRING COMPASS"将这四个组件集成在一起,构建了一个完整的Java企业级应用解决方案。 首先,让我们详细了解一下这些框架的核心概念: 1. **STRUTS**:Struts是一个基于MVC设计模式的Java Web框架...

    compass+ssh2集成 hibernategps问题

    - `cglib-nodep-2.1_3.jar`:CGLIB,一个代码生成库,可能用于Spring的AOP代理或者Hibernate的动态类生成。 - `dom4j-1.6.1.jar`:DOM4J,XML处理库,可能在读取或修改Hibernate或Compass的配置文件时使用。 - `...

    COMPASS+spring构建自己的搜索引擎.pdf

    标题提及的"COMPASS+spring构建自己的搜索引擎"是关于如何使用Compass搜索引擎框架与Spring框架集成,构建一个自定义的全文搜索引擎。Compass是一个开源的搜索引擎库,它提供了与ORM框架(如Hibernate)的集成,使得...

    Compass与Struts2SpringHibernate的整合示例

    6. 在Struts2中使用:编写一个Action或Interceptor,处理搜索请求,通过Compass查询接口进行全文检索,并将结果返回给视图。 7. 整合测试:确保在添加、修改、删除数据时,Compass能够实时更新索引,同时搜索功能...

Global site tag (gtag.js) - Google Analytics