如何使用Eclipse将WSDL转换为Java类?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用Eclipse将WSDL转换为Java类?相关的知识,希望对你有一定的参考价值。

我有一个WSDL文件(或者更确切地说,它的URL)。我需要将它转换为Java类。我还需要为它描述的Web服务提供测试。我是Web服务的新手,有人可以告诉我如何将WSDL转换为Java吗?

我使用Eclipse JEE Kepler。也许有一些插件可以自动执行此操作?

答案

在Eclipse Kepler中,生成Web Service Client类非常容易,您可以通过以下步骤来实现。

右键单击任何项​​目 - >创建新的其他 - > Web服务 - > Web服务客户端 - >然后将wsdl URL(或位置)粘贴到服务定义 - >下一步 - >完成

您将看到生成的类位于src文件夹中。

注意:如果没有eclipse,您也可以使用随JDK提供的wsimport命令实用程序从wsdl文件生成客户端类。

请参阅此链接Create Web service client using wsdl

另一答案

您需要在命令行中执行下一步:

wsimport -keep -s (name of folder where you want to store generated code) urlToWsdl

例如:

wsimport -keep -s C:// NewFolder https://www.blablabla.com

另一答案

我不建议使用Eclipse工具生成WS Client,因为我对它有不好的经验:

我不确定这是否重要,但我不得不使用.NET编写的WS。当我使用Eclipse的“新Web服务客户端”工具时,它使用Axis (version 1.x)生成Java类,您可以检查它是否旧(2006年的最新版本)。有a newer version虽然有一些重大的变化,但Eclipse不使用它。

为什么Axis的旧版本很重要你会说什么?因为在使用OpenJDK时,您可能会遇到一些问题,比如OpenJDK中的missing cryptography algorithms,它们出现在Oracle的JDK中,而像这样的库依赖于它们。

所以我只是使用了wsimport工具并结束了我的头痛。

另一答案

选项包括:

在接听电话之前,请仔细阅读以上链接

另一答案

开放大学的Eclipse团队准备了以下文档,其中包括使用测试创建代理类。它可能就是你要找的东西。

http://www.eclipse.org/webtools/community/education/web/t320/Generating_a_client_from_WSDL.pdf

一切都包含在Dynamic Web Project模板中。

在项目中创建Web服务客户端。这将启动一个向导,您可以指出一个wsdl url并为您创建带有测试的客户端。

用于此任务的用户指南(针对靛蓝)可在http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.jst.ws.cxf.doc.user%2Ftasks%2Fcreate_client.html找到。

另一答案

在Windows中使用命令提示符,您可以使用以下命令来获取类文件。

wsimport "complete file path of your .wsdl file"
example : wsimport C:Usersschemascommyprofilemyprofile2019.wsdl

如果你想生成源代码,你应该使用下面的命令。

wsimport -keep -s src "complete file path of your .wsdl file"
example : wsimport -keep -s src C:Usersschemascommyprofilemyprofile2019.wsdl

注意:这里“-s”表示源目录,“src”是应该在执行此命令之前创建的文件夹的名称。 Wsimport是一个与JAVA SE捆绑在一起的工具,不需要单独下载。

以上是关于如何使用Eclipse将WSDL转换为Java类?的主要内容,如果未能解决你的问题,请参考以下文章

java 如何生成wsdl文件

如何将swagger JSON对象转换为Java类对象

如何将 Eclipse 运行配置转换为 .bat 文件

eclipse上怎么使用wsdl2java工具生成webservice客户端

Eclipse 插件:如何将“java.lang.string”转换为 IEditorInput?

如何在Hybris中为WSDL文件生成Java类?