gpt4 book ai didi

java - Eclipse java JAX-RPC Web服务导入生成接口(interface)而不是类

转载 作者:行者123 更新时间:2023-12-01 11:17:48 24 4
gpt4 key购买 nike

因此,当尝试实例化该类的对象时,错误为

无法实例化类型

enter image description here

有谁知道为什么 Eclipse 会生成接口(interface)而不是类?该 Web 服务最初是用 VB.Net 编写的,但可以按照给出的简单示例 here 进行复制。

  1. 启动 Eclipse 项目。
  2. 添加新的 Web 服务客户端 http://www.webservicex.net/CurrencyConvertor.asmx?WSDL
  3. 编写代码...

    package test;

    import NET.webserviceX.www.CurrencyConvertor;
    import NET.webserviceX.www.CurrencyConvertorSoap;
    import NET.webserviceX.www.Currency;

    public class Convert
    {
    public static void main(String[] args)
    {
    CurrencyConvertor cc = new CurrencyConvertor();
    // Gets an implementation of the interface we can use
    // to contact the web service.
    CurrencyConvertorSoap ccs = cc.getCurrencyConvertorSoap();

    // Send the SOAP request to the server and get the result from the web service
    double conversionRate = ccs.conversionRate(Currency.GBP, Currency.USD);
    System.out.println("£1 is worth $" + conversionRate );
    }
    }

发生的情况是CurrencyConverter.java作为接口(interface)导入,因此无法实例化。

它应该作为一个类导入。为什么不是呢?

enter image description here

最佳答案

我无法重现您的 pb,但如果您使用 java 1.6+,那么您可以使用 JDK 中提供的 wsimport 工具生成您的类型。

在终端中使用以下命令:

Windows:

"C:\Program Files\Java\jdk1.6.0_45\bin\wsimport.exe" -keep http://www.webservicex.net/CurrencyConvertor.asmx?WSDL

Linux:

pathToJDK/bin/wsimport -keep http://www.webservicex.net/CurrencyConvertor.asmx?WSDL

您会看到一些警告,忽略它们即可。然后你会得到你的CurrencyConvertor类。

我已经在我的机器上尝试过了,它有效!

--2015 年 7 月 27 日更新---

我看到您正在尝试使用wscompile。事实上,这个工具很早以前就被wsimport取代了。参见oracle文档:

http://docs.oracle.com/cd/E17802_01/webservices/webservices/docs/2.0/jaxws/UsersGuide.html

第 1.1.2 部分完全动态运行时

It should also be noted that wscompile has been replaced by two new tools: wsimport and wsgen. wsimport is used for importing WSDLs and generating the portable artifacts.

关于java - Eclipse java JAX-RPC Web服务导入生成接口(interface)而不是类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31589735/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com