本教程将向您介绍 JDeveloper BPEL Designer。它向您显示了如何通过使用 JDeveloper BPEL Designer 来创建您的第一个业务流程执行语言 (BPEL) 项目,并将其部署到 Oracle BPEL Process Manager 上。
所需时间
大约 20 分钟
本教程包括下列主题:
将流程部署到 Oracle BPEL Process Manager Server
将光标置于此图标上以加载和查看本教程的所有屏幕截图。(警告:此操作会同时加载所有屏幕截图,网速较慢时,响应时间可能会比较长。)
注意:您还可以在下面的步骤中将光标放在每个单独的图标上,仅加载和查看与该步骤相关的屏幕截图。
Oracle BPEL Process Manager 通过将一系列同步和异步的服务组合到一个端到端 BPEL 流程流中,简化了基于面向服务的体系结构 (SOA) 开发应用程序的流程。Oracle BPEL Process Manager 为设计、部署和管理 BPEL 业务流程提供了一个开发人员易于使用的可靠的解决方案。
Oracle BPEL Process Manager 包括三个主要组件:
JDeveloper BPEL Designer:JDeveloper BPEL Designer 扩展了 Oracle JDeveloper 10g 的功能,并支持使用 BPEL 进行业务流程的建模、编辑和设计。它提供了一个图形化和用户友好的方式构建 BPEL 流程。JDeveloper 使用 BPEL 作为其原生格式,因此构建的流程是可移植的。
返回主题列表
要执行本教程,您应当已经:
安装了 Oracle BPEL Process Manager 和 JDeveloper BPEL Designer
要创建 BPEL 项目,执行下列操作:
从 Windows 的“开始”菜单,单击开始 > 程序 > Oracle- <ORACLE_HOME> > Oracle BPEL Process Manager 2.0 > Start BPEL PM Server,启动 Oracle BPEL Process Manager 服务器。
或者,您可以从命令行提示符中运行位于 <ORACLE_HOME>\integration\orabpel\bin 文件夹中的 startorabpel.bat 命令来启动 Oracle BPEL Process Manager 服务器。
从 Windows 的“开始”菜单中,单击开始 > 程序 > Oracle- <ORACLE_HOME> > Oracle BPEL Process Manager 2.0 > JDeveloper BPEL Designer,启动 JDeveloper BPEL Designer。
等待 JDeveloper BPEL Designer 启动。
在 Navigation 窗格中您将看到 Applications-Navigator 和 Connection-Navigator。从菜单中单击 View,并选择 System Navigator 切换至 System Navigator。
要使用 JDeveloper,您必须创建一个工作区和一个项目。工作区是一组相关的项目。按工作区和项目对文件分组使您能够按逻辑和按层次对工作排序。
在 System-Navigator 中右键单击 Workspace 并从上下文菜单中选择 New Workspace。
输入 BPELws 作为工作区名称。取消选中 'Add a New Empty Project' 复选框并单击 OK。
您将看到已创建了工作区。
在 System-Navigator 中右键单击新的工作区 BPELws,并从上下文菜单中选择 New Project。
从 New Gallery 中的 General 类别下选择 Projects,然后从 Items 中选择 BPEL Process Project。
此时将出现 BPEL Process Project 对话框。输入 HelloWorld 作为 BPEL 流程名。您将创建一个异步 BPEL 流程,因此请从 Template 下拉列表中选择 Synchronous BPEL Process。单击 OK。
在 System-Navigator 中查看创建的文件。BPEL Process Project 将为新的异步 BPEL 流程 HelloWorld 创建一个骨架。该向导还会构建流程,您可以在日志窗口中查看构建是否成功。将创建以下文件:
说明
要查看生成的 WSDL 代码,在 System-Navigator 中双击 HelloWorld.wsdl 文件。该 WSDL 文件将在一个新的编辑器选项卡中打开。向下滚动浏览,直到找到文本 。您可以看到定义了 HelloWorldProcessRequest 和 HelloWorldProcessResponse complextype 元素。
单击 HelloWorld.bpel 选项卡。您将看到您所创建流程的图表视图。该图表视图提供了 HelloWorld 流程的一个概览。左侧为客户端界面,其中显示了该流程提供的操作。请注意,BPEL Designer 会自动将任何名称为 client 的 partnerLink 放在该窗口的左侧。所有其他 partnerLinks 将在右边显示。
单击 Source 切换至源代码视图。
BPEL 源代码骨架以一个 元素开始,该元素定义了该流程的名称和目标命名空间。
接下来的源代码段为 partnerLink 的源代码。partnerLink 定义与流程交互的其他服务和流程。为 HelloWorld 流程自动创建的唯一一个 partnerLink 是该流程客户端界面的一个链接。
接下来的源代码段是全局变量部分,这些变量在整个流程中都可以访问。向导将自动为 HelloWorld 流程的输入和输出消息创建全局变量。
在全局变量代码段之后,您可以看到该流程(一个 BPEL 活动)的主体代码段。BPEL 流程通常包括一个包含很多子活动的复合活动。在这个 HelloWorld 同步 BPEL 流程中,New Project Wizard 创建了一个序列,即一组顺序执行的活动。创建的这个序列包括一个 活动,用于从客户端获取输入消息来启动该流程,接着是一个 活动,用于向客户端同步返回结果。最后,该代码以 标记结束。
向 BPEL 流程中添加活动
您将为 BPEL 流程创建一个工作区和一个项目。下一个任务是为流程添加一个活动。添加一个活动,它将接受一个输入字符串,将其与 "Hello" 连接,然后返回结果字符串。
单击 Diagram View 切换至图表视图。
在组件面板中,从 Preferred Components 下拉列表中选择 Process Activities。
您将看到这些活动。您将添加一个活动,它将接受一个输入字符串,将其与 "Hello" 连接,然后返回结果字符串。例如,如果您将输入变量输入为 "Oracle",那么该流程会返回 "Hello Oracle" 作为输出。
您必须向该流程流添加一个 活动。BPEL 活动提供了一个使用 XPath 表达式执行简单数据操作的机制。
要向 HelloWorld 流程添加 BPEL 活动,单击 Process Activities 列表中的 Assign。
然后将其拖到 receiveInput 和 replyOutput 流程之间。将 assign 活动放在这两个流程之间后,该流程流将如下所示: 注意:当您沿着流程映射中连接活动的线拖动活动时,会出现一个方框表明目标拖放位置。生成的结果流程图包含该 assign 活动。
包含关于 Invalid Setting 图标的说明。
双击 Assign_1,更改该活动的属性。为该活动输入名字 createReturnString。单击 Copy Rules 选项卡。
为了实现输入变量与 Hello 一词的连接,您必须为该活动关联一个复制规则。要添加复制规则,单击 Create。
此时出现 Create Copy Rule 对话框,其中包含 From 和 To 两个部分,它们分别表示数据的来源以及活动的目标变量或元素。从 Type 下拉列表中选择 Expression。
单击 XPath Expression Builder 的图标。
此时将出现 XPath Expression Builder 对话框,其中包含一个函数列表。从 String Functions 列表中双击 concat 函数。该函数将出现在 Expression Body 中。
对于 firstString (string),输入 Hello,如屏幕截图所示。
要包含第二个参数,在 XPath Expression Builder 中双击输入变量 client:Input。
单击 OK。
在 Create Copy Rule 对话框的 To 部分中,展开 Variables 节点,并选择输出变量 client:result。单击 OK。
在 Assign 对话框中,您将看到 From 和 To 部分的 XPath 表达式。单击 OK。
现在该流程就完成并可以部署了。在部署之前保存流程。
您完成了 HelloWorld BPEL 流程的构建。要部署 HelloWorld 流程,执行以下操作:
记住您在创建 BPEL 流程的第 1 步中启动了 BPEL Process Manager Server。如果您在启动服务器之后启动 JDeveloper BPEL Designer,那么将自动建立一个 LocalBPELServer。
在 System-Navigator 中右键单击项目,选择 Deploy > LocalBPELServer > Deploy to default domain。
提示您输入口令。在 Password 域中输入默认口令 bpel,并单击 OK。
在日志窗口中监视消息,并确保成功部署该流程。
运行部署的流程
将 HelloWorld 流程部署到 Oracle BPEL Process Manager 服务器之后,执行以下步骤在服务器上运行该流程:
从 Windows 的“开始”菜单中,单击开始 > 程序 > Oracle- <ORACLE_HOME> > Oracle BPEL Process Manager 10.1.2 > BPEL Console,启动 Oracle BPEL Console。您还可以通过打开 URL http://<host>:9700/BPELConsole 来启动 BPEL Console。
这会打开 BPEL Console 的登录页面。选择 default 域,输入 bpel 作为口令,然后单击 Login。
在 BPEL Console 中高亮显示了 Dashboard 选项卡。该选项卡显示了部署在 Oracle BPEL Process Manager 服务器上的所有流程以及它们的实例号。您可以看到在 HelloWorld 流程列示在 Deployed BPEL Processes 列下。单击 HelloWorld 流程链接。
这将自动生成一个 HTML 测试页面。在输入文本框中输入 World,然后单击 Post XML Message。
显示 HelloWorld 流程的结果。Oracle BPEL Process Manager 在 For more information 部分为您提供了一些可以获取有关 HelloWorld 流程详细信息的链接。
要查看这个已完成实例的可视审计跟踪,请单击 Visual Flow 链接。
可视化审计跟踪将出现在 Instances 选项卡的 Flow 子选项卡下。可视审计跟踪时该实例的当前状态和执行历史的表示,具有与 Oracle BPEL Designer 相同的外观。
单击 Audit 链接查看文本审计线索。您还可以单击 Debug 链接查看该实例的调试信息。
取消部署的流程并删除实例
执行以下步骤取消部署 HelloWorld 流程,并删除与该流程相关的所有实例。
在 BPEL Console 中单击 BPEL Processes 选项卡。
单击 Deployed Processese 表中的 HelloWorld 流程链接。
向下滚动并单击 Undeploy。
单击 OK,关闭警告对话框。
不会立即取消该流程的部署。这可能需要花一段时间(取决于服务器安排的作业量)。单击 Undeploy BPEL Process 页上的 Done。
单击 Instances 选项卡,删除与该流程相关的所有实例。
您将看到与 HelloWorld 流程相关的实例。
单击 Instance 转至实例页面。
单击 "Delete the Instance" 单选按钮并单击 Apply。
总结
在本课程中,您学习了如何执行下列任务:
通过使用 Oracle BPEL Designer 创建您的第一个 BPEL 项目
通过使用 Oracle BPEL Process Manager 部署和运行您的项目
相关信息
将鼠标置于该图标上可以隐藏所有的屏幕截图