当前位置: 首页 > 知识库问答 >
问题:

mongo的spring数据由以下原因引起:java。lang.AbstractMethodError

轩辕亮
2023-03-14

我使用spring数据来创建jpa和mongo。

附属国:

spring版本是4.0。2.释放

SpringDataJPA版本是1.4。3.释放

spring数据mongodb版本为1.2。0.1释放

XML配置:

<context:component-scan base-package="develop" />

<jpa:repositories base-package="develop.erp"
        entity-manager-factory-ref="entityManagerFactory"
        transaction-manager-ref="transactionManager" /> 


<mongo:repositories base-package="develop.doc" />

型号:

@Document
public class OrderItem extends AbstractDocument {


    enter code here
    @Id
    private BigInteger id;

    private Integer orderNumber;

    public get and set method ...
}

public interface IOrderItemDao extends PagingAndSortingRepository<OrderItem, BigInteger> {


    List<OrderItem> findByOrderNumber(Integer number);
}

例外:

Caused by: java.lang.AbstractMethodError
    at org.springframework.data.repository.query.Parameters.getBindableParameters(Parameters.java:235)
    at org.springframework.data.repository.query.Parameters.assertEitherAllParamAnnotatedOrNone(Parameters.java:262)
    at org.springframework.data.repository.query.Parameters.<init>(Parameters.java:85)
    at org.springframework.data.mongodb.repository.query.MongoParameters.<init>(MongoParameters.java:47)
    at org.springframework.data.mongodb.repository.query.MongoQueryMethod.createParameters(MongoQueryMethod.java:76)
    at org.springframework.data.repository.query.QueryMethod.<init>(QueryMethod.java:70)
    at org.springframework.data.mongodb.repository.query.MongoQueryMethod.<init>(MongoQueryMethod.java:62)
    at org.springframework.data.mongodb.repository.support.MongoRepositoryFactory$MongoQueryLookupStrategy.resolveQuery(MongoRepositoryFactory.java:119)
    at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.<init>(RepositoryFactorySupport.java:304)
    at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:161)
    at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.getObject(RepositoryFactoryBeanSupport.java:162)
    at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.getObject(RepositoryFactoryBeanSupport.java:44)
    at org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:144)

有人知道吗?

非常感谢。。

共有2个答案

禹昆
2023-03-14

这是由于spring数据和db驱动程序依赖性的版本不兼容造成的。请检查db驱动程序的版本是否与提供的spring数据依赖项兼容。我也面临同样的问题,通过修改“spring数据”的版本来解决。

殷轶
2023-03-14

在我的例子中,我的项目中有SpringDataSolr(2.0.1)和SpringDataJPA(1.9.1)。我注意到SolrQueryLookupStrategy正在从SpringDataCommons实现QueryLookupStrategy接口,该接口是从SpringDataJPA jar中传递过来的。问题是新的solr与旧的spring数据jpa不兼容—QueryLookupStrategy中方法的签名已更改,代码未正确编译。将Spring数据jpa猛增至1.10。我解决了这个问题。我想你也有类似的问题。跟踪抛出异常的位置,并在SpringJAR中搜索编译问题。

 类似资料:
  • 实际上,我正在使用Kotlin开发SpringBootV2应用程序。我在版本9中使用JDK。 在添加了依赖项后,我得到了ClassNot找到错误: 原因:org。springframework。豆。工厂BeanCreationException:创建名为“entityManagerFactory”的bean时出错,该bean在类路径资源[org/springframework/boot/autoc

  • 问题内容: 当我通过SOAP UI运行WS时,我间歇性地收到以下错误。有时它不工作,然后继续工作,然后有时又不工作。另一个问题是,由客户端提供的测试Web服务运行正常,没有任何问题,但是当我们切换到产生问题的产品时。谷歌搜索并做了一些更改(HttpConfig上的超时,码头maxIdleTime),但仍然无法使其工作:(任何想法,我如何可以缩小问题的根源? 只需将SOAP UI与生产端点一起使用即

  • 问题内容: java和slf4j的一些问题使用想法制作项目,可以。但是如果我尝试用gradle制作罐子,我会遇到一些问题。 build.gradle Test.java 终奌站: 输出: 我试图使用gradle / maven(mvn包)相同的问题。由于某些原因,它无法在类路径中找到Logger和LoggerFactory。 问题答案: 谢谢迈克尔记得关于胖子的事。在您的评论尝试谷歌搜索后:“ g

  • 问题内容: 我是Spark框架的新手。我试图使用spark和java创建一个示例应用程序。我有以下代码 Pom.xml 资源 我正在尝试使用IntelliJ IDE运行以上代码。但是我有这样的错误 我在代码中错过了什么吗? 问题答案: 您的日志中的实际错误是: 引起原因:java.lang.StringIndexOutOfBoundsException:开始0,结束3,长度2 这是由于Java 9

  • 问题内容: 在关于sqlite的android vogella教程期间,我遇到了令人讨厌的问题,并出现以下错误: 我无数次地一步步修改所有文件,以正确重新创建R. class。关于此错误的非常奇怪的是,我不知道为什么在“ com.example.de.vogella.android”中有关于“ com.example”的任何内容。这是某种标准生成的名称吗?我所有的包/名称/路径都从未以“ com.

  • 我不熟悉自动化。尝试简单的硒POC。下面是webdriver配置的详细信息 JDK 版本 17.0.2 硒版本 4 Chrome 浏览器版本 98.0.4758.102 (官方构建) (64 位) Chromedriver 版本相同 这是我的代码: 网络驱动程序 = 新的铬驱动程序();驱动程序(“https://demoqa.com/login”); 我做了设置属性。请找到随附的屏幕截图。 错误