0

我不确定确切的面额,但我有一个“web asp 服务”(来自 .NET 应用程序),它给了我一个 XML 文件。(没有 WSDL...)

例如,我可以使用这样的 URL 来质疑 Web 服务:

http://Connectiquetest:86/Vaudoise/srv_db/db2_personnes.asp?Nopers=529720&SearchMode=1&Name=Smith

其中 Nopers=52920、SearchMode=1 和 Name=Smith 用于向我返回我想要的响应。(该 URL 用于内部系统,如果没有 VPN,您将无法访问它)

内容类型返回是:“text/xml”(这是一个经典的格式良好的 XML)。

那么,如何使用这些信息从 Java 应用程序调用以接收 XML?任何人都可以告诉我它到底是什么(也许是 SOAP 的特定实现?)

谢谢 !

4

1 回答 1

0

最简单(但也是最耗费人力)的方法是打开一个HttpURLConnection. 你可以通过调用来做到这一点URL.openConnection()。该URL对象显然基于您提到的 URL,可以选择附加参数Nopers,SearchModeName. 然后,您可以调用getInputStream()以访问调用的响应。接下来是解析 XML 以解释结果。

但是,如上所述,这需要大量低级代码(尤其是在读取输入、解析 XML 等时)。考虑将Apache HttpComponents之类的东西用于与 HTTP 相关的工作,结合JAXB之类的东西来轻松地将检索到的 XML 转换为普通的旧 Java 对象。

使用 JAXB 可能需要您拥有 XML 模式。在理想情况下,它已经存在(由编写 ASP 服务的人编写)。在次理想情况下,您必须自己推导出它。

于 2013-07-11T10:15:30.703 回答