一次webservice查错

先大概说下情况,使用的oracle service bus做的webservice,应用程序2套部署在不同的weblogic上,各省向国家传数据OK,国家向各省传数据原来也OK,突然某一天,其中3个省反映收不到数据,网络组坚称没有调过网络配置,怎么办,只能自己找原因了,
首先通过ping检查网络是正常的。
然后自己写了个简单的例子部署到服务器端,直接调3个问题省的webservice发送数据,OK,正常。
进行抓包,如图


然后抓包OSB的包,发现只有tcp发出请求后没有应答

图中ip与上面的不一致,因为当时没截图,此截图是后补的。
tcp发出请求后,没有应答,而实际对方的端口是可以正常访问的,分析可能的原因,被防火墙拦截了,可能有以下两种情况:
1.请求发出后被内网防火墙拦截了
2.请求发出后被对方防火墙拦截了

然后找对方省的信息中心,查验拦截日志没有发现对应的国家端的ip的报文,那么问题就可能出在我们这边的防火墙上了,再找到网络组,理直气壮的让他们查程序,ip为92.5的果然差多了,几千次请求被拦截,原因是oracle service bus将数据放到<![CDATA[]]>>中,但是这里生成的却是<![CDATA[<![CDATA[]]]]>>这样的,而]]]>>触发的防火墙的规则导致request被拦截了。剩下的问题就是找到oracle service bus的问题了,这个问题的根本在于oracle service bus拼接报文的问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值