Oracle Technology Network (OTN) > Downloads, Discussions, and Documentation for Developers and DBAs
集成 Oracle Sensor Edge Server (SES) 与 Oracle BPEL 流程管理器 (BPEL)

集成 Oracle Sensor Edge Server (SES) 与 Oracle BPEL 流程管理器 (BPEL)

本教程将说明如何集成 Sensor Edge Server 与 Oracle BPEL 流程管理器 (BPEL)。

大约 60 分钟。

主题

本教程包括下列主题:

从 Oracle Sensor Edge Server 控制台配置动画设备
定义 BPEL 逻辑

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

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

概述

Oracle Sensor Edge Server 是一个中间层组件,它将传感器以及其他类型的命令或响应指示设备与应用程序集成在一起。传感器是在环境中观察状态特定变化的硬件或软件端点。Sensor Edge Server 使用这些传感器来集成传感器数据和应用程序。

如果将 RFID 技术用于自动化业务流程(例如,根据高级发货通知协调发货),实时企业将成为现实。使用 Oracle BPEL 流程管理器,可以为业务流程建模,以便当 RFID 阅读器读取托盘和物品的 RFID 标记时,系统可以启动协调过程。根据获得的产品的价值,可对协调过程应用不同的业务规则。Oracle BPEL 流程管理器提供了用于设计、测试、调试和部署业务流程的工具。您可以轻松地修改业务流程,业务规则可以随着业务需求的变化而变化。建模、测试和优化业务流程的能力为每个企业提供了获得较高 RFID 投资回报率 (ROI) 的机会。

  1. 使用远程驱动程序将事件发送到 Oracle Sensor Edge Server (SES)。
  2. 将事件发送到 SES 后,SES 将通过 EventFlow 引擎将这些事件调度到远程 Oracle BPEL 流程管理器服务器。
  3. 如果您在 Oracle BPEL 流程管理器中预定义了一条规则,则该规则将检查传入的数据是否符合特定条件。如果符合条件,BPEL PM 将调用 SES 提供的另一个 Web 服务以发送指令。
  4. SES 收到这些指令后会将其转发给动画设备。

返回主题列表

开始学习本教程之前,您应该先完成以下任务:

1.可以访问或已经安装了 Oracle JDeveloper 10g。您可以从此处下载 Oracle JDeveloper 10g。
2.

可以访问或已经安装了 Oracle 应用服务器 10g 10.1.3。您可以从此处下载 Oracle 应用服务器 10g 10.1.3。

3.可以访问或已经安装了 Oracle Sensor Edge Server。您可以从此处下载 Oracle Sensor Edge Server。
4.可以访问 Oracle BPEL 流程管理器。您可以从此处下载 Oracle BPEL 流程管理器。
5.对 SES 应用了补丁。“对 Sensor Edge Server 应用补丁”OBE 中提供了应用该补丁的步骤。
6.此处下载 GateDemo.zip,并从此处下载 BPEL 项目 EdgeClient.jpr。

返回主题列表

从 Oracle Sensor Edge Server 控制台配置动画设备

1.

确定您的 OC4J 服务器正在运行。(您可以使用应用服务器控制台或 opmnctl 命令进行验证)。

opmnctl status

如果 OC4J 服务器未运行,则使用以下命令启动 OC4J 服务器:切换到命令提示符,将目录更改为 <edgeserver_home>ORACLE_HOME\opmn\bin 并发出以下命令:

opmnctl startall

2.

打开浏览器,输入以下 URL:

http://<主机名>.<>:<端口>/edge

例如,http://localhost:8888/edge。

使用 oc4jadmin 用户身份以及在安装期间指定的 OC4J 管理员口令登录。单击 Login


3.

这是一个新安装,因此没有配置任何调度程序或设备。要配置远程设备,单击左侧导航部分中的 Default

4.

单击 Add new device

5.

在 Search and Select:Add new device 窗口中,选择 Remote Driver。单击 Select

6.

单击 RemoteDriver1 链接。

7.

单击 Save Changes

8.

如果您对 Oracle Sensor Edge Server 实例进行了任何更改,SES 控制台将显示一条消息,通知您使用 OracleAS 企业管理器重新启动 Oracle Sensor Edge Server 实例。单击消息中的 Enterprise Manager 链接。

9.

OracleAS 企业管理器的登录页面将出现。输入 OC4J 用户名和口令。单击 Login

10.

单击 Cluster Topology 页面中的 home 链接。

11.

单击 Applications

12.

选择 edge 并单击 Restart

13.

单击 Confirmation 页面中的 Yes

14.

现在,Oracle Sensor Edge Server 实例已经成功重新启动。

15.

要运行该动画演示,需要 GateDemo.zip 文件。将 GateDemo.zip 解压缩到 $ORACLE_HOME\j2ee\home\applications\edge\edge\sample。导航到 $ORACLE_HOME\j2ee\home\applications\edge\edge\sample\GateDemo。单击 animation.bat

