坑点、问题记录

1:项目Spring版本升级之后,服务启动有如下报错:

六月 02, 2018 5:51:49 下午 org.apache.catalina.core.ApplicationContext log
严重: StandardWrapper.Throwable
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.validation.beanvalidation.OptionalValidatorFactoryBean#0': Invocation of init method failed; nested exception is java.lang.AbstractMethodError: org.apache.bval.jsr303.ConfigurationImpl.getDefaultParameterNameProvider()Ljavax/validation/ParameterNameProvider;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1628)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:555)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761)at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:867)at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543)at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:668)at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:634)at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:682)at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:553)at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:494)at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:171)at javax.servlet.GenericServlet.init(GenericServlet.java:158)at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1188)at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1132)at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1021)at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5046)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5356)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398)at java.util.concurrent.FutureTask.run(FutureTask.java:266)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: java.lang.AbstractMethodError: org.apache.bval.jsr303.ConfigurationImpl.getDefaultParameterNameProvider()Ljavax/validation/ParameterNameProvider;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.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:216)at org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:201)at org.springframework.validation.beanvalidation.LocalValidatorFactoryBean.configureParameterNameProviderIfPossible(LocalValidatorFactoryBean.java:315)at org.springframework.validation.beanvalidation.LocalValidatorFactoryBean.afterPropertiesSet(LocalValidatorFactoryBean.java:284)at org.springframework.validation.beanvalidation.OptionalValidatorFactoryBean.afterPropertiesSet(OptionalValidatorFactoryBean.java:40)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1687)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1624)... 28 more

经排查,原来是Spring 4.x版本已经不支持org.apache.bval的bean验证了,替换为hibernate-validator就好了,pom如下:

<dependency>  <groupId>org.hibernate</groupId>  <artifactId>hibernate-validator</artifactId>  <version>5.2.4.Final</version>  
</dependency>  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/314169.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

E - The Imp(博弈/动态规划)

E - The Imp 有n个物品且分别为价值vi成本ci&#xff0c;然后每次选择购买后&#xff0c;有人可以使用k次魔法&#xff0c;使得物品消失但是成本仍然花费了&#xff0c;求解最大收益。 首先最后的最优解序列&#xff0c;一定是可以由自己决定的&#xff0c;那么它一定满足vi递…

Mult-Nim博弈

Nim or not Nim? 结论 Mult−NimMult-NimMult−Nim博弈&#xff1a;有nnn堆石子&#xff0c;两个人可以从任意一堆石子中拿任意多个石子(不能不拿)或把一堆数量不少于22石子分为两堆不为空的石子&#xff0c;没法拿的人失败&#xff0c;问谁会胜利。 结论SG(x)x−1[xmod40],…

提高工作效率的方法

1&#xff1a;集中注意力、专注度 1&#xff09;远离分散你注意力的东西&#xff08;如&#xff1a;将手机锁到柜子里&#xff09; 2&#xff09;保持主航道不变&#xff1a;在做A的时候&#xff0c;不要因为想到了B&#xff0c;就去做B。而是判断B的重要、紧急程度&#xff…

背包dp的核心思想(动态规划)

背包dp 突然发现我一直没有真正理解背包&#xff0c;真正的背包应该是用空间换时间的一种dp方法&#xff0c;本质上就是n个物品选或不选,理论上有2n2^n2n种可能结果&#xff0c;但是背包利用的就是值域很小这一特点来重叠子结构&#xff0c;所以背包本质上处理的应该是一个集合…

秒半价,限四天!Vostro极致轻薄全能本,助你全能全开!

在信息化时代&#xff0c;电脑就是你工作和创业的“合伙人”&#xff01;每天比别人多处理几件任务、每天比别人快20分钟&#xff0c;每天比别人少重启和崩溃几次&#xff0c;日积月累获益多到算不过来&#xff01;小编四处打探&#xff0c;有三款王者电脑重磅优惠&#xff0c;…

HDU 3590 PP and QQ(反nim博弈,删边游戏)

PP and QQ 思路 删边游戏了解一下&#xff0c;其实就是个nim博弈吧&#xff0c;只是删边个数有特殊限制&#xff0c; 然后就是一个反nim博弈了。 删边定理&#xff1a; 遇到分叉口时&#xff0c;它的子树上的可操作的sg函数为所有子树节点的sg函数的异或值&#xff0c; 然后…

【活动】侬好上海,Microsoft Reactor来啦

在美国纽约、旧金山和雷德蒙德&#xff0c;在英国伦敦&#xff0c;在澳大利亚悉尼&#xff0c;在以色列特拉维夫&#xff0c;分别都有这样一处专为开发者打造的宝地&#xff0c;在这些地方&#xff1a;❖ 经常举办各种免费的技术讲座&#xff0c;与大家分享最新技术和产品❖ 频…

JDK演化系列(1.0~~~1.9)

系列文章导读 JDK 1.0包含的功能 JDK 1.1新增&优化&去掉的功能 JDK 1.2新增&优化&去掉的功能 JDK 1.3新增&优化&去掉的功能 JDK 1.4新增&优化&去掉的功能 JDK 1.5新增&优化&去掉的功能 JDK 1.6新增&优化&去掉的功能 J…

#6682. 梦中的数论(Min25筛)

