正 文

XMLBean 引领 XML 走向未来


www.7dspace.com  更新日期:2005-10-15 5:29:01  七度空间


  更新库存中某一项的方法通常都一样, SQL 语句是个例外。从工厂获取 XML 实例表示是一个一步就可以完成的操作。获取库存要稍微复杂一点,但是也不会复杂很多。我们的控件返回一个 VehicleDocument.Vehicles 的数组。另一方面, Web service 将返回一个 VehicleListDocument 。幸运的是, VehicleListDocument 只是一个代表 VehicleDocument.Vehicle 对象数组的工厂类。我们需要做的就是创建一个新的 VehicleListDocument ,用它来创建新的 VehicleListDocument.VehicleList ,然后把它赋给我们获得的 VehicleDocument.Vehicle 数组。

public VehicleListDocument
 findAllVehicles()
{
 VehicleDocument.Vehicle[]
  vehicles = vehicleControl.
  getAllVehicles();
  VehicleListDocument
   vehicleListDoc =
   VehicleListDocument.
   Factory.newInstance();
  VehicleListDocument.
   VehicleList vehicleList =
   vehicleListDoc.
   addNewVehicleList();
  vehicleList.setVehicleArray(
  vehicles);
 return vehicleListDoc;
}

  XMLBean 对象可以用于快速而轻松地创建新的 XML 实例。

  在创建了 Web service 之后,可以生成 Web service 描述语言( Web Services Description Language , WSDL )文件,然后使用它创建一个 Web service 客户机。生成客户机时, Workshop 会自动识别我们的 XMLBean 和服务中的方法是匹配的(参见 图 2 )。这种通知没有什么大的用处,因为我们开发了 Web service 来指定返回 XMLBean ,而且在这里,我必须同意。然而,我们很快就会讨论与此相同的通知,但是涉及的环境要更广。


 
图 2. 通知

Workshop 识别类已经访问了基于 WSDL 文件的 Web service

      Web service 客户机

  我们的 PageFlow 将依赖于服务客户机管理车辆库存。 PageFlow 应该为用户提供查看库存中的所有项目和修改并创建项目的能力。此外,为了进一步演示 XMLBean 的强大功能,我们还允许用户基于车辆的状态( new 或者 used )过滤结果。这个过滤器在幕后使用 XPath 来选择适当的车辆。 XPath 是用来基于某种标准在 XML 文档内定位特定元素的一种语法。我们将简要讨论 PageFlow 中涉及到的功能的主要部分。(可以在线查看完整的 源代码 。)

  首先,让我们考察如何将库存显示给用户。我们知道,我们的库存服务会返回一个 VehicleListDocument ,而且还知道,这个对象基本上是 VehicleDocument.Vehicle 数组的表示。该数组将会是用于我们的显示的完美对象。在从 VehicleListDocument 获取 VehicleDocument.Vehicle 数组的几个步骤中,库存变量是在 PageFlow 作用域内声明的,这样就可以从 JavaServer Pages ( JSP )中访问它。

vehicleListDoc = vehicleInventory.
 findAllVehicles();
inventory = vehicleListDoc.
 getVehicleList().
 getVehicleArray();

6页,页码:[1] [2] [3] [4] [5] [6] 

上一篇:广域网应用程序的故障排除与分析
下一篇:ASP.net(VB)编程入门进阶 Ⅰ
作者:David Hritz  来源:dev2dev ( 责任编辑:7dspace )
收藏此页】【打印】【关闭
站 内 搜 索
 

热 点 导 读
特 别 推 荐