项目

一般

简介

应用发布报 javax.servlet.ServletException: java.lang.NoSuchMethodError: javax.validation.BootstrapConfiguration.getClockProviderClassName()Ljava/lang/String 的问题

由 huang junrui 在 将近 4 年 之前添加

异常信息:

HV000001: Hibernate Validator 6.1.2.Final

2021-09-23 18:16:50 警告 [apusic.web.provider./provider-Thread 1] 无法装载过滤器 'lookupKeyFilter'。
javax.servlet.ServletException: java.lang.NoSuchMethodError: javax.validation.BootstrapConfiguration.getClockProviderClassName()Ljava/lang/String;
 at com.apusic.web.container.WebComponent.create(WebComponent.java:284)
 at com.apusic.web.container.WebComponent.getComponent(WebComponent.java:158)
 at com.apusic.web.container.WebComponent.init(WebComponent.java:221)
 at com.apusic.web.container.WebContainer.loadFilter(WebContainer.java:1494)
 at com.apusic.web.container.WebContainer.loadFilters(WebContainer.java:1504)
 at com.apusic.web.container.WebContainer.start(WebContainer.java:308)
 at com.apusic.web.http.VirtualHost.addContext(VirtualHost.java:154)
 at com.apusic.web.http.HttpServer.loadWebModule(HttpServer.java:224)
 at com.apusic.web.WebService.loadWebModule(WebService.java:591)
 at com.apusic.deploy.runtime.WebModule.load(WebModule.java:1963)
 at com.apusic.deploy.runtime.J2EEApplication.loadModules(J2EEApplication.java:1303)
 at com.apusic.deploy.runtime.J2EEApplication.startApplication(J2EEApplication.java:1209)
 at com.apusic.deploy.runtime.J2EEApplication.startService(J2EEApplication.java:1065)
 at com.apusic.service.Service.start(Service.java:205)
 at com.apusic.deploy.runtime.J2EEDeployer.startUserApplications(J2EEDeployer.java:175)
 at com.apusic.deploy.runtime.J2EEDeployer.startService(J2EEDeployer.java:142)
 at com.apusic.service.Service.start(Service.java:205)
 at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:498)
 at com.apusic.jmx.MBeanDescriptor.invoke(MBeanDescriptor.java:551)
 at com.apusic.jmx.DynamicMBeanSupport.invoke(DynamicMBeanSupport.java:62)
 at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
 at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
 at com.apusic.server.J2EEServer.start(J2EEServer.java:650)
 at com.apusic.server.J2EEServer.startup(J2EEServer.java:372)
 at com.apusic.server.Main.main(Main.java:35)
