<prefer-application-packages> .................... <package-name>org.hibernate.*</package-name> <package-name>javax.validation.*</package-name> </prefer-application-packages> 复制代码
添加自定义依赖后,问题解决
问题出现是因为weblogic中包含了 valid相关的jar包,在启动项目时,未正确加载程序所包含正确版本的jar,导致部分注解校验失效
对于weblogic内置jar包与项目包冲突的问题,有两种途径解决 复制代码
1.在weblogic.xml中设置prefer-web-inf-classes,即优先加载web应用下的类
<weblogic-web-app> <container-descriptor> <prefer-web-inf-classes>true</prefer-web-inf-classes> </container-descriptor> </weblogic-web-app> 复制代码
2.设置prefer-web-inf-classes为false,并指定需要使用应用中的jar包:
<weblogic-web-app> <container-descriptor> <prefer-web-inf-classes>false</prefer-web-inf-classes> <prefer-application-packages> <package-name>org.apache.commons.*</package-name> </prefer-application-packages> </container-descriptor> </weblogic-web-app> 复制代码