2.8 KiB
2.8 KiB
REV004 prestorage BPM 部署后集成检查(2026-04-24)
环境
- 主机:
root@192.168.10.130 - 数据库:
jdbc:postgresql://192.168.10.130:5436/sw_system - 参考配置:
sw-business/sw-business-server/src/main/resources/application-dev.yamlsw-gateway/src/main/resources/application-dev.yaml
检查目标
验证部署后的 REV004 预存调整 BPM 接口是否可通过网关/业务服务完成真实 HTTP 集成测试。
运行态探测
容器状态
sw-gateway: Upsw-module-bpm: Upsw-business-server:Up (health: starting),且RestartCount=7
端口
- 网关:
48080 - 业务服务映射:
48081 -> container 48090
HTTP 实测
1. 网关健康
GET http://127.0.0.1:48080/actuator/health
- 返回:
{"status":"UP"} - 结果:PASS
2. 网关预存接口
GET /admin-api/business/accounting-adjust/prestorage-page
- 未登录:
401 账号未登录 - 使用
Authorization: emsoft1仍返回401 - 结论:网关侧不支持直接使用 business 服务的 mock token 调测
3. 业务服务预存接口
GET http://127.0.0.1:48081/admin-api/business/accounting-adjust/prestorage-page?pageNo=1&pageSize=1
Authorization: emsoft1, tenant-id:0:返回500 系统异常Authorization: emsoft1, tenant-id:1:返回404 请求地址不存在
日志根因
docker logs sw-business-server 明确显示:
- Spring 启动失败点:
Error creating bean with name 'accountingAdjustActionController': Injection of resource dependencies failed - 最终失败原因:
A component required a bean of type 'cn.com.emsoft.sw.module.bpm.api.task.BpmProcessInstanceApi' that could not be found.
结论
当前 不是接口联调数据问题,而是 部署后的 business 服务启动失败 / controller 未成功装配,因此无法继续完成真实接口集成测试。
影响判断
本次预存 BPM 变更不仅修改了 business 模块,也修改了 BPM 相关模块:
sw-module-bpm-api/.../BpmProcessInstanceApi.javasw-module-bpm-api/.../dto/BpmProcessInstanceCancelReqDTO.javasw-module-bpm-server/.../BpmProcessInstanceApiImpl.javasw-module-bpm-server/.../RpcConfiguration.javasw-module-bpm-server/.../BpmPrestorageAdjustStatusListener.java
因此若仅更新 sw-business-server,或 sw-module-bpm 未按同版本一并部署,就会出现当前缺少 BpmProcessInstanceApi Bean 的启动失败。
建议下一步
- 同版本重新部署:
sw-business-serversw-module-bpm
- 部署后先验证:
sw-business-server健康状态变为 healthy / restart count 停止增长- 业务服务日志不再出现
BpmProcessInstanceApi缺失
- 然后再执行预存 BPM 真实 HTTP 集成测试:
- save 即提审
- page/detail/process 查询
- revoke
- BPM 审批回写链路