使用WebLogic将Web站点转换为Web服务(一) (4) - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- 使用WebLogic将Web站点转换为Web服务(一) (4) (http://www.webasp.net/article/28/27033.htm) |
| -- 作者:未知 -- 发布日期: 2005-11-16 |
本节运行了New File Wizard(参见图4),其中已经预先选择了Web服务文件类型。输入Web服务的名称,然后单击Create。 ![]() 图4. 选择 Web服务的名称 创建RoboSuite控件 创建Web服务之后,下一步就是创建RoboSuite控件。右击该Web服务,然后选择Add Control > RoboSuite Control,如图5所示。这将运行Insert Control Wizard(参见图6)。这个向导基本上是一个标准的WebLogic Workshop向导,但是其中的步骤3将取决于用户所选择的控件种类。 ![]() 图5. 添加RoboSuite控件 该向导中的头两个步骤是命名Web服务中的控件实例和命名控件文件(生成的JCX文件)。选择实例名称phone。这对应于Java风格的JCX文件中的一个字段名称,所以在这里必须遵从Java命名约定。JCX文件名类似于Java类名。为控件选择包名称controls,这既是实际的也是必需的做法。JCX文件位于一个称为controls的文件夹中,该文件夹为应用程序提供某种结构(此外,不能把控件放在默认的顶级包中)。 ![]() 图6. 命名控件 向导的最后一个步骤是配置控件。这个步骤由几个子步骤组成。第一个子步骤是选择robot所在的库。在本例中,robot位于本地文件系统中一个称为phone.robotlib的robot库文件中,所以必须选择Robot Library File at URL选项(参见图7)。另一个可能的robot位置在控件或RoboSuite附带的文档中有所描述。此处我不再详细讲述。 ![]() 图7. 选择 Robot Library位置 选定Robot Library的位置以后,必须指定有关库的更详细信息(例如库的URL),在本例中也不例外。我们指定了robot库文件在本地文件系统中的位置(参见图8)。 ![]() 图8. 选择 Robot Library URL 指定了robot的完整位置之后,映射表就会显示库中的robot。映射的目的是定义robot和控件方法之间的映射。如果列表中的映射存在,那么对方法的调用就会导致对指定robot的调用。目标是为所有的三个robot定义映射,这样控件就包含一个可以执行robot所要执行的三种操作的方法:搜索、添加和删除。添加新映射的方法是,右击robot旁边的Mapping列,然后选择New…选项,如图9所示。 ![]() 图9. 创建新的映射 该步骤运行了Map Editor(参见图10)。Map Editor推荐一种默认映射,它包含一个签名和一个方法的返回类型,从方法的输入参数到robot输入对象的属性的映射,以及从robot输出对象到方法结果的映射。对于add robot,有一个称为PhoneUpdate的输入对象,它有两个属性:name和number。编辑器推荐一种映射,在此映射中,方法的两个参数直接映射为PhoneUpdate对象的属性。对于输入来说,这似乎是合理的映射,所以我们将采用这种方法。 ![]() 图10.映射编辑器 然而,输出的结果映射并不是您想要的。输出的这个结果映射指定,所有对象都将在一个列表中返回。对于add robot,您知道,有且只有一个对象会被返回,而且该对象是一个PhoneStatus对象。所以,还可以选择一种只返回第一个PhoneStatus对象的结果映射。Java对象PhoneStatus是位于Phone接口中的一个公共静态内部类,而Phone接口定义在所生成的JCX文件中。图11显示了如何选择结果映射。 (T112) |
| webasp.net |