weblogic下包冲突 导致@Valid失效 不能正确校验表单 分析与解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了weblogic下包冲突 导致@Valid失效 不能正确校验表单 分析与解决相关的知识,希望对你有一定的参考价值。

参考技术A 添加自定义依赖后,问题解决

问题出现是因为weblogic中包含了 valid相关的jar包,在启动项目时,未正确加载程序所包含正确版本的jar,导致部分注解校验失效

对于weblogic内置jar包与项目包冲突的问题,有两种途径解决
1.在weblogic.xml中设置prefer-web-inf-classes,即优先加载web应用下的类

2.设置prefer-web-inf-classes为false,并指定需要使用应用中的jar包:

更多好玩好看的内容,欢迎到我的博客交流,共同进步         WaterMin

喜欢听相声的朋友,也可以来我的 YouTube,来听郭老师的相声     秋酿

weblogic解决jar包冲突

前言

在项目中利用POI开发excel、word的导入导出功能,而POI在解析xlsx及docx两种高版本文档时需要依赖xmlbeans包,但weblogic容器中提供了低版本的xmlbeans,从而导致报错:

Caused by: java.lang.NoSuchMethodError: org.apache.xmlbeans.XmlOptions.setLoadEntityBytesLimit(I)Lorg/apache/xmlbeans/XmlOptions;
at org.apache.poi.POIXMLTypeLoader.<clinit>(POIXMLTypeLoader.java:50)
at org.apache.poi.xssf.model.ThemesTable.<init>(ThemesTable.java:85)

由于weblogic下还部署有其他的应用,如果升级jar包可能会导致其他应用的异常,所以我们在当前应用下放置相应的jar包并通过调整类加载优先级使程序中加载本应用下相应版本的jar包;

调整方式

再 META-INFO/weblogic-application.xm 配置

<prefer-application-packages>
        <package-name>org.apache.xmlbeans.*</package-name>
</prefer-application-packages>

以上是关于weblogic下包冲突 导致@Valid失效 不能正确校验表单 分析与解决的主要内容,如果未能解决你的问题,请参考以下文章

weblogic启动服务器Authentication denied: Boot identity not valid

weblogic启动服务器Authentication denied: Boot identity not valid

mybatis查询的字段类型因为冲突报错is outside of valid range for type java.lang.Integer

springboot在weblogic中的事务失效问题

springboot 部署到 weblogic 中 jar 包冲突

springboot 部署到 weblogic 中 jar 包冲突