Siebel SWE OBE

使用 Siebel Web 引擎 (SWE) 在 WebCenter 应用程序中查看数据

本教程将向您介绍 WebCenter 应用程序如何能够动态查询 Siebel 数据并分析来自 Siebel Web 引擎 (SWE) 的 XML 输出。

大约 20 分钟

主题

本教程包括下列主题:

将鼠标置于此图标上以加载和查看本教程的所有屏幕截图。(警告:因为此操作会同时加载所有屏幕截图,所以网速较慢时,响应时间可能会比较长。)

注:此外,您还可以在下列步骤中将鼠标放在每个单独的图标上,从而仅加载和查看与该步骤相关的屏幕截图。

概述

本教程提供了一个预构建的 WebCenter 应用程序,您可以将它上载到 JDeveloper Studio,针对您自己的 Siebel 数据运行并进行探究。然后,您可以使用该应用程序作为基础来满足自己的 Siebel-WebCenter 集成需求。注意,本教程不介绍如何构建 WebCenter 应用程序。有关详细信息,请参阅相关信息部分。

Oracle WebCenter 是一个集成的技术套件,旨在提供集结构化和非结构化内容、业务智能、业务流程、通信及协作服务于一体的、统一的、上下文敏感的用户体验。Oracle WebCenter 是 Oracle 融合中间件产品系列的一部分,构建在开放的、基于标准的体系结构之上。WebCenter 的一个主要特性是,它消除了基于 Web 的门户与企业应用程序之间的界线,并且支持快速创建新一代以上下文为中心的组合应用程序,这将改变人们的工作方式。WebCenter Framework 已集成到 JDeveloper 中,允许您在应用程序中嵌入 portlet、内容和可自定义的组件。

Siebel Web 引擎 (SWE) 负责呈现 Siebel 用户界面。Siebel Web 模板在呈现应用程序的信息库定义中的 Siebel 对象时,会将该 HTML 布局信息(标记信息)提供给 Siebel Web 引擎。SWE 返回的标记还可以是 XML(用于在可识别 XML 的应用程序中呈现)或者 WML(无线标记语言,用于在无线设备上呈现)。在本例中,我们请求 SWE 以 XML 格式返回 Siebel 视图,分析数据元素并在 WebCenter 应用程序中显示结果。

请参考 Siebel 购书指南:《Siebel 门户框架指南》(尤其是,有关向外部 Web 应用程序提供内容的部分)和《配置 Siebel 业务应用程序指南》,了解有关 SWE 和 Web 模板的详细信息。

返回主题列表

情景

首先 登录到 Siebel Call Center,访问各种视图并查看 SWE 生成的 XML 数据集的结构。然后,针对自己的 Siebel 安装配置一个预构建的 WebCenter 应用程序,并运行该应用程序。下面显示了这个正在运行的应用程序。

完成的应用程序

当用户单击 Execute 时,该应用程序会动态查询 Siebel 数据并分析从 Siebel Web 引擎 (SWE) 返回的 XML 输出。返回的数据集在 Order Detail 表中显示。

返回主题列表

前提条件

开始本教程之前,您应该:

1.

可以访问或已经安装了 Oracle JDeveloper Studio 版 (10.1.3.3)。

此版本包括构建 WebCenter 应用程序所需的所有功能。可以从 Oracle 技术网 http://www.oracle.com/technology/software/products/jdev/htdocs/soft10133.html 下载 JDeveloper Studio 版。

2.

可以访问或已经安装了 Oracle 的 Siebel eBusiness Applications。在本 OBE 中,我们将在 Call Center 中使用 Siebel eBusiness Applications 7.8。

3.

已下载 sweOBE.zip 并将内容解压缩到 c:\mywork 目录(您需要在本机创建该目录),如下所示。

注:如果使用其他顶级目录,则需对应用程序代码进行简单的修改。

4.

可以访问 Windows Internet Explorer (IE) 7.0 或更高版本。浏览器与 Siebel Call Center 兼容,这一点至关重要。

返回主题列表

探究 Siebel Call Center 视图和 XML

在本主题中,您将登录至 Siebel Call Center,访问各种视图,然后查看 SWE 生成的 XML。

1.

打开 Internet Explorer,输入 Siebel Call Center 的 URL。

URL 的格式为 http://<主机名>/callcenter_<语言>/start.swe。例如,http://myhost.oracle.com/callcenter_enu/start.swe

