11月
21
背景
某项目接口采用jersey开发,部署在weblogic上,升级JDK至jdk1.7.0_191后所有接口无法访问,返回404 Not Found。
测试
首先怀疑是JDK升级后部分java类初始化失败导致404,但重启服务器,重启应用,重新部署应用都未报错,说明应用启动是成功的,一开始也没怀疑到jersey框架上,因此走了很多弯路,这里就不赘述。到后面所有的猜测都验证后,还是没有解决,于是决定本地用jersey写一个最简单的接口部署上去看下结果。
- 接口部署到线上weblogic访问404
- 接口部署到本地tomcat,访问正常
- 接口部署到其他weblogic环境,访问正常,jdk版本为
jdk1.7.0_80
- 正常的环境将jdk切换至
jdk1.8.0_171
,访问404
基于以上实验可以看出,**jersey在weblogic环境下,高版本的jdk会报404,tomcat没有这问题**,确定了问题后排查方向就比较清楚,就是搞清楚为什么高版本的jdk会报错。
Read the rest of this entry