我使用apache CFX wsdl2java工具将wsdl转换为java类。一般设置工作正常,但我遇到了这个命令的问题:
-p [ wsdl-namespace= ] PackageName
文档说:
指定要用于生成的代码的零个或多个包名称。 (可选)指定包名称映射的WSDL名称空间。
但是,它只适用于我的单个包装。下面的第一个命令有效,第二个和第三个命令不起作用。我搞砸了一些语法吗?
1)-p namespace1 = com.name.webservices http://url-to-my-wsdl.com
2)-p namespace1 = com.name.webservices com.name.common http://url-to-my-wsdl.com
3)-p namespace1 = com.name.webservices namespaceforcommonobjects = com.name.common http://url-to-my-wsdl.com
在第二个例子中,我尝试将所有内容从namespace1放入包webservices,其余所有内容放入包中。
在第三个例子中,我试图将namespace1中的所有内容放入包webservices,以及从namespaceforcommonbojects到包常见的所有内容。
我一直在我的控制台中得到一个例外:"未发现的争论"然后是我的wlld的url,除了示例1,它工作正常但没有我想要的输出......)。
答案 0 :(得分:1)
您需要在每个命名空间之前添加-p switch以打包映射。
-p namespace1 = com.name.webservices -p namespaceforcommonobjects = com.name.common http://url-to-my-wsdl.com