繁体   English   中英

如何在Java中发送SOAP请求标头?

[英]How to send SOAP request header in Java?

我有一个WSDL文件(Web服务由.NET编写),我可以通过其工具在IntelliJ IDEA 7.0.4中生成java web服务客户端代理类和代码。 Web服务有一个soap请求标头,但我看不到自动生成的Java代理类和代码中的任何属性或方法来设置请求标头。 (但是当我使用Visual Studio 2008为C#生成代理类时,会在Web服务代理类中创建一个对象作为标题,因此我可以设置简单填充它)

我该怎么做Java?

我不确定IntelliJ使用什么来生成代理类。 AXIS可能吗?

知道 ,如果你想与CXF要做到这一点,当你定义你的客户,最好的办法是创建一个实现SoapInterceptor然后将其设置为出拦截器的类。

public void handleMessage(SoapMessage message) throws Fault {
           message.getHeaders().add(QName.valueOf("foo"), "bar");
   }

但最终,如果您不知道IDE正在使用的库,那么您很难找到正确的方法来处理这个问题。

可以通过jdk中包含的wsimport工具创建完整Web服务客户端的所有类。

http://download.oracle.com/javase/6/docs/technotes/tools/share/wsimport.html

您只需要指定wsdl地址。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM