java 关于用socket发送soap报文的问题

最近做个项目 用socket实现soap协议传输,
我这里做了个socket服务端,接收客户端发送的soap请求经过处理后返回响应soap报文,
结果对方收到我的响应报文,有时候出现报文不完整的问题,有时候接收到前半部分,有时候是后半部分,有时候是完整的,
我想问下这种情况是应用问题还是网络问题,客户端的代码我不能修改的是别的厂商做的,我问他们怎么判断接收了 一条完整的报文,他们回答是根据报文头和报文尾来判断的,

我是用apache——mina框架来做socket服务端的 。

3个回答

就是根据报文头尾判断的,应该是网络问题吧。你可以往客户端发10000个包,看看丢包严重不,如果严重几乎就是网络问题了。

呵呵,这种问题我也遇到过,我是这样解决的
[code="java"]client = new Socket("10.140.66.166", 9400);
client.setSoTimeout(10000);[/code]
你也可以试一下。

Long__yuan
Long__yuan client.setSoTimeout(10000); 这是设置读取内容的超时
5 年多之前 回复

如果丢包严重,你要考虑重发机制

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问