[英]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.