16.

您现在应看到以下命令窗口。

17.

在 Java Swing 窗口中,您现在可以看到动画设备正在等待事件。

18.

在新浏览器窗口中输入以下 URL,重新启动 RemoteDriver1 设备:

http://<主机名>.<域>:<端口>/edge

使用 oc4jadmin 用户身份以及在安装期间指定的 OC4J 管理员口令登录。单击 Login

19.

单击 RemoteDriver1

20.

单击 Start device

21.

您现在可以看到 AnimationController 正在等待远程事件或用户动作。

返回主题列表

定义 BPEL 逻辑

使用 JDeveloper BPEL Designer,您可以构建、部署和测试 BPEL 流程。您可以使用 JDeveloper BPEL Designer 定义 BPEL 逻辑。该逻辑是:如果传入事件的标记 ID 是特定 ID,则将类型为 213 且子类型为 2 的事件发送到 RemoteDriver 设备。否则,将子类型为 3 的事件发送到 RemoteDriver1 设备。创建流程后,您需要将该流程部署到 BPEL 流程管理器以供 SES 调用。

1.

从 Windows“开始”菜单,单击开始 > 程序 > Oracle - Oracle_Home > BPEL Process Manager 10.1.2 > JDeveloper BPEL Designer,启动 BPEL Designer。

2.

右键单击 Navigator 窗口中的 Applications。选择 New Application Workspace

3.

在 Create Application Workspace 窗口中,输入以下详细信息:

Application Name:EdgeClientCallback
Directory Name:使用默认目录位置

单击 OK

4.

从 File 菜单中,选择 Open

5.

导航到包含示例 BPEL 流程的 E:\Workspace1\EdgeClientCallback 目录。选择 EdgeClientCallback.jpr。单击 Open

6.

现在,编译该流程并生成部署 jar 文件。右键单击项目文件并选择 make

7.

在日志窗口中查看编译结果。

8.将该流程部署到 BPEL PM 服务器之前,您需要启动 BPEL PM 服务器。
选择开始 > 程序 > Oracle-OraBPELPM > Oracle BPEL Process Manager 10.1.2 > Start BPEL PM Server。

9.

启动 BPEL PM 服务器之后,您可以从 BPEL Designer 测试连接。
单击 View 并选择 Connection Navigator


10.

选择 BPEL Process Manager Server 并双击 LocalBPELServer。在弹出窗口中,选择 Test Connection 选项卡,然后单击“Test Connection”按钮。

11.

弹出窗口的 Status 部分应该显示 Success。单击 OK。

12.

现在,由于 BPEL 服务器处于活动状态,我们可以从 JDeveloper 直接部署该流程。
单击 Application 选项卡。右键单击项目名称 (EdgeClientCallback),选择 Deploy > LocalBPELServer > Deploy to Default Domain。

13.

在 Password Prompt 窗口中,输入口令。默认口令是 bpel。单击 OK

14.

您可以在日志窗口中查看部署结果。

15.

部署流程之后,您可以转到 BPEL 控制台查找所创建流程的 WSDL URL。打开一个新的浏览器窗口,输入 BPEL 控制台 URL,如下所示:

http://localhost:9700/BPELConsole

16.

在 Dashboard 中,找到新创建的名为 EdgeClientCallback 的流程。单击该流程。

17.

选择 WSDL 选项卡。您会看到 WSDL URL 和端点 URL。这两个 URL 将由 SES 调度程序使用。

返回主题列表

配置 SES 的事件流调度程序

系统会自动配置事件流调度程序。该调度程序不需要任何参数,并且将在启动期间加载 eflow.xml 文件。eflow.xml 文件位于 $SES_HOME/j2ee/home/applications/edge/edge/config 下。

1.

该 XML 定义如下:

<eflow>
<components>
<component name="callBpel" class="oracle.edge.tools.eflow.impl.BpelState" />
<component name="matchEvent" class="oracle.edge.tools.eflow.impl.MatchEventState" />
<component name="sendEvent" class="oracle.edge.tools.eflow.impl.SendEventState" />
<component name="callWs" class="oracle.edge.tools.eflow.impl.WsState" />
</components>

<entry>
<onEvent state='A.check'/>
</entry>
. . . . . . . .
. . . . . . . .

返回主题列表

测试集成演示

要测试演示,执行以下步骤:

1.

在动画设备窗口中,单击 Good User。绿灯将亮起。

2.

如果单击 Bad User,则红灯亮起。

3.

打开一个浏览器窗口,登录到 BPEL 控制台以查看运行时实例。

4.

在右下角,您将看到最近完成的实例。单击最顶层的实例。这将显示有关该实例的详细信息。

返回主题列表

在本课程中,您学习了如何:

返回主题列表

有关本 OBE 教程的问题,请在 OBE 论坛上发布查询

返回主题列表

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

 

 

 

E-mail this page
Printer View Printer View