Jakarta ee 在解析JAX-WS客户机中的传入web服务响应之前,如何修改该响应?

Jakarta ee 在解析JAX-WS客户机中的传入web服务响应之前,如何修改该响应?,jakarta-ee,jax-ws,Jakarta Ee,Jax Ws,在一个项目中,我们必须调用一个已经存在多年且无法修改的web服务。此web服务包含一个bug:当它发送对SOAP请求的响应时,响应并不总是包含必需的和元素 在JAX-WS SOAP解析器解析消息之前,我们如何拦截消息并插入缺失的部分?我看到这个问题仍然没有答案,因此我将提供一些关于如何解决问题的见解 事实上,JAX-WS不提供任何支持来做这种事情。也许可以研究实现的细节并在那里添加一个钩子,但是您的解决方案不再可移植到其他web服务容器实现中 我们的最终解决方案是切换到Commons HTTP客

在一个项目中,我们必须调用一个已经存在多年且无法修改的web服务。此web服务包含一个bug:当它发送对SOAP请求的响应时,响应并不总是包含必需的和元素


在JAX-WS SOAP解析器解析消息之前,我们如何拦截消息并插入缺失的部分?

我看到这个问题仍然没有答案,因此我将提供一些关于如何解决问题的见解

事实上,JAX-WS不提供任何支持来做这种事情。也许可以研究实现的细节并在那里添加一个钩子,但是您的解决方案不再可移植到其他web服务容器实现中

我们的最终解决方案是切换到Commons HTTP客户端来发送消息并接收响应。消息本身是使用普通JAXB创建和解析的。SOAP头是手动添加和删除的