2016-03-29 20 views
1

我有一个奇怪的问题:我有一个中央Web服务客户端,它调用数千个嵌入式Web服务服务器上的Web方法。我们最近发现Web服务服务器有一个错误,如果XML请求的长度正好是0x4000,就会导致服务器崩溃。这种情况不常发生,但每天都会发生数千种设备,使整个解决方案不稳定。如何修改由JAXWS生成的WebMethod请求的XML

中期解决方案是修复服务器上的错误,但有数千个固件需要刷新这个解决方案,这在几天内就不易部署。

短期解决方案是修改XML请求,如果它正好是0x4000长,并用空格字符或类似的东西填充它。因此,XML由JAX-WS生成(所有类都是从Web服务器制造商的WSDL生成的),我只需调用一个用@WebService注解的接口,其中注释的方法为@WebMethod, @WebResult, ...

仅供参考:这是JAX-WS版本。

/** 
* This class was generated by the JAX-WS RI. 
* JAX-WS RI 2.1.3-hudson-390- 
* Generated source version: 2.1 
* 
*/ 

我的问题是我该如何修改这个调用生成的XML来检查它的长度并在需要时修改它?

回答