Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
来自java桌面应用程序的Web服务_Java_Eclipse_Web Services_Desktop Application - Fatal编程技术网

来自java桌面应用程序的Web服务

来自java桌面应用程序的Web服务,java,eclipse,web-services,desktop-application,Java,Eclipse,Web Services,Desktop Application,我正在尝试从一个桌面应用程序中使用web服务,我在中使用了教程,并编写了此代码以连接到web服务服务器项目 public static void main(String[] args) { float f1 = 60.5F; float c1 = 0; ConverterProxy s = new ConverterProxy(); try { c1 = s.farenheitToCelsius(f1); } catch (Remote

我正在尝试从一个桌面应用程序中使用web服务,我在中使用了教程,并编写了此代码以连接到web服务服务器项目

public static void main(String[] args) {

    float f1 = 60.5F;
    float c1 = 0;
    ConverterProxy s = new ConverterProxy();

    try {
        c1 = s.farenheitToCelsius(f1);
    } catch (RemoteException e) {
        e.printStackTrace();
    }

    System.out.println("Output: " + c1);

}
它确实起了作用,我需要一些解释其他客户端类做什么的地方

我需要知道课程是什么

转换器,转换器代理,转换器服务,转换器服务定位器,转换器OAPBindingStub

我们需要他们做什么


提前感谢

您可以查看代码,但它有点神秘。最主要的是,生成了一个类,将web服务包装为Java对象。然后,服务的操作成为此类中的方法。正如您所发现的,您可以使用它与web服务交互

其余的类处理Java类和web服务之间的管道。它们将您提供的参数转换为(XML方言)请求,将其发送到web服务,还接收响应并将其转换回Java程序可以理解的数据


就像使用方法/操作生成的第一个类包装web服务行为一样,其他类包装用于调用web服务的管道/通信协议。

您可以查看代码,但它有点神秘。最主要的是,生成了一个类,将web服务包装为Java对象。然后,服务的操作成为此类中的方法。正如您所发现的,您可以使用它与web服务交互

其余的类处理Java类和web服务之间的管道。它们将您提供的参数转换为(XML方言)请求,将其发送到web服务,还接收响应并将其转换回Java程序可以理解的数据


正如使用方法/操作生成的第一个类包装了web服务行为一样,其他类包装了用于调用web服务的管道/通信协议。

这是一个猜测,因为我没有使用您的教程,但这些类中有很多遵循类似的模式

转换器很可能是一个接口,它定义了服务将提供的方法

ConverterProxy可能是转换器接口的客户端暴露。它实际上并不做这项工作,而是将转换器中的方法打包用于网络传输

ConverterService可能是转换器接口的服务器端公开。它从ConverterProxy调用中获取网络包,解压缩它们,执行转换,并将应答发送回网络连接另一端的ConverterProxy。ConverterProxy随后将解压缩网络消息,取出结果,并将其作为答案返回

ConverterServiceLocator可能是一个与查找ConverterService所需的代码有关的类。有时为了保持一定程度的灵活性,在编译时不指定ConverterService的位置,ConverterService会在启动时告诉中央注册中心(通常是UDDI)它们在哪里。然后,ConverterServiceLocator将(当您尝试使用ConverterProxy绑定到ConverterService时)查询中心注册表,并提供合适ConverterService的位置或直接提供ConverterService(我不记得它是否为您获取服务)

ConverterSoapBindingStub是一个类,它提供将ConverterProxy请求转换为XML请求和将ConverterProxy回复转换为XML回复所需的(隐藏的)Java到SOAP XML编组/解编组


同样,我无法访问您的源代码或教程(目前我没有时间查看);但是,这些都是基于非常常见的命名约定的有根据的猜测。

这有点猜测,因为我没有使用您的教程,但是这些类中的很多都遵循类似的模式

转换器很可能是一个接口,它定义了服务将提供的方法

ConverterProxy可能是转换器接口的客户端暴露。它实际上并不做这项工作,而是将转换器中的方法打包用于网络传输

ConverterService可能是转换器接口的服务器端公开。它从ConverterProxy调用中获取网络包,解压缩它们,执行转换,并将应答发送回网络连接另一端的ConverterProxy。ConverterProxy随后将解压缩网络消息,取出结果,并将其作为答案返回

ConverterServiceLocator可能是一个与查找ConverterService所需的代码有关的类。有时为了保持一定程度的灵活性,在编译时不指定ConverterService的位置,ConverterService会在启动时告诉中央注册中心(通常是UDDI)它们在哪里。然后,ConverterServiceLocator将(当您尝试使用ConverterProxy绑定到ConverterService时)查询中心注册表,并提供合适ConverterService的位置或直接提供ConverterService(我不记得它是否为您获取服务)

ConverterSoapBindingStub是一个类,它提供将ConverterProxy请求转换为XML请求和将ConverterProxy回复转换为XML回复所需的(隐藏的)Java到SOAP XML编组/解编组

同样,我无法访问您的源代码或教程(目前我没有时间查看);但是,这些都是基于非常常见的命名约定的有根据的猜测。

你能澄清(至少对我来说)你的问题是什么吗?谢谢。你能澄清一下(至少对我来说)你的问题是什么吗?谢谢。菲利普·fku“你可以通过co