我有一个 WSDL 文件(web-service 已经由 .NET 编写),我可以通过它的工具在 IntelliJ IDEA 7.0.4 中生成 java web-service 客户端代理类和代码。 Web 服务有一个 soap 请求 header ,但我在自动生成的 Java 代理类和代码中看不到任何属性或方法来设置请求 header 。 (但是当我使用 Visual Studio 2008 为 C# 生成代理类时,在 Web 服务代理类中创建了一个对象作为 header ,因此我可以简单地设置填充它)
我应该用 Java 做什么?
最佳答案
我不确定 IntelliJ 使用什么来生成代理类。也许是轴?
我确实知道,如果您想使用 CXF 执行此操作,那么在定义客户端时,最好的方法是创建一个实现 SoapInterceptor 的类,然后将其设置为出站拦截器。
public void handleMessage(SoapMessage message) throws Fault {
message.getHeaders().add(QName.valueOf("foo"), "bar");
}
但最终,如果您不知道您的 IDE 使用的库,您将很难找到处理此问题的正确方法。
关于java - 如何在 Java 中发送 SOAP 请求头?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3960132/