确保使用已经过认证可以在 Siebel 中使用的浏览器,例如 IE 7。

2.

输入有效的用户 ID 和口令。用户 ID 和口令均为 SADMIN。单击箭头登录。

3.

在主页上单击 Accounts 选项卡。

4.

要找到我们希望用于该应用程序的视图,执行以下步骤:

a.

单击 My Accounts 导航至 Accounts List。

b.

单击任一帐户。

c.

单击 Contacts 旁边的箭头打开弹出列表。

d.

在该列表中找到 Orders。

这是我们希望基于其构建页面的视图。

5.

查看该视图的 XML。要查看 XML,在浏览器中将以下内容附加到 URL:&SWECmd=GotoView&SWEView=Account+Detail+Orders+View&SWESetMarkup=XML&SWEDataOnly=TRUE&SWERowId0=6SIA-2ZIAL&SWEApplet0=SIS+Account+Entry+Applet

注意,我们已经设置 SWESetMarkup=XML。我们还将设置 SWEDataOnly=True 以指明 SWE 应仅返回数据而不返回非数据控件(如定位点和导航控件)等用户界面信息。

注: 在屏幕截图中,我们有选择地折叠了某些节点以便于查看。

6.

向下滚动至第二个 <APPLET> 元素的 <RS_DATA> 元素,查看在数据中显示的字段。 注意返回的 XML 使用的字段名称(Priority Status、Order Number 等)。

另外,请注意某些字段(如 Order Type)具有一组选择列表值。这些选择列表给 XML 的分析带来了更多挑战。

7.

现在,返回 Siebel Call Center(您可以单击浏览器中的 Back 按钮)。在主菜单中选择 Help > About View

8.

About View 窗口将显示该屏幕的详细信息。注意该视图的名称 (Account Detail - Orders View) 和小程序名称。

指定为 [1] 的小程序(在本例中为 SIS Account Entry Applet)始终控制视图的主要部分。在下一部分中,您将使用上述视图名称和小程序名称。

10.

单击 OK 关闭 About View 窗口。

返回主题列表

配置应用程序

在本主题中,您将一个预定义的 WebCenter 应用程序上载到 JDeveloper Studio 中,然后查看该应用程序使用的两个属性文件。针对您的 Siebel 环境,对其中一个文件进行配置。

1. 启动 JDeveloper:双击 JDeveloper 可执行文件 jdeveloper.exe,该文件位于您解压缩它的根目录(<jdev 主目录>)中。

如果 Migrate User Settings 对话框打开,请单击 NO。

关闭 Tip of the Day 窗口。

2.

在 Applications Navigator 中, 右键单击 Applications(左上角)并选择 Add to Applications


3.

在 Select application(s) to add 对话框中,将 Location 更改为 c:\mywork\sweOBE

4.

选择 sweOBE.jws 并单击 Open。扩展名 jws 表明该文件是 JDeveloper 工作区(应用程序)文件。

5.

在 Navigator 中展开 sweOBE 应用程序。然后展开 ViewController > Web Content

6.

双击 ViewPage1.jsp 在可视化编辑器中将其打开。

该页面将显示一个主从表单。用户在顶部字段中输入一条客户记录,然后单击 Execute。底部的块将由来自 Siebel 的数据填充。

要成功运行该页面,需要修改一个配置文件。

7.

打开 Windows 资源管理器,找到 SWEgeneral.properties

8.

在写字板中打开 SWEgeneral.properties

9.

输入 Siebel 所在的 Web 服务器的主机名。如果有必要,还要修改 SiebelAccount 属性。

注:示例应用程序中的代码使用 SiebelAccount 值作为登录时的用户名和口令。

保存此文件。

10.

在写字板中打开 orders.properties。注意,View 和 AppletName 属性已预先设置。此外,还定义了一个默认记录,因此当用户未指定记录 ID 时,将自动查询客户订单。

查看字段名称。注意,该文件该指明了哪些字段是选择列表。这对分析 XML 十分重要。

关闭该文件,无需进行任何更改。

返回主题列表

运行应用程序

1.

在 JDeveloper 中,运行 ViewPage1.jspx 页面。为此,右键单击导航器中的 ViewPage1.jspx 并从上下文菜单中选择 Run

2.

注意,已使用在 orders.properties 中指定的默认记录自动执行了一个查询。


3.

