gpt4 book ai didi

java - 将自定义命名空间定义为从 wsdl - Axis2 eclipse 生成的文件的包映射

转载 作者:搜寻专家 更新时间:2023-11-01 01:38:24 27 4
gpt4 key购买 nike

我在 Eclipse 中有 wsdl 文件,我正在通过 axis2 插件生成客户端。

正在将文件生成到源文件夹中名为 com.mycompany.stub 的包中。

我想将生成的源文件的包名改为com.mycompany.ws.workflow

在wsdl文件的什么地方可以做?

最佳答案

您实际上不必修改 wsdl 即可实现此目的。如果您使用的是 Eclipse Helios Web 服务客户端向导,则在第二步(可选)中为生成的源指定输出文件夹,有一个复选框“为命名空间定义自定义映射以打包”。选择该框,然后在下一个表单中您可以定义自定义包映射。

编辑 1:

链接到 Official Documentation

编辑 2:

WSDL

<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://mycompany.com/MyService.wsdl"
xmlns:scm="http://mycompany.com/MyService.xsd"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
targetNamespace="http://mycompany.com/MyService.wsdl">
...

对于如上所示的简单 wsdl,自定义映射如下所示。

http://mycompany.com/MyService.wsdl - com.mycompany.ws.workflowhttp://mycompany.com/MyService.xsd - com.mycompany.ws.workflow.schema

您可以单击“添加”并输入 namespace 和包名称,或者您可以将映射存储在属性文件中,然后单击“导入”一次添加。我更喜欢属性文件。如果您要使用属性文件,您还必须转义 namespace URL 和其他特殊字符。您的属性文件应类似于以下内容。

nsmapping.properties

http\://mycompany.com/MyService.wsdl=com.mycompany.ws.workflowhttp\://mycompany.com/MyService.xsd=com.mycompany.ws.workflow.schema

摘自官方文档。

The content of the properties file must be of the format namespace=package. You will need to escape some special characters in the properties files. For example http://someNamespace=somePackage should be http://someNamespace=somePackage. Otherwise, the colon (:) would be treated as delimiter resulting in trying to map http to //someNamespace=somePackage.

关于java - 将自定义命名空间定义为从 wsdl - Axis2 eclipse 生成的文件的包映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4884634/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com