我不明白为什么制作一个简单的 Web 服务客户端几乎成了一门科学,在某处发布肥皂 xml 并接收结果。
目标很简单: - 将 POJO(jax-ws 注释对象)编组为 Soap XML - 将 Soap XML 发送到服务端点 - 接收 Soap XML 响应 - 将 Soap XML 解组为 POJO
我没有找到任何干净的 java 内置解决方案: - SOAPMessage 不处理编组 - JAXB 的命名空间有问题(如果没有在 pojo 注释中严格定义) - 使用 ws-import 为简单的调用制作大量文件
尽管我制作了自己的soapclient来做到这一点(在响应时破解一些带有名称空间和前缀的SAX节点)并使用Http(s)UrlConnection发送请求,但我相信还有一些干净的解决方案可以做到这一点(实际上没有WSDL)
有什么建议(不需要 3rd 方库)?