WebLogic部署Spring Boot应用后无法找到REST接口路径求助
解决WebLogic部署Spring Boot应用后REST接口访问路径问题
1. 先纠正main方法日志无效的问题
WebLogic作为Java EE容器,部署Spring Boot WAR包时不会执行main方法,你在main里写的日志代码根本不会运行,别再盯着这块排查。要查看应用启动信息,直接看WebLogic控制台的部署日志或服务器日志。
2. 确定WebLogic的上下文根(Context Root)
登录WebLogic控制台,找到你的部署应用,查看它的上下文根配置(也就是你截图里显示的路径前缀)。这个值是接口路径的第一个部分,比如上下文根设为/kpi-app,所有接口都要以这个开头。
3. 拼接完整的REST接口路径
完整访问路径的格式为:
http://<WebLogic服务器IP>:<端口>/<上下文根>/<接口注解里的路径>
举个实际例子:
- 假设WebLogic服务器地址是
192.168.1.100,端口用默认的7001 - 上下文根是
/kpi - 你的接口注解是
@GetMapping("/v1/accounts") - 那么完整访问路径就是:
http://192.168.1.100:7001/kpi/v1/accounts
4. 其他排查要点
- 检查Spring Boot的Servlet初始化类:如果项目是WAR包,应该有继承
SpringBootServletInitializer的类,确保它正确重写了configure方法,没有自定义Servlet映射路径(默认/*即可)。 - 确认Controller被Spring扫描:主应用类
KpiApplication的包要包含AccountController所在的包,或者在主类上添加@ComponentScan(basePackages = "你的controller所在包路径"),否则接口不会被注册。 - 查看WebLogic的服务器日志:搜索
RequestMapping关键词,看Spring是否成功注册了你的/v1/accounts接口,这能直接确认接口是否存在。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

