标题: 和开发 Web 服务时的复杂繁琐说再见(3)开发示例后续 [打印本页] 作者: look_w 时间: 2018-7-16 11:47 标题: 和开发 Web 服务时的复杂繁琐说再见(3)开发示例后续
网页创建现在通过调用两个 Web 服务并将其响应结果相乘,可以得到以日元计价的股票报价。接下来将创建一个小型的 Web 应用程序,以通过网页提供此服务。首先,向 Internet Cards 类别中的表格添加一个 Web Page Card( 中的卡片 D)。
图 9. 示例应用程序中的卡片 D 和 E通过单击 中的“生成表单”按钮,并声明 stock symbol 输入字段的名称,向卡片 D 的 html 字段添加一个 HTML 输入表单。ADIEU 将自动创建另一个 Web Page Card(卡片 E),用于处理表单提交和处理。
图 10. ADIEU 卡片上的“生成表单”按钮。这些网页卡片的执行情况如下:
从用户浏览器发出的 HTTP 请求达到后,所提供的任何输入参数都将存储在其相应的输入字段中。
cardsToRun 中列出的卡片将按照排列顺序执行。
会将 html 字段的任何内容作为网页返回到用户的浏览器。
内联字段是可以通过使用方括号(即 [ 和 ])嵌入到任何文本字段中的 ADIEU 表达式。在卡片 E 中,[=C.stockYen] 指示卡片 C 中的 stockYen 字段的值将替代此表达式,而成为返回到客户机浏览器的 HTML 的一部分。再次使用一个表达式将卡片 A 中的 symbol 字段修改为使用卡片 E 的输入(stock symbol,作为 HTTP 请求中的查询参数进行发送),如 中所示。
图 11. Get Stock Quote 卡片(卡片 A)中的 symbol 字段 通过使用图标表示 ADIEU 卡片,显示了此过程中各个步骤间的以下关系。
图 12. ADIEU 中的网页功能的执行路径在图中,蓝色的宽箭头表示页面转换,黑色箭头表示卡片调用,而桔红色虚线箭头则表示字段引用。关系箭头的图标显示在对话框中。ADIEU 允许更改每个箭头的可见性。此可视化功能对于理解 ADIEU 应用程序的结构非常有效。
通过单击卡片 D 中的 address 字段(其中包含为正在定义的网页生成的 URL),就可以启动刚刚创建的 Web 应用程序,浏览器将显示 中所示的页面。
图 13. 使用 ADIEU 创建的示例应用程序的起始页用户输入股票代号,并单击 Submit,浏览器就会显示 中所示的页面。
图 14. 示例 ADIEU 应用程序的结果页面正如您所看到的,只需要五张卡片和数分钟时间,就可创建一个有用的、适合网页上的 Portlet 或无线手持设备小型显示屏的 Web 应用程序。
Web 服务的创建与部署在上面的示例中,计算结果是通过使用 Web Page Card 作为网页发布的。与此类似,也可以通过使用 Web Service Card 替代 Web Page Card,从而创建 Web 服务并将其部署以供重用,如 中所示。
图 15. 使用 Web Service Card 创建并部署 Web 服务这个新的 Web 服务与前面构建的网页类似,都将股票代号作为输入,然后返回以日元计价的股票报价。但 Web Service Card 允许用户指定多个输出参数,这些输出参数将通过 SOAP 信封返回到调用此服务的系统,而不是 Web Page Card 所返回的 HTML。当单击 Web Service Card wsdl 字段中的链接时,将显示为 Web 服务生成的 WSDL。新定义的 Web 服务现在已部署,可以响应 Internet 上任何 SOAP 客户机发出的请求。此服务也会在“Add Card”对话框中显示为新的卡片类型,可供其他应用程序和服务作为组件使用。