博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringMVC项目报javax.validation.ValidationException: Unable to create a Configuration, because no Bean
阅读量:4043 次
发布时间:2019-05-24

本文共 7269 字,大约阅读时间需要 24 分钟。

SpringMVC项目启动是报javax.validation.ValidationException: Unable to create a Configuration, because no Bean Validation provider could be found. Add a provider like Hibernate Validator (RI) to your classpath.

具体报错原因

23-Mar-2019 14:31:51.296 SEVERE [RMI TCP Connection(2)-127.0.0.1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [org.springframework.web.context.ContextLoaderListener] org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.validation.beanvalidation.LocalValidatorFactoryBean#0': Invocation of init method failed; nested exception is javax.validation.ValidationException: Unable to create a Configuration, because no Bean Validation provider could be found. Add a provider like Hibernate Validator (RI) to your classpath.	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1482)	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:521)	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:458)	at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:295)	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:223)	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:292)	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:628)	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)	at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:389)	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:294)	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112)	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4745)	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207)	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)	at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1739)	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.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)	at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:482)	at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:431)	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.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:300)	at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)	at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)	at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1468)	at javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:76)	at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1309)	at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1401)	at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:829)	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 sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:361)	at sun.rmi.transport.Transport$1.run(Transport.java:200)	at sun.rmi.transport.Transport$1.run(Transport.java:197)	at java.security.AccessController.doPrivileged(Native Method)	at sun.rmi.transport.Transport.serviceCall(Transport.java:196)	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)	at java.security.AccessController.doPrivileged(Native Method)	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)	at java.lang.Thread.run(Thread.java:748)Caused by: javax.validation.ValidationException: Unable to create a Configuration, because no Bean Validation provider could be found. Add a provider like Hibernate Validator (RI) to your classpath.	at javax.validation.Validation$GenericBootstrapImpl.configure(Validation.java:271)	at org.springframework.validation.beanvalidation.LocalValidatorFactoryBean.afterPropertiesSet(LocalValidatorFactoryBean.java:188)	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1541)	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1479)	... 57 more

 

网上多数文章是让添加hibernate-validator或者javax.validation

org.hibernate
hibernate-validator
4.3.0.Final

但是工程没有用到validation的jar

使用mvn dependency:tree 查看引用依赖发现工程里面org.glassfish.jersey.containers包引用了javax.validation(validation-api)

只需在引用是排除即可
org.glassfish.jersey.containers
jersey-container-servlet-core
2.25.1
javax.validation
validation-api
 
 

转载地址:http://khmdi.baihongyu.com/

你可能感兴趣的文章
C++ this指针(3) - 删除this指针
查看>>
C++构造与析构(1) - 构造函数
查看>>
C++构造与析构(2) - 拷贝构造函数
查看>>
C++构造与析构(3) - 析构函数
查看>>
C++构造与析构(4) - 默认构造函数
查看>>
C++构造与析构(5) - 何时必须自定义拷贝构造函数
查看>>
C++构造与析构(7) - 数据成员的初始化
查看>>
C++构造与析构(8) - 什么时候必须使用初始化列表
查看>>
C++构造与析构(9) - 默认构造函数
查看>>
C++构造与析构(10) - private析构函数
查看>>
C++构造与析构(11) - 析构函数的行为
查看>>
C++构造与析构(12) - copy elision编译器优化
查看>>
C++构造与析构(13) - 内建类型的默认构造函数
查看>>
C++构造与析构(14) - 编译器何时创建默认构造函数和拷贝构造函数
查看>>
C++构造与析构(15) - 为何拷贝构造函数必须为const
查看>>
C++构造与析构(16) - virtual构造函数
查看>>
C++构造与析构(17) - virtual拷贝构造函数
查看>>
C++构造与析构(18) - 静态对象(static object)何时销毁
查看>>
C++构造与析构(19) - 显式地调用构造函数和析构函数
查看>>
C++继承(1) - 基类哪些数据会被子类继承下来?
查看>>