7

我正在从多个 wsdl 文件生成 java 类。作品。但是,我想在 @WebServiceClient 注释中提供适当的 wsdl 文件。在属性 wsdlLocation 中,我希望目录路径与不同的文件名连接。例如 /myDir/myWsdl-1.wsdl 用于第一个 web 服务。但是,wsdlLocation 仅填充有“/myDir” - 没有服务名称。如何为每个 wsdl 提供该名称?

@WebServiceClient(name = "myService", targetNamespace = "http://mycompany.com/services/", wsdlLocation = "/myDir")

以下是我的指示:

<wsdlLocation>/myDir</wsdlLocation>
<wsdlDirectory>src/main/resources/myDir</wsdlDirectory>
<wsdlFiles>
    <wsdlFile>myWsdl-1.wsdl</wsdlFile>
    <wsdlFile>myWsdl-2.wsdl</wsdlFile>
    <wsdlFile>myWsdl-3.wsdl</wsdlFile>
    <wsdlFile>myWsdl-4.wsdl</wsdlFile>
</wsdlFiles>

什么引起了我的注意?

感谢您的任何提示。费德勒。

4

2 回答 2

8

好的。可以使用后跟斜杠和星号的路径来为多个 WSDL 文件生成类。例如

<wsdlLocation>/myDir/*</wsdlLocation>

但是,在这种情况下,您不能应用绑定。

<bindingDirectory>src/main/binding</bindingDirectory>

如果您需要为每个 WSDL 应用绑定,则必须重复插件的执行块或应用 wsdl-inline-binding。请参阅此讨论以了解 inline-binding

希望这对其他人也有帮助。

于 2013-06-25T11:52:58.300 回答
0

我认为您缺少<wsdlFiles>包含元素列表的<wsdlFile>元素。它应该是这样的:

<wsdlDirectory>src/main/resources/myDir</wsdlDirectory>
<wsdlFiles>
    <wsdlFile>myWsdl-1.wsdl</wsdlFile>
    <wsdlFile>myWsdl-2.wsdl</wsdlFile>
    <wsdlFile>myWsdl-3.wsdl</wsdlFile>
    <wsdlFile>myWsdl-4.wsdl</wsdlFile>
</wsdlFiles>
于 2013-06-25T12:24:31.377 回答