使用SOAP 1.2的WSDL时生成Web服务客户端

时间:2011-08-12 16:53:59

标签: java java-ee soap wsdl

我有一个WSDL文件,我想从中生成一个Web服务客户端。问题是我得到的WSDL使用SOAP 1.2:

<wsdl:definitions xmlns:wsoap12="http://schemas.xmlsoap.org/wsdl/soap12/" [...]>

<wsoap12:operation soapAction="[...]" />

当我尝试从中生成客户端时,我只获得请求/响应Java bean。

如果我另一方面编辑WSDL以使用SOAP 1.1(并且没有 else),那么一切都会很好地生成,除了它将发送SOAP 1.1请求而不是SOAP 1.2,服务器将对我大吼大叫使用1.2而不是......

我通过右键单击WSDL并选择“Web服务&gt;生成客户端”,在Windows 7上使用Spring Tool Suite生成代码。当我们使用SOAP 1.1时,所有这些都像魅力一样。

我还尝试使用maven插件wsimport的{​​{1}}生成它无济于事;它也只生成bean而不是代理。

有没有办法让它发挥作用?或者有什么方法可以修改生成的jaxws-maven-plugin类,以便使用SOAP 1.2而不是1.1?

1 个答案:

答案 0 :(得分:1)

你可能想看看Metro。这应该支持Soap 1.2。

有人在此处使用Metro发布了对客户端gen的引用:Generating Metro Client Using Local WSDL File

Metro wsimport选项: http://metro.java.net/1.2/docs/wsimport.html