繁体   English   中英

带有多个wsdl文件的JAX-WS wsimport

[英]JAX-WS wsimport with multiple wsdl files

我正在尝试编写一些Web服务客户端。 我已经看到了许多wsdl,所有这些都引用了许多常见的数据结构。

我想使用wsimport来生成一个Web服务客户端jar文件。 我正在运行的命令是沿着的

wsimport src/*wsdl -d target

首先,这看起来是否合理?

如果我运行wsimport src/srv1.wsdl -d target我会看到似乎是一组合理的java类。 同样,如果我运行wsimport src/srv2.wsdl -d target我也会得到一组合理的类。

但是,如果我运行wsimport -d targey src/srv1.wsdl src/srv2.wsdl我生成了大量的类,但是没有创建srv2的Service类。 我期望找到它的包在那里,但它是空的。

我正在使用作为JDK6一部分的基本wsimport

我在这里做错了吗?

戴夫

我在当前项目中使用wsimport为wcf webservice导入wsdl文件。 我不知道您是否可以在单个wsimport语句中指定要导入的多个wsdl文件,但是,您可以使用以下内容单独处理每个wsdl文件:

wsimport -d <directory-for-generated-classes> <wsdl-file-location>

这里-d用于指定要放置已编译类的目录(替换为要放置已编译类的目录的路径。如果未指定目录,则放置已编译的类在当前的工作目录中)

如果你想生成源java文件,那么你可以使用类似的东西:

wsimport -d <directory-for-generated-classes> -s <directory-for-generated-source> <wsdl-file-location>

-s用于指定要放置生成的源java文件的目录。

如果要生成包含特定wsdl文件的所有已编译类文件的jar文件,则可以使用以下内容:

wsimport -d <directory-for-jar-file> -clientjar jarfilename.jar <wsdl-file-location>

这会将jar文件放在指定的目录中,但不会保留生成的已编译的类文件。 所有类文件都打包在jar中。

您可以通过发出命令来查看其他选项:

wsimport -help

关于处理多个wsdl文件,您可以创建一个批处理文件,该文件处理在每行中使用单个wsimport语句指定的多个wsdl文件。

希望能帮助到你 :)

暂无
暂无

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

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