Caused by: java.lang.NoSuchMethodError: javax.validation.BootstrapConfiguration.getClockProviderClassName()Ljava/lang/String;
 at org.hibernate.validator.internal.xml.config.ValidationBootstrapParameters.<init>(ValidationBootstrapParameters.java:65)
 at org.hibernate.validator.internal.engine.AbstractConfigurationImpl.parseValidationXml(AbstractConfigurationImpl.java:633)
 at org.hibernate.validator.internal.engine.AbstractConfigurationImpl.buildValidatorFactory(AbstractConfigurationImpl.java:408)
 at com.minstone.mcube.library.common.MCubeValidator$_internal.<clinit>(MCubeValidator.java:27)
 at com.minstone.mcube.library.common.MCubeValidator.validate(MCubeValidator.java:41)
 at com.minstone.mcube.provider.data.com.service.DataBlockService.insert(DataBlockService.java:77)
 at com.minstone.mcube.provider.data.com.service.DataBlockService$$FastClassBySpringCGLIB$$2041e799.invoke(<generated>)
 at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:769)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
 at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:100)
 at com.minstone.mcube.starter.cache.handler.InvocationHandler.invoke(InvocationHandler.java:15)
 at com.minstone.mcube.starter.cache.handler.CacheEvictHandler.invoke(CacheEvictHandler.java:71)
 at com.minstone.mcube.starter.cache.handler.CachePutHandler.invoke(CachePutHandler.java:34)
 at com.minstone.mcube.starter.cache.handler.EachCacheableHandler.invoke(EachCacheableHandler.java:43)
 at com.minstone.mcube.starter.cache.handler.CacheableHandler.invoke(CacheableHandler.java:36)
 at com.minstone.mcube.starter.cache.CacheAdvice.invokeAdvice(CacheAdvice.java:57)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:498)
 at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:644)
 at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:633)
 at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
 at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:95)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
 at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:689)
 at com.minstone.mcube.provider.data.com.service.DataBlockService$$EnhancerBySpringCGLIB$$4e5b12bb.insert(<generated>)
 at com.minstone.mcube.provider.data.sys.service.DatabaseService.initMaster(DatabaseService.java:130)
 at com.minstone.mcube.provider.data.sys.service.DatabaseService$$FastClassBySpringCGLIB$$29d78bbf.invoke(<generated>)
 at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:769)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
 at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:100)
 at com.minstone.mcube.starter.cache.handler.InvocationHandler.invoke(InvocationHandler.java:15)
 at com.minstone.mcube.starter.cache.handler.CacheEvictHandler.invoke(CacheEvictHandler.java:71)
 at com.minstone.mcube.starter.cache.handler.CachePutHandler.invoke(CachePutHandler.java:34)
 at com.minstone.mcube.starter.cache.handler.EachCacheableHandler.invoke(EachCacheableHandler.java:43)
 at com.minstone.mcube.starter.cache.handler.CacheableHandler.invoke(CacheableHandler.java:36)
 at com.minstone.mcube.starter.cache.CacheAdvice.invokeAdvice(CacheAdvice.java:57)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.lang.reflect.Method.invoke(Method.java:498)
 at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:644)
 at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:633)
 at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
 at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:95)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
 at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:689)
 at com.minstone.mcube.provider.data.sys.service.DatabaseService$$EnhancerBySpringCGLIB$$57da710f.initMaster(<generated>)
 at com.minstone.mcube.provider.util.datasource.DataSourceProvider.onExecutorCreate(DataSourceProvider.java:89)
 at com.minstone.mcube.provider.util.datasource.DataSourceProvider$$FastClassBySpringCGLIB$$e28750f6.invoke(<generated>)
 at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:769)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
 at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:95)
 at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
 at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:747)
 at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:689)
 at com.minstone.mcube.provider.util.datasource.DataSourceProvider$$EnhancerBySpringCGLIB$$92d590f2.onExecutorCreate(<generated>)
 at com.minstone.mcube.starter.orm.impl.beetlsql.BeetlSqlExecutor.afterPropertiesSet(BeetlSqlExecutor.java:73)
 at com.minstone.mcube.starter.orm.lookup.LookupKeyFilter.init(LookupKeyFilter.java:36)
 at com.apusic.web.container.FilterComponent.initializeComponent(FilterComponent.java:41)
 at com.apusic.web.container.FilterComponent.initializeComponent(FilterComponent.java:21)
 at com.apusic.web.container.WebComponent.create(WebComponent.java:276)
 ... 26 more

版本号:202107071637

解决时间:2021-09-27

解决方案:

1、maven应用可在pom.xml文件中如下配置,并重新打包即可

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-web</artifactId>
  <exclusions>
    <exclusion>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-tomcat</artifactId>
    </exclusion>
    <exclusion>
      <groupId>javax.validation</groupId>
      <artifactId>validation-api</artifactId>
    </exclusion>
  </exclusions>
</dependency>
<dependency>
   <groupId>javax.validation</groupId>
   <artifactId>validation-api</artifactId>
   <version>2.0.1.Final</version>
</dependency>

2、把v9的javaee.jar的validation目录删除,再重启v9

3、直接替换附件的javaee.jar包,并重启v9(已删除validation目录删除)

界面现象:

日志截图:

解决操作: