如何组合可变数量的Web Service

时间:2011-11-17 22:48:06

标签: java web-services

我想开发一个Java客户端,它请求可变数量的web服务。 如何使其成为最好的,客户端知道哪个服务为特定主题提供哪些信息。系统应该可以轻松添加新服务。

实施例: 假设我们为每个城市提供不同的天气预报服务。 现在我想要芝加哥的预测,该计划应该要求所有可以提供芝加哥预测的服务。我怎么能意识到这一点?以及如何处理不同类型的响应(XML或int或......)?

我应该将服务的端点存储在xml文件中并进行查找(UDDI)吗? 我很难过。因为,我对这些复杂的事情没有经验。

感谢和问候

2 个答案:

答案 0 :(得分:0)

这取决于服务的开发方式。它可以是例如ReST体系结构,或者是请求SOAP通信的服务......

首先要知道的是如何向客户提出服务。如果它是“SOAP服务”,那么你将需要公开所有可用服务的WSDL(w3C doc),如果它是ReST你需要知道服务的URI。

这些并不是唯一的两个系统(因为它们只是基于xml的),因此您需要知道网站如何公开其服务,然后了解与服务进行通信的不同方式。

这个link可能是开始学习Web服务和Web服务架构的好点。

答案 1 :(得分:0)

不同的Web服务有几种可能性来提供信息。一些使用或其他基于的格式,其他人有自己的API ...

你可以为每个服务使用类似适配器的东西,这些服务在广义的“驱动程序”上运行,用于webservice的数据交换机制......所以会有一个rss feed的驱动程序,以及其他常见的数据交换格式更具体的API。这些适配器将以相同的方式使用不同的驱动程序来提取所需的信息,这些信息将被单独显示...

也许它也可以创建一个适配器生成器,最终用户可以使用它来将自己的web服务添加到系统中......