系统出错原因为修改web.xml 没有生效,如果你在tomcat下面开发的工程不是每次拿到was上重新安装,而只是替换其中一些文件的话(这些文件指的是你应用工程WEB-INF文件夹下面的文件,比如web.xml文件),那就要千万注意,需要修改两个web.xml,一为项目下的web.xml,二为config/cells 文件夹下,然后依次找到你的应用工程文件夹的WEB-INF文件夹的web.xml
其实这个问题 我是知道的 但是当时想到没有做这个事情 结果造成了系统问题,具体情况是这样的:
我做的一个项目涉及与支付平台进行交互,也就是业务流程最后操作需要进行网银支付,由于涉及到钱的问题,我测试时非常重视,生怕出问题,所以在测试环境用银联提供的测试账号测了好多次,确保没问题后,才更新的生产环境。
更新生产环境后,由于测试需要真实进行支付,所以我没有进行测试。直到系统对账时发现银行比公司财务数据多出了一些金额,我才发现该问题,于是今天下午一直到现在都在研究这个问题,根据对账条目银行在两个月前收了多余的款项,我根据交易日期找到了系统当时的订单信息,状态是未支付,但是银行确收到了钱,如果银行对账条目没有问题的话,只能是系统的问题了,于是我看了又看,觉得程序逻辑都没有问题。最后想到是不是银联返回数据时找不到url,试了下访问我们的url(是一个servlet),结果不能访问,报出404找不到页面。事情终于查清楚了,剩下的就是维护历史数据以及和客户解释了,哎。
总结一下:
1、做项目如果生产环境是was,那么测试环境也需要是was,反正就是生产和测试环境web中间件要保持一致,小版本以及操作系统、jdk也要一致,这样才能最小化风险。
2、想尽一切办法进行生产环境测试,例如在页面访问servlet地址等