【问题标题】:wsclient.jar created by wsimport could not be usedwsimport 创建的 wsclient.jar 无法使用
【发布时间】:2014-04-21 07:22:48
【问题描述】:

我有 wsdl 文件,可以通过输入以下命令创建 client.jar。

wsimport -clientjar wsclient.jar mywsdl.wsdl.

但是当我将此 jar 文件添加到 eclipse 的类路径文件夹中时,eclipse 不会检测到 jar 文件中的类。 另一方面,当我只创建 .class'es 文件并将此文件夹指向 eclipse 上的类路径文件夹时,eclipse 会检测到它。

再一次尝试我以某种方式创建了 .jar api 文件,当我将创建的工件类移动到这个 jar 文件中时,eclipse 也会检测到这些类。

这些尝试向我表明,由 wsimport -clientjar 创建的 jar 文件在我看来不能正常工作,至少对于这个 wsdl 文件是这样。实际上,我认为 wsimport 不起作用。

我错过了什么?

【问题讨论】:

标签: java eclipse web-services wsimport


【解决方案1】:

我认为问题在于-clientjar 选项没有达到您的预期。

-clientjar 选项的目的是将 WSDL 元数据嵌入到您的构建中,以便它可以成为消费者应用程序的 jar 文件的一部分。这样,Web 服务使用者不必在每次初始化时都下载 WSDL,而是可以使用与应用程序本身捆绑在一起的 WSDL。

当您使用-clientjar 选项时,有several things happening。是的,您将获得一个名为 wsclient.jar 的文件,如您的示例所示,但最重要的是它会生成 META-INF/wsdl/<servicename>.wsdl 文件,并且该文件在生成的 Java 代码中被引用,可以使用。

我建议看看生成的 Java 代码有无 -clientjar 选项,然后你就会明白我的意思了。

更多信息请参见link

【讨论】:

    猜你喜欢
    • 2013-11-12
    • 2020-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-24
    相关资源
    最近更新 更多