#6682. 梦中的数论 推式子 ∑i1n∑jkn∑k1n[(j∣i)∧((jk)∣i)]显然有jk>j,所以我们另jkk′&#xff0c;有j>k′&#xff0c;并且j,k′都是i的约数这就相当于在σ(i)中选取一对有序对了&#xff0c;所以总的选法有C(σ(i),2)种原式∑i1nσ(i)(σ(i)−1)2∑i1nσ2(i)−∑…

A. [2021.1.29多校省选模拟11]最大公约数(杜教筛/数论)

A. [2021.1.29多校省选模拟11]最大公约数 这是一个杜教筛的经典题目&#xff0c;最后我们只需要筛一下1∗xμ(x)1*x\mu(x)1∗xμ(x)这个函数的前缀和即可&#xff0c;然后看到有111这个函数&#xff0c;我们下意识应该想到的就是μ\muμ&#xff0c;然后又有xμ(x)x\mu(x)xμ(x…

.NET Core 小程序开发零基础系列(2)——小程序服务通知(模板消息)

基于上一篇文件“.NET Core 小程序开发零基础系列&#xff08;1&#xff09;——开发者启用并校验牵手成功”的反映&#xff0c;个人觉得效果很不错&#xff0c;大家对公众号开发还是有很大需求的&#xff0c;同时也收到了很多同学的问题&#xff0c;后面我也会通过实战性文章慢…

Java工程师修炼之路

文章来自于微信公众号&#xff1a;Hollis&#xff0c;作者网站&#xff1a;https://www.hollischuang.com/ 转载过来方便查看 1 基础篇 01 面向对象 → 什么是面向对象 面向对象、面向过程 面向对象的三大基本特征和五大基本原则 → 平台无关性 Java 如何实现的平台无关 …

P4900 食堂(数学式子推导)

P4900 食堂 推导 ans∑i1n∑j1iij−∑i1n∑j1i⌊ij⌋前项为∑i1ni∑j1iinv(j),两次前缀和即可得到后项为∑i1n∑j1i⌊ij⌋∑i1n∑j1id(j),nloglogn2n即可得到ans \sum_{i 1} ^{n} \sum_{j 1} ^ {i} \frac{i}{j} - \sum_{i 1} ^{n} \sum_{j 1} ^{i} \lfloor\frac{i}{j} \r…

[PowerShell]人人都值得学一点PowerShell实现自动化(2)有哪些可用的场景及方式?

部分读者反应太多知识要学了&#xff0c;学完一轮又一轮&#xff0c;笔者也不想单单为了制造学习而学习&#xff0c;所有Excel催化剂所发布的内容&#xff0c;都是笔者所亲自使用到的&#xff0c;当然很多领域也没有深挖到很底的程度。PowerShell使用场景虽然说PowerShell也是在…

[2021.1.31多校省选模拟12]随机变换的子串(线段树维护分治/字符串/自动机思想)

[2021.1.31多校省选模拟12]随机变换的子串 对于这三种操作&#xff0c;我们惊奇地发现有这样的性质&#xff0c;所有长度大于4的字符串都可以通过变换变为长度小于等于4的字符串&#xff0c;那么查询本质不同的字符串我们只需要处理12种字符串的出现次数即可。 然后对于区间所…

GG and MM(every sg 游戏)

GG and MM 结论 题意&#xff1a; 每组给n个游戏&#xff0c;每个游戏有两堆石头&#xff0c;GG和MM轮流操作&#xff0c;操作规则&#xff1a; 从两堆里面选出一堆&#xff0c;假设这堆石头有x个&#xff0c;然后在另一堆里取k*x个石头(k是正整数) 谁不能取石头谁输&…

[2021.1.13多校省选模拟2]T1(动态规划/轮廓线dp)

[2021.1.13多校省选模拟2]T1 一个经典的轮廓线dp&#xff0c;可以发现一定可以找到一条轮廓将这个图形分开&#xff0c;然后使得左半部分由左边处理&#xff0c;右半部分由右边处理&#xff0c;然后我们只需要处理这个折线即可&#xff0c;具体实现需要处理前缀和的前缀最大值&…

[PowerShell]人人都值得学一点PowerShell实现自动化(1)在VisualStudio上使用PowerShell...

最近学PowerShell的知识比较多&#xff0c;也开始有一点点可以分享的知识给大家输出&#xff0c;学一门语言&#xff0c;理当首先找准一个好用的IDE来帮助我们提高学习效率&#xff0c;本文给大家介绍如何在宇宙第一的IDE-Visual Studio上写PowerShell脚本。关于PowerShell的基…

2019-02-21-算法-进化

论代码能力&#xff1a; 给出两个 非空 的链表用来表示两个非负的整数。其中&#xff0c;它们各自的位数是按照 逆序 的方式存储的&#xff0c;并且它们的每个节点只能存储 一位 数字。 如果&#xff0c;我们将这两个数相加起来&#xff0c;则会返回一个新的链表来表示它们的…

E. Jamie and Tree(树链剖分 + 线段树)

E. Jamie and Tree 思路 直接rootvroot vrootv&#xff1b; 找lcalcalca&#xff0c;lcalca(root,u),lca(root,v),lca(u,v)lca {lca(root, u), lca(root, v), lca(u, v)}lcalca(root,u),lca(root,v),lca(u,v)中depdepdep最深的&#xff1a; rootrootroot不在lcalcalca的子树…