java.lang.NoSuchMethodError:javax.validation.BootstrapConfiguration.getClockProviderClassName [英] java.lang.NoSuchMethodError: javax.validation.BootstrapConfiguration.getClockProviderClassName

查看:1324
本文介绍了java.lang.NoSuchMethodError:javax.validation.BootstrapConfiguration.getClockProviderClassName的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

JDK:1.8.0_131

JDK: 1.8.0_131

Tomcat:8.0.27.0

Tomcat: 8.0.27.0

Hibernate Validator:6.0.7.Final +所有依赖项,可从以下网站下载: Hibernate Validator 6

Hibernate Validator: 6.0.7.Final + all the dependencies downloaded from: Hibernate Validator 6

    @POST
    @Consumes(MediaType.APPLICATION_JSON)
    @Produces(MediaType.APPLICATION_JSON)
    public AccountSyncResponse excute(AccountSyncRequest account_sync_request_) 
    {        
       ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
       Validator validator = factory.getValidator();
       Set<ConstraintViolation<AccountSyncRequest>> violations = validator.validate(account_sync_request_);

       .
       .
       .
       .

       AccountSyncResponse _AccountSyncResponse = new AccountSyncResponse();

       return _AccountSyncResponse;    
    }

代码在Validation.buildDefaultValidatorFactory()上失败,例外:

java.lang.NoSuchMethodError: javax.validation.BootstrapConfiguration.getClockProviderClassName()Ljava/lang/String;
    at org.hibernate.validator.internal.xml.ValidationBootstrapParameters.<init>(ValidationBootstrapParameters.java:63)
    at org.hibernate.validator.internal.engine.ConfigurationImpl.parseValidationXml(ConfigurationImpl.java:527)
    at org.hibernate.validator.internal.engine.ConfigurationImpl.buildValidatorFactory(ConfigurationImpl.java:328)
    at javax.validation.Validation.buildDefaultValidatorFactory(Validation.java:110)

似乎使用了错误的jar文件,但我不知道是哪个文件.

It looks like the wrong jar file is being used but I can’t figure out which one.

推荐答案

从Springboot 1.5.x升级到Springboot2后,我遇到了同样的问题.解决方案是将Java EE 7升级到Java EE 8:

I had this same issue after upgrading from Springboot 1.5.x to Springboot2. The solution was to upgrade Java EE 7 to Java EE 8:

发件人:

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-api</artifactId>
    <version>7.0</version>
    <scope>provided</scope>
</dependency>

收件人:

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-api</artifactId>
    <version>8.0</version>
    <scope>provided</scope>
</dependency>

这篇关于java.lang.NoSuchMethodError:javax.validation.BootstrapConfiguration.getClockProviderClassName的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