项目实际遇到的问题:在启动Javaweb项目,可以打印出正常的启动日志,但在spring配置注入bean时启动一直会卡住,也不报错。出现这种情况,最有可能的原因就是spring相关的配置文件配置错误,需要检查相关的配置文件。
解决方案:经过走查有关dubbo配置文件,发现在dubbo服务消费端有一行关于过滤器的配置,如下:
经过查资料,spring配置文件里加入这个配置,就要实现过滤器。如果不想实现过滤器,保留spring配置就会提示上文中的错误。而在dubbo服务的提供者有关配置中没有查找到有关<dubbo:provider filter="***Filter"></dubbo:provider>的配置,若要在服务提供者中增加上述配置,还需自定义一个实现dubbo.rpc.Filter过滤器的类,并将该类增加到META-INF/dubbo/com.alibaba.dubbo.rpc.Filter 文件的配置中。
由于项目已经在生产环境稳定运行2年多了,贸然新增配置极可能会产生不可预测的风险,故我采取了简单暴力的方式,直接将dubbo服务消费者中的过滤器配置注释掉。
祈求测试人员在回归测试时,尽量做到全流程、多角度回归,将问题暴露在测试环境。