返回 Siebel Call Center,找到另一个客户记录编号。向下滚动,找到一条感兴趣的记录。通过从主菜单中选择 Help > About Record,找到该记录 ID(“行号”)。

4.

将该记录 ID 复制到剪贴板。

5.

将该 ID 粘贴到运行页面的 Record ID 字段中,然后单击 Execute。该客户的订单应在 Order Detail 块中列出。

返回主题列表

探究应用程序

现在对 JDeveloper 进行深入分析以了解应用程序的结构和代码。

1.

在导航器中,展开 Application Sources,然后展开 model.swetoadf

注: 该应用程序使用两个项目:Model 项目用于构建 Order Detail 表所基于的数据控件,ViewController 项目定义用户界面。将数据控件从用户界面中分离出来始终是个不错的做法。未使用 Portlets 项目。

2.

双击 sweData.java 在可视化编辑器中打开它,查看代码的作用。

将调用 public static List<viewRecord> getView(String pZoneName,String pRecordID)
方法收集来自指定记录的行。pZoneName 被硬编码为“orders”以选择
orders.properties 文件(该文件定义了记录的属性)。


3.

通过 SWEgeneral.properties 文件获得 Siebel Call Center 的访问参数:主机名和帐户名(还用作本例中的口令)。

通过 orders.properties 文件获得记录的属性。包括模块和小程序的名称、默认记录、感兴趣的字段名称以及字段类型(选择列表或标量值)。


4.

通过这些参数构建请求 URL 对象。如果在方法调用中未指定记录,则使用默认记录。

URL 首先执行登录 (SWECmd=ExecuteLogin ...),然后请求以 XML 格式 (SWECmd=GotoView ...) 显示相应视图、小程序和记录中的数据。


5.

接下来,创建一个文档对象模型 (DOM) 分析器;它分析新构建的 URL(即,请求构建的 URL 时从 Siebel 进行回复)。

由于代码使用 Oracle 的 DOM 分析器,因此可以将生成的文档强制转换为 oracle.xml.parser.v2.XMLDocument。 该文档类的优点是它实施非标准方法 selectNodes(<XPATH 字符串>),该方法将返回与 XPATH 表达式匹配的所有记录的列表。


6.

已构建的 XPATH 表达式从指定的 APPLET 标记(本例为 APPLET[2])选择 RSS_DATA 元素中的所有行:APPLICATION/SCREEN/VIEW/APPLET[2]/LIST/RS_DATA/ROW。 获取匹配的节点(“ROWs”)。

然后,通过获取在 orders.properties 文件中指定的字段的值(col1 到 col5),处理所有行。

最后,将所有值打包到一个新的 viewRecord 对象并添加到生成的列表中。

7.

valueOfField 方法从当前行获取请求的字段值。

某些字段从选择列表获取它们的值。 选择列表仅在第一行给出。

该方法将构建一个 XPATH 表达式,从当前的 ROW 节点开始。如果第一行正在进行处理并且字段是一个选择列表,则将使用已命名字段的 PICK_LIST 的 VALUE 属性:

../FIELD[@NAME='" + fieldName + "']/PICK_LIST / @VALUE)

如果字段不是选择列表,则该值只是字段的值:

./FIELD[@NAME='" + fieldName + "']

该方法将返回 XPATH 表达式选择的节点的值。


8.

在导航器中双击 viewRecord.java 打开该文件。

这是一个简单的 Java 类,它以五个字段值的形式保存五个字符串的记录。


9.

展开 model.siebel 并双击 orders.java 在可视化编辑器中打开它。

orders.java 调用 sweData 类的 getView 方法。

我们在构建该应用程序时使用该 Java 类创建数据控件,方法是,右键单击该文件并从上下文中选择 Create Data Control,如下所示。

生成的 XML 文件对该数据控件进行描述:

10.

现在我们已经看过了应用程序模型,单击 ViewPage1.jspx 重新访问用户界面。注意 Data Control Palette 中的 ordersDataControl

构建 ViewPage1.jspx 时,我们两次用到了该数据控件。

完整的 ViewPage1.jspx 如下所示。


返回主题列表

通过本教程,您了解了 WebCenter 应用程序如何能够动态查询 Siebel 数据并分析来自 Siebel Web 引擎 (SWE) 的 XML 输出。

返回主题列表

要了解有关 Oracle WebCenter 的更多信息,可以参考:

返回主题列表

将鼠标置于该图标上可以隐藏所有的屏幕截图。