| <?xml version="1.0" encoding="UTF-8" standalone="no"?> |
| <!DOCTYPE html |
| PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| <head> |
| <title xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory">JBoss |
| BPEL User Guide</title> |
| <link rel="stylesheet" href="css/jbossorg.css" type="text/css" /> |
| <meta xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| name="generator" content="DocBook XSL Stylesheets V1.74.0" /> |
| </head> |
| <body> |
| <div class="book" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <p id="title"> |
| <a href="http://www.jboss.org" class="site_href"><strong>JBoss.org</strong> |
| </a><a href="http://docs.jboss.org/" class="doc_href"><strong>Community |
| Documentation</strong> |
| </a> |
| </p> |
| <div> |
| <h1 class="title"> |
| <a id="d0e1" />JBoss BPEL User Guide |
| </h1> |
| </div> |
| <div> |
| <h3 class="corpauthor"> |
| <span class="inlinemediaobject"><img src="" /> |
| </span> |
| </h3> |
| </div> |
| <div> |
| <div class="author"> |
| <h3 class="author"> |
| <span class="firstname">Denny</span> <span class="surname">Xu</span> |
| </h3> |
| <code class="email"> |
| <<a class="email" href="mailto:dxu@redhat.com">dxu@redhat.com</a>> |
| </code> |
| </div> |
| </div> |
| <div> |
| <div class="author"> |
| <h3 class="author"> |
| <span class="firstname">Grid</span> <span class="surname">Qian</span> |
| </h3> |
| <code class="email"> |
| <<a class="email" href="mailto:fqian@redhat.com">fqian@redhat.com</a>> |
| </code> |
| </div> |
| </div> |
| <div> |
| <div class="author"> |
| <h3 class="author"> |
| <span class="firstname">Bob</span> <span class="surname">Brodt</span> |
| </h3> |
| <code class="email"> |
| <<a class="email" href="mailto:bbrodt@redhat.com">bbrodt@redhat.com</a>> |
| </code> |
| </div> |
| </div> |
| <div> |
| <p class="releaseinfo">Version: 1.0.0.trunk</p> |
| </div> |
| <div> |
| <p class="copyright">Copyright © 2009, 2010 JBoss by Red Hat</p> |
| </div> |
| </div> |
| <hr /> |
| </div> |
| <div class="toc"> |
| <dl> |
| <dt> |
| <span class="chapter"><a href="#overview">1. JBoss BPEL |
| project Overview</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e70">1.1. Key |
| Features of JBoss BPEL project</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="chapter"><a href="#tasks">2. Tasks</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#detail">2.1. Creating |
| and editing a BPEL project</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#createproject">2.1.1. |
| Creating a BPEL project</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#createprocess">2.1.2. |
| Creating a BPEL process</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#editprocess">2.1.3. |
| Editing a BPEL process file</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#wsdl">2.1.4. Adding |
| Service to WSDL file</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#deploy">2.2. Deploy a |
| JBoss BPEL project to JBoss BPEL Runtime</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#createdeploy">2.2.1. |
| Creating a deploy.xml file</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#createruntime">2.2.2. |
| Creating JBoss BPEL Server</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e987">2.3. Creating |
| correlation sets</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="chapter"><a href="#reference">3. Reference</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e1089">3.1. Wizards</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e1092">3.1.1. New |
| BPEL project</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e1135">3.1.2. New |
| BPEL Process file</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a |
| href="#Reference-Wizard-Deployment_Descriptor">3.1.3. New |
| BPEL Deployment Descriptor</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e1360">3.2. |
| Perspectives</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e1363">3.2.1. BPEL |
| Perspective</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#Reference-Views">3.3. |
| Views</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e1390">3.3.1. |
| Outline</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e1412">3.3.2. |
| Palette</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e1471">3.3.3. |
| Dashboard</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a |
| href="#Reference-Property_sections">3.3.4. Property |
| sections</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e2434">3.4. Editors</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e2437">3.4.1. BPEL |
| Designer</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3246">3.4.2. BPEL |
| Deployment Descriptor editor</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e3300">3.5. |
| Preference pages</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e3305">3.5.1. |
| Editor</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3316">3.5.2. |
| Expression editors</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3327">3.5.3. WSIL |
| browser</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e3340">3.6. Dialogs</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e3343">3.6.1. |
| XPath expression editor (embedded control)</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3367">3.6.2. |
| Quick pick (embedded control)</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3378">3.6.3. Type |
| selection</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a |
| href="#Reference-Dialog-WSDL_Selection">3.6.4. Select WSDL |
| property</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3483">3.6.5. |
| Create WSDL property</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3530">3.6.6. |
| Create WSDL property alias</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3560">3.6.7. |
| Cheat sheets</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e3591">3.7. Icons, |
| buttons and menus</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e3596">3.7.1. |
| Context menu</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| </dl> |
| </dd> |
| <dt> |
| <span class="chapter"><a href="#troubleshooting">4. |
| Troubleshooting</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e3639">4.1. Error |
| messages</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e4336">4.2. Warning |
| messages</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e4388">4.3. |
| Information messages</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="chapter"><a href="#d0e4420">5. Summary</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e4426">5.1. Other |
| relevant resources on the topic</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| </dl> |
| </div> |
| <div class="chapter" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="overview" />Chapter 1. JBoss BPEL project Overview |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="toc"> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e70">1.1. Key |
| Features of JBoss BPEL project</a> |
| </span> |
| </dt> |
| </dl> |
| </div> |
| <p> |
| JBoss BPEL is based on WS-BPEL 2.0, and provides a way to create, |
| edit, validate and deploy BPEL files to JBoss BPEL runtime. It is |
| based on Eclipse <a class="ulink" |
| href="http://www.eclipse.org/bpel/">BPEL project</a>. |
| </p> |
| <p>It improves the Eclipse BPEL project in the following ways:</p> |
| <div class="itemizedlist"> |
| <ul> |
| <li><p>Implements close integration with JBoss BPEL |
| runtime, and adds a new project type for the deployment to the |
| JBoss BPEL runtime.</p> |
| </li> |
| <li><p>Supports two deployment methods. The first method |
| is to deploy a BPEL project directly to the JBoss BPEL runtime. |
| The second method is to deploy BPEL files in JBoss ESB project to |
| the JBoss BPEL runtime.</p> |
| </li> |
| <li><p>Enhances the BPEL validator and improves the |
| quality of the Eclipse BPEL editor.</p> |
| </li> |
| </ul> |
| </div> |
| <p> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html">WS-BPEL |
| 2.0</a> stands for Web Service Business Process Execution Language. |
| Like EAI, BPEL is an XML-based language, but BPEL is more specific |
| and targeted. BPEL is used by developers to join sometimes disparate |
| functions into an integrated process, resulting in a seamless use of |
| the Internet to conduct business transactions ranging from simple |
| money exchanges to complex calculations and asset reallocation. |
| </p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e70" />1.1. Key Features of JBoss BPEL project |
| </h2> |
| </div> |
| </div> |
| </div> |
| <p>The table below lists the main features of the JBoss BPEL |
| editor:</p> |
| <div class="table"> |
| <a id="d0e75" /> |
| <p class="title"> |
| <b>Table 1.1. Key Functionality for JBoss BPEL editor project</b> |
| </p> |
| <div class="table-contents"> |
| <table summary="Key Functionality for JBoss BPEL editor project" |
| border="1"> |
| <colgroup> |
| <col align="left" /> |
| <col /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th align="left">Feature</th> |
| <th>Benefit</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td align="left"> |
| <p>WS-BPEL 2.0 support</p></td> |
| <td> |
| <p>JBoss BPEL project supports the most recent WS-BPEL 2.0 |
| specifications.</p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>Close integration with JBoss BPEL runtime</p></td> |
| <td> |
| <p>There are two methods to deploy BPEL files to JBoss |
| BPEL runtime. The user can deploy a BPEL project as a whole |
| and can deploy BPEL files in a JBoss ESB project to the JBoss |
| BPEL runtime.</p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>BPEL file editor</p></td> |
| <td> |
| <p>The editor can be used separately to edit a BPEL file. |
| </p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>BPEL file validator</p></td> |
| <td> |
| <p>The validator displays a list of BPEL file errors.</p></td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| </div> |
| </div> |
| <div class="chapter" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="tasks" />Chapter 2. Tasks |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="toc"> |
| <dl> |
| <dt> |
| <span class="section"><a href="#detail">2.1. Creating |
| and editing a BPEL project</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#createproject">2.1.1. |
| Creating a BPEL project</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#createprocess">2.1.2. |
| Creating a BPEL process</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#editprocess">2.1.3. |
| Editing a BPEL process file</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#wsdl">2.1.4. Adding |
| Service to WSDL file</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#deploy">2.2. Deploy a |
| JBoss BPEL project to JBoss BPEL Runtime</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#createdeploy">2.2.1. |
| Creating a deploy.xml file</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#createruntime">2.2.2. |
| Creating JBoss BPEL Server</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e987">2.3. Creating |
| correlation sets</a> |
| </span> |
| </dt> |
| </dl> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="detail" />2.1. Creating and editing a BPEL project |
| </h2> |
| </div> |
| </div> |
| </div> |
| <p> |
| In this chapter we describe the necessary steps to create a new |
| BPEL project and edit the BPEL files. You can get the example |
| source code from |
| <code class="filename">riftsaw/samples/quickstart/hello_world</code> |
| . In this guide we will create a simple echo example, used to |
| respond to a message with a modified version of the request |
| message. |
| </p> |
| <p>The first step is to create a BPEL project.</p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="createproject" />2.1.1. Creating a BPEL project |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| Create the project by selecting <span class="guimenuitem"><strong>File</strong> |
| </span> → <span class="guimenuitem"><strong>New</strong> |
| </span> → <span class="guimenuitem"><strong>Project...</strong> |
| </span> → <span class="guimenuitem"><strong>BPEL 2.0</strong> |
| </span> → <span class="guimenuitem"><strong>BPEL Project</strong> |
| </span> from the menu bar. Then click the <span class="guibutton"><strong>Next</strong> |
| </span> button. |
| </p> |
| <div class="figure"> |
| <a id="d0e165" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_createproject_1.png" |
| alt="New BPEL Project" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.1. New BPEL Project</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| On this page of the <span class="property">New BPEL Project |
| Wizard</span> enter a project name in the <span class="property">Project |
| Name</span> field, e.g. enter <span class="property">HelloWorld</span>. |
| </p> |
| <div class="figure"> |
| <a id="d0e182" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_createproject_2.png" |
| alt="New BPEL Project Wizard" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.2. New BPEL Project Wizard</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Click the <span class="guibutton"><strong>Finish</strong> |
| </span> button. So you have created the BPEL project named <span |
| class="property">HelloWorld</span>. Its structure is like this: |
| </p> |
| <div class="figure"> |
| <a id="d0e196" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_createproject_3.png" |
| alt="The BPEL Project structure" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.3. The BPEL Project structure</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="createprocess" />2.1.2. Creating a BPEL process |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| Now you should create a BPEL process. You can create it by |
| selecting <span class="guimenuitem"><strong>File</strong> |
| </span> → <span class="guimenuitem"><strong>New</strong> |
| </span> → <span class="guimenuitem"><strong>Others...</strong> |
| </span> → <span class="guimenuitem"><strong>BPEL 2.0</strong> |
| </span> → <span class="guimenuitem"><strong>New BPEL |
| Process File</strong> |
| </span>. |
| </p> |
| <div class="figure"> |
| <a id="d0e219" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_createprocess_1.png" |
| alt="New BPEL Process File" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.4. New BPEL Process File</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Click the <span class="guibutton"><strong>Next</strong> |
| </span> button. Enter the following information: |
| </p> |
| <div class="table"> |
| <a id="d0e230" /> |
| <p class="title"> |
| <b>Table 2.1. Fields and values</b> |
| </p> |
| <div class="table-contents"> |
| <table summary="Fields and values" border="1"> |
| <colgroup> |
| <col align="left" /> |
| <col /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th align="left">Field</th> |
| <th>Value</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td align="left"> |
| <p>BPEL Process Name</p></td> |
| <td> |
| <p> |
| Enter a process name. For example, <span class="property">HelloWorld</span>. |
| </p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>Namespace</p></td> |
| <td> |
| <p>Enter or select a namespace for the BPEL process.</p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>Template</p></td> |
| <td> |
| <p> |
| Select the appropriate template for the BPEL process. When |
| you select the template, you will see the information about |
| the template below on the page. In this case you should |
| select <span class="guilabel"><strong>Synchronous |
| BPEL Process</strong> |
| </span>. |
| </p></td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| <div class="figure"> |
| <a id="d0e282" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_createprocess_2.png" |
| alt="New BPEL Process File Wizard" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.5. New BPEL Process File Wizard</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Click the <span class="guibutton"><strong>Next</strong> |
| </span> button. On the second page, you can customize your WSDL service |
| details. Enter the following information: |
| </p> |
| <div class="table"> |
| <a id="d0e293" /> |
| <p class="title"> |
| <b>Table 2.2. Fields and values</b> |
| </p> |
| <div class="table-contents"> |
| <table summary="Fields and values" border="1"> |
| <colgroup> |
| <col align="left" /> |
| <col /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th align="left">Field</th> |
| <th>Value</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td align="left"> |
| <p>Service Name</p></td> |
| <td> |
| <p> |
| A wsdl service name for the BPEL process. The default value |
| is <span class="guilabel"><strong>HelloWorld</strong> |
| </span>. |
| </p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>Port Name</p></td> |
| <td> |
| <p> |
| A wsdl port name for the BPEL process. The default value is |
| <span class="guilabel"><strong>HelloWorldPort</strong> |
| </span>. |
| </p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>Service Address</p></td> |
| <td> |
| <p> |
| An address of the WSDL service for the BPEL process. The |
| default value is <span class="guilabel"><strong>http://localhost:8080/HelloWorld</strong> |
| </span>. |
| </p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>Binding Protocol</p></td> |
| <td> |
| <p> |
| The binding protocol that you use in the wsdl. You can |
| choose SOAP or HTTP. The default value is <span |
| class="guilabel"><strong>SOAP</strong> |
| </span>. |
| </p></td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| <div class="figure"> |
| <a id="d0e362" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_createprocess_2a.png" |
| alt="Create WSDL file for the BPEL Process wizard page" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.6. Create WSDL file for the BPEL Process wizard |
| page</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Click the <span class="guibutton"><strong>Next</strong> |
| </span> button. On the third page, you can select a folder for the |
| process file from the projects in your workspace. If a folder is |
| not selected, the default folder |
| <code class="filename">HelloWorld/bpelContent</code> |
| will be used. Click the <span class="guibutton"><strong>Finish</strong> |
| </span> button. |
| </p> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="note"> |
| <h2>Note</h2> |
| <p> |
| All of your files that are used in your BPEL project must be |
| under the |
| <code class="filename">bpelContent</code> |
| folder of a BPEL project. Only in this case these files can be |
| deployed to JBoss server. |
| </p> |
| </div> |
| <p>This will create a simple BPEL process as shown in the image |
| below.</p> |
| <div class="figure"> |
| <a id="d0e387" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_createprocess_3.png" |
| alt="A simple BPEL Process File" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.7. A simple BPEL Process File</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="editprocess" />2.1.3. Editing a BPEL process file |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| If the <span class="guilabel"><strong>Properties |
| view</strong> |
| </span> and <span class="guilabel"><strong>Palette view</strong> |
| </span> are not opened, you can open the views by right-clicking the BPEL |
| editor and selecting the <span class="guilabel"><strong>Show |
| in Properties</strong> |
| </span> or <span class="guilabel"><strong>Show Palette in |
| Palette view</strong> |
| </span> options. Then you should have the view like this: |
| </p> |
| <div class="figure"> |
| <a id="d0e410" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_editprocess_1.png" |
| alt="The BPEL editor view" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.8. The BPEL editor view</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| In the <span class="guilabel"><strong>Palette</strong> |
| </span> view, you can drag a BPEL element to the BPEL editor and drop it |
| in the place you want. |
| </p> |
| <p> |
| In the <span class="guilabel"><strong>Properties</strong> |
| </span> view, you can view the information on every element in the BPEL |
| process. The contents of the <span class="guilabel"><strong>Properties</strong> |
| </span> view is automatically updated as elements are selected in the |
| BPEL editor. The table below describes the tabs shown in the <span |
| class="guilabel"><strong>Properties</strong> |
| </span> view: |
| </p> |
| <div class="table"> |
| <a id="d0e432" /> |
| <p class="title"> |
| <b>Table 2.3. Tabs of the Property view</b> |
| </p> |
| <div class="table-contents"> |
| <table summary="Tabs of the Property view" border="1"> |
| <colgroup> |
| <col align="left" /> |
| <col /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th align="left">Tab</th> |
| <th>Description</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td align="left"> |
| <p>Description</p></td> |
| <td> |
| <p> |
| Shows the descriptive information about the element, e.g. <span |
| class="property">Name</span> of the element. |
| </p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>Details</p></td> |
| <td> |
| <p>Shows the detailed and important information about the |
| element. It is the most important section of an element. |
| Most of the properties of an element are set in this |
| section.</p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>Join Behavior</p></td> |
| <td> |
| <p> |
| Shows the <span class="property">Join Failure</span> |
| property of the element. |
| </p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>Documentation</p></td> |
| <td> |
| <p> |
| Shows the <span class="property">documentation</span> |
| sub-element of an element. |
| </p></td> |
| </tr> |
| <tr> |
| <td align="left"> |
| <p>Other</p></td> |
| <td> |
| <p>Every BPEL element has its own sections: Correlation |
| section, Message Exchange section, and so on. These sections |
| will be covered in later sections.</p></td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| <p>In order to see how a simple BPEL process works in action, |
| you should do some steps as below:</p> |
| <div class="itemizedlist"> |
| <ul> |
| <li><p>Modify two variables of the process:</p> |
| <div class="itemizedlist"> |
| <ul> |
| <li><p> |
| Click on the details tab of the input variable, and then |
| click the <span class="guibutton"><strong>Browse...</strong> |
| </span> button. |
| </p> |
| <div class="figure"> |
| <a id="d0e522" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/bpel_task_0.png" |
| alt="Select the input variable" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.9. Select the input variable</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Then choose <span class="guilabel"><strong>string</strong> |
| </span> primitive from the list of <span class="guilabel"><strong>Matches</strong> |
| </span>. |
| </p> |
| <div class="figure"> |
| <a id="d0e536" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/bpel_task_1.png" |
| alt="Edit variable in process file" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.10. Edit variable in <span class="property">process</span> |
| file</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| <li><p> |
| Select <span class="guilabel"><strong>xsd</strong> |
| </span> as a namespace in the popup menu. |
| </p> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li><p> |
| Add an <span class="property">Assign</span> element between the |
| <span class="property">receiveInput</span> element and <span |
| class="property">replyOutput</span> element. |
| </p> |
| </li> |
| <li><p> |
| Click the <span class="property">Assign</span> element in the |
| BPEL editor in order to get the properties information of it in |
| the Properties view. |
| </p> |
| </li> |
| <li><p> |
| Set its name in the <span class="property">Description</span> |
| tab as <span class="property">assignHelloMesg</span>. |
| </p> |
| <p> |
| In the <span class="property">Details</span> section of |
| Properties view, you should click the <span class="property">New</span> |
| button to add a <span class="property">copy</span> sub-element |
| to the element. Assign "Variable to Variable"(input:string to |
| output). At this time, an "<span class="property">initializer</span>" |
| popup dialog appears. Click on the <span class="property">Yes</span> |
| button in the dialog. |
| </p> |
| <div class="figure"> |
| <a id="d0e595" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/bpel_task_3.png" |
| alt="Add Assign to the process" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.11. Add <span class="property">Assign</span> |
| to the process</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Then you should click the <span class="guibutton"><strong>New</strong> |
| </span> button once more and select Expression to Variable (assign |
| <code class="code">concat($input,' World')</code> |
| ) to <span class="guilabel"><strong>result:string</strong> |
| </span>. |
| </p> |
| <div class="figure"> |
| <a id="d0e615" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/bpel_task_2.png" |
| alt="Add Expression assign to the process" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.12. Add <span class="property">Expression |
| assign</span> to the process</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="wsdl" />2.1.4. Adding Service to WSDL file |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p /> |
| <p> |
| The |
| <code class="filename">HelloWorldArtifacts.wsdl</code> |
| file is added a service when you create a BPEL process file. A |
| default service is already defined in this WSDL file. However, if |
| you want to add your own service, follow the steps below: |
| </p> |
| <div class="itemizedlist"> |
| <ul> |
| <li><p> |
| Open the file |
| <code class="filename">HelloWorldArtifacts.wsdl</code> |
| in the <span class="guilabel"><strong>HelloWorld</strong> |
| </span> project by double-clicking the file. Right-click the WSDL |
| editor and select the <span class="guilabel"><strong>Add |
| Service</strong> |
| </span> option. A new service should appear in the editor. Name it <span |
| class="guilabel"><strong>HelloWorldProcessService</strong> |
| </span>. It has the Port named <span class="guilabel"><strong>NewPort</strong> |
| </span>. Select it, right-click on it and rename it to <span |
| class="guilabel"><strong>HelloWorldProcessPort</strong> |
| </span> in the <span class="guilabel"><strong>Properties</strong> |
| </span> view. |
| </p> |
| <div class="figure"> |
| <a id="d0e658" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_editprocess_3.png" |
| alt="Add Service to the WSDL file" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.13. Add <span class="property">Service</span> |
| to the WSDL file</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| <li><p> |
| Right-click somewhere in the whitespace of the WSDL editor and |
| select the <span class="guilabel"><strong>Add |
| Binding</strong> |
| </span> option. A new Binding component will appear in the editor. |
| Name it <span class="guilabel"><strong>HelloWorldSOAPBinding</strong> |
| </span>. Select it, and in the <span class="guilabel"><strong>General</strong> |
| </span> tab of the <span class="guilabel"><strong>Properties</strong> |
| </span> view and select <span class="guilabel"><strong>HelloWorld</strong> |
| </span> as a port type in the <span class="guilabel"><strong>PortType</strong> |
| </span> field. Then click on the <span class="guibutton"><strong>Generate |
| Binding Content...</strong> |
| </span> button to open the <span class="guilabel"><strong>Binding |
| Wizard</strong> |
| </span>. In the wizard, select <span class="guilabel"><strong>SOAP</strong> |
| </span> as the <span class="guilabel"><strong>Protocol</strong> |
| </span>. Finally, click the <span class="guibutton"><strong>Finish</strong> |
| </span> button to close the wizard. |
| </p> |
| <div class="figure"> |
| <a id="d0e703" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_editprocess_4.png" |
| alt="Add a Binding to the WSDL file" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.14. Add a <span class="property">Binding</span> |
| to the WSDL file</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| <li><p> |
| Click the <span class="guilabel"><strong>HelloWorldProcessPort</strong> |
| </span> property in the <span class="guilabel"><strong>General</strong> |
| </span> section of the <span class="guilabel"><strong>Properties</strong> |
| </span> view, select <span class="guilabel"><strong>HelloWorldSOAPBinding</strong> |
| </span> in the <span class="guilabel"><strong>Binding</strong> |
| </span> combobox. Enter <a class="ulink" |
| href="http://localhost:8080/bpel/processes/HelloWorld?wsdl">http://localhost:8080/bpel/processes/HelloWorld?wsdl</a> |
| in the <span class="guilabel"><strong>Address</strong> |
| </span> field. |
| </p> |
| <div class="figure"> |
| <a id="d0e736" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/detail_editprocess_5.png" |
| alt="Add the HelloWorldSOAPBinding to the HelloWorldProcessPort" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.15. Add the <span class="property">HelloWorldSOAPBinding</span> |
| to the <span class="property">HelloWorldProcessPort</span> </b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="deploy" />2.2. Deploy a JBoss BPEL project to JBoss BPEL |
| Runtime |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="createdeploy" />2.2.1. Creating a deploy.xml file |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| If you want to deploy a BPEL project to the JBoss BPEL Runtime, a |
| <code class="filename">deploy.xml</code> |
| file needs to be created. The steps below show you how to create |
| this file: |
| </p> |
| <div class="itemizedlist"> |
| <ul> |
| <li><p> |
| Create the |
| <code class="filename">deploy.xml</code> |
| file by selecting <span class="guimenuitem"><strong>File</strong> |
| </span> → <span class="guimenuitem"><strong>New</strong> |
| </span> → <span class="guimenuitem"><strong>Other...</strong> |
| </span> → <span class="guimenuitem"><strong>BPEL 2.0</strong> |
| </span> → <span class="guimenuitem"><strong>Apache ODE |
| Deployment Descriptor</strong> |
| </span>. Click the <span class="guibutton"><strong>Next</strong> |
| </span> button. |
| </p> |
| <div class="figure"> |
| <a id="d0e782" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/deploy_createdeploy_1.png" |
| alt="New BPEL Deploy file" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.16. New BPEL Deploy file</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| <li><p>On the next wizard page you should enter the |
| following information:</p> |
| <p> |
| <span class="emphasis"><em><span class="property">BPEL |
| Project</span> </em> |
| </span>: Click the <span class="guibutton"><strong>Browse...</strong> |
| </span> button to select the BPEL project in your workspace where you |
| want to deploy to the runtime. Please note that you should |
| select the |
| <code class="filename">bpelContent</code> |
| folder in your new BPEL project for the <span class="property">BPEL |
| Project</span> field because this is the correct location for the |
| <code class="filename">deploy.xml</code> |
| file. |
| </p> |
| <p> |
| <span class="emphasis"><em><span class="property">File |
| name</span> |
| </em> |
| </span>: The default value is |
| <code class="filename">deploy.xml</code> |
| . This should not be changed. |
| </p> |
| <p> |
| Click on the <span class="guibutton"><strong>Finish</strong> |
| </span> button to close the wizard and a new |
| <code class="filename">deploy.xml</code> |
| file will be created. |
| </p> |
| <div class="figure"> |
| <a id="d0e827" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/deploy_createdeploy_2.png" |
| alt="New BPEL Deploy file Wizard" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.17. New BPEL Deploy file Wizard</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| <li><p> |
| Double-click the |
| <code class="filename">deploy.xml</code> |
| file to open it in <span class="guilabel"><strong>ODE |
| Descriptor Deployment Editor</strong> |
| </span>. In the <span class="guilabel"><strong>Inbound |
| Interfaces</strong> |
| </span> section, click the <span class="guilabel"><strong>Associated |
| Port</strong> |
| </span> column and select <span class="guilabel"><strong>HelloWorldProcessPort</strong> |
| </span> in the combobox.The <span class="guilabel"><strong>Related |
| Service</strong> |
| </span> and <span class="guilabel"><strong>Binding |
| Used</strong> |
| </span> columns should be automatically filled in. Save the changes to |
| the |
| <code class="filename">deploy.xml</code> |
| file. |
| </p> |
| <div class="figure"> |
| <a id="d0e860" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/deploy_createdeploy_3.png" |
| alt="deploy.xml file editor" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.18. deploy.xml file editor</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="createruntime" />2.2.2. Creating JBoss BPEL Server |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| Once you have installed the <span class="property">JBoss |
| BPEL Runtime-RiftSaw</span>, you can create a server for JBoss BPEL |
| runtime. |
| </p> |
| <div class="itemizedlist"> |
| <ul> |
| <li><p> |
| Open the <span class="guilabel"><strong>Servers</strong> |
| </span> view by selecting <span class="guimenuitem"><strong>Windows</strong> |
| </span> → <span class="guimenuitem"><strong>Show View</strong> |
| </span> → <span class="guimenuitem"><strong>Other...</strong> |
| </span> → <span class="guimenuitem"><strong>Server</strong> |
| </span> → <span class="guimenuitem"><strong>Servers</strong> |
| </span>. |
| </p> |
| </li> |
| <li><p> |
| Right-click the <span class="guilabel"><strong>Servers</strong> |
| </span> view and select <span class="guimenuitem"><strong>New</strong> |
| </span> → <span class="guimenuitem"><strong>Server</strong> |
| </span> to open the <span class="guilabel"><strong>New |
| Server</strong> |
| </span> wizard: |
| </p> |
| <div class="figure"> |
| <a id="d0e909" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/deploy_createdeploy_4.png" |
| alt="New Server Wizard" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.19. New Server Wizard</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| <li><p> |
| Select <span class="guilabel"><strong>JBoss AS |
| 5.1</strong> |
| </span> as a server type. |
| </p> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="note"> |
| <h2>Note</h2> |
| <p>Please note, that only JBoss As 5.1 or higher version |
| supports BPEL.</p> |
| </div> |
| </li> |
| <li><p> |
| Click the <span class="guibutton"><strong>Next</strong> |
| </span> button. On the next page, you should input your <span |
| class="productname">JBoss As</span>™ location. Then click the |
| <span class="guibutton"><strong>Next</strong> |
| </span> button and you will get the page like this: |
| </p> |
| <div class="figure"> |
| <a id="d0e936" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/deploy_createdeploy_5.png" |
| alt="Add resource to the server" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.20. Add resource to the server</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| <li><p> |
| Select <span class="guilabel"><strong>HelloWorld</strong> |
| </span>, then click the <span class="guibutton"><strong>Add</strong> |
| </span> button to add the project to the server. Finally, click the <span |
| class="guibutton"><strong>Finish</strong> |
| </span> button. |
| </p> |
| <p> |
| Start the server by right-clicking on the server and selecting |
| the <span class="guilabel"><strong>Start</strong> |
| </span> item. |
| </p> |
| <div class="figure"> |
| <a id="d0e959" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/deploy_createdeploy_6.png" |
| alt="The started server" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.21. The started server</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Read the <a class="ulink" |
| href="http://download.jboss.org/jbosstools/nightly-docs/en/as/html_single/index.html">JBoss |
| Server Manager Reference Guide</a> for more detail on this |
| process. |
| </p> |
| </li> |
| <li><p> |
| You can enter the link <a class="ulink" |
| href="http://localhost:8080/bpel-console/app.html">http://localhost:8080/bpel-console/app.html</a> |
| in your web browser to access the deployed processes. |
| </p> |
| <div class="figure"> |
| <a id="d0e976" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/deploy_createdeploy_7.png" |
| alt="The BPEL console" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.22. The BPEL console</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| </ul> |
| </div> |
| <p> |
| Please visit the <a class="ulink" |
| href="http://www.jboss.com/index.html?module=bb&op=viewforum&f=201">JBoss |
| Tools Users Forum</a> for more information and assistance. |
| </p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e987" />2.3. Creating correlation sets |
| </h2> |
| </div> |
| </div> |
| </div> |
| <p>Correlation sets are used to identify ongoing conversations |
| between a client and the BPEL process. Typically, a correlation is |
| an element in a message that uniquely identifies the conversation |
| between client and service; for example, an Order ID or Social |
| Security Number. This also identifies a specific process instance |
| being managed by the BPEL engine.</p> |
| <p>In many cases a single element of a message is not enough to |
| make it unique, so correlations can be defined as composites of |
| several fields. Since a conversation can involve many different |
| types of messages. Different correlations will need to be defined |
| for each message type.</p> |
| <p> |
| To create a correlation for a messaging activity (for example: <span |
| class="property">Invoke</span>, <span class="property">Receive</span>, |
| <span class="property">Reply</span>), select the activity and then |
| click <span class="guibutton"><strong>Add</strong> |
| </span> on the <span class="guilabel"><strong>Correlation |
| Detail</strong> |
| </span> property tab. This will display the <span class="guilabel"><strong>Select |
| a Property</strong> |
| </span> dialog. |
| </p> |
| <div class="figure"> |
| <a id="d0e1014" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Handlers_07.png" |
| alt="Select a Property" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.23. Select a Property</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| You canselect an existing property defined in the WSDL or click <span |
| class="guibutton"><strong>New</strong> |
| </span> to create a new WSDL property, which will display the <span |
| class="guilabel"><strong>Create Message Property</strong> |
| </span> dialog. |
| </p> |
| <div class="figure"> |
| <a id="d0e1028" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Handlers_08.png" |
| alt="Create Message Property" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.24. Create Message Property</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>Enter a name for the new WSDL property and its type. Either |
| an XSD simple type or an XML Schema element.</p> |
| <p> |
| Next, click the <span class="guibutton"><strong>Browse</strong> |
| </span> button to select a type. This will display the <span |
| class="guilabel"><strong>Type Selection</strong> |
| </span> dialog. |
| </p> |
| <p> |
| Click <span class="guilabel"><strong>New</strong> |
| </span> in the <span class="guilabel"><strong>Aliases</strong> |
| </span> section to create a new WSDL property alias. |
| </p> |
| <div class="figure"> |
| <a id="d0e1052" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Handlers_09.png" |
| alt="Create Property Alias" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 2.25. Create Property Alias</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Select either the <span class="guilabel"><strong>Message |
| Type</strong> |
| </span>, XSD <span class="guilabel"><strong>Simple Type</strong> |
| </span> or XML scheme <span class="guilabel"><strong>Element</strong> |
| </span> radio button and click <span class="guibutton"><strong>Browse</strong> |
| </span> to select its type. Then click <span class="guibutton"><strong>OK</strong> |
| </span>. |
| </p> |
| </div> |
| </div> |
| <div class="chapter" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="reference" />Chapter 3. Reference |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="toc"> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e1089">3.1. Wizards</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e1092">3.1.1. New |
| BPEL project</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e1135">3.1.2. New |
| BPEL Process file</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a |
| href="#Reference-Wizard-Deployment_Descriptor">3.1.3. New |
| BPEL Deployment Descriptor</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e1360">3.2. |
| Perspectives</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e1363">3.2.1. BPEL |
| Perspective</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#Reference-Views">3.3. |
| Views</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e1390">3.3.1. |
| Outline</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e1412">3.3.2. |
| Palette</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e1471">3.3.3. |
| Dashboard</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a |
| href="#Reference-Property_sections">3.3.4. Property |
| sections</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e2434">3.4. Editors</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e2437">3.4.1. BPEL |
| Designer</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3246">3.4.2. BPEL |
| Deployment Descriptor editor</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e3300">3.5. |
| Preference pages</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e3305">3.5.1. |
| Editor</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3316">3.5.2. |
| Expression editors</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3327">3.5.3. WSIL |
| browser</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e3340">3.6. Dialogs</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e3343">3.6.1. XPath |
| expression editor (embedded control)</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3367">3.6.2. Quick |
| pick (embedded control)</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3378">3.6.3. Type |
| selection</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a |
| href="#Reference-Dialog-WSDL_Selection">3.6.4. Select WSDL |
| property</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3483">3.6.5. |
| Create WSDL property</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3530">3.6.6. |
| Create WSDL property alias</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e3560">3.6.7. Cheat |
| sheets</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| <dt> |
| <span class="section"><a href="#d0e3591">3.7. Icons, |
| buttons and menus</a> |
| </span> |
| </dt> |
| <dd> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e3596">3.7.1. |
| Context menu</a> |
| </span> |
| </dt> |
| </dl> |
| </dd> |
| </dl> |
| </div> |
| <p> |
| Described are the user interface controls of BPEL Designer, and how |
| they relate to the OASIS standard. If you are new to BPEL it is |
| recommended that you first become familiar with the concepts |
| surrounding the technology, detailed in <a class="xref" href="#">???</a>. |
| </p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e1089" />3.1. Wizards |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e1092" />3.1.1. New BPEL project |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| The New BPEL Project wizard creates a faceted project which allows |
| it to be deployed to the JBoss Riftsaw runtime engine. It is |
| available by selecting <span class="guimenuitem"><strong>File</strong> |
| </span> → <span class="guimenuitem"><strong>New</strong> |
| </span> → <span class="guimenuitem"><strong>Other</strong> |
| </span> → <span class="guimenuitem"><strong>BPEL 2.0</strong> |
| </span> → <span class="guimenuitem"><strong>BPEL Project</strong> |
| </span>. |
| </p> |
| <div class="figure"> |
| <a id="d0e1109" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/New_BPEL_Project.png" |
| alt="New BPEL Project Wizard" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.1. New BPEL Project Wizard</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>The wizard consists of a single page:</p> |
| <p>Enter the project name and select its location. When the |
| wizard is completed the following files would have been created:</p> |
| <div class="itemizedlist"> |
| <ul> |
| <li><p> |
| <code class="filename">bpelContent</code> |
| folder |
| </p> |
| </li> |
| <li><p>Project facet metadata</p> |
| </li> |
| </ul> |
| </div> |
| <p> |
| The |
| <code class="filename">bpelContent</code> |
| folder contains all the files necessary for your project. This |
| includes all WSDL and XSD files. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e1135" />3.1.2. New BPEL Process file |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| The <span class="guilabel"><strong>New BPEL |
| Process File Wizard</strong> |
| </span> will create a BPEL process based on one of several templates |
| defined by the wizard. The wizard assumes the new BPEL process is |
| to be created in the curently selected project of the <span |
| class="guilabel"><strong>Project Explorer</strong> |
| </span> or <span class="guilabel"><strong>Navigator</strong> |
| </span> view. If a BPEL process of the same name already exists within |
| the project, a warning message will be displayed before any action |
| is performed. |
| </p> |
| <div class="figure"> |
| <a id="d0e1149" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Create_a_BPEL_Process_File_01.png" |
| alt="New BPEL Process" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.2. New BPEL Process</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div class="itemizedlist"> |
| <ul> |
| <li><p>The first page includes the following options:</p> |
| <div class="table"> |
| <a id="d0e1159" /> |
| <p class="title"> |
| <b>Table 3.1. New BPEL Process file wizard. First page |
| options.</b> |
| </p> |
| <div class="table-contents"> |
| <table |
| summary="New BPEL Process file wizard. First page options." |
| border="1"> |
| <colgroup> |
| <col align="left" /> |
| <col align="left" /> |
| <col align="left" /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th align="left">Field</th> |
| <th align="left">Description</th> |
| <th align="left">Default</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td align="left">Name</td> |
| <td align="left">Enter the process name.</td> |
| <td align="left">no default value</td> |
| </tr> |
| <tr> |
| <td align="left">Namespace</td> |
| <td align="left">Enter the namespace URL. All |
| namespaces should follow the W3C recommendation (<a |
| class="ulink" href="http://www.w3.org/1999/10/nsuri"> |
| http://www.w3.org/1999/10/nsuri</a>).</td> |
| <td align="left">no default value</td> |
| </tr> |
| <tr> |
| <td align="left">Template</td> |
| <td align="left">Select one of the provided templates: |
| <div class="itemizedlist"> |
| <ul> |
| <li><p> |
| <span class="emphasis"><em>Asynchronous |
| BPEL Process</em> |
| </span> - generates the basis of orchestration logic: receive |
| and reply activities are included into the process; |
| client WSDL is generated, service is defined in the <span |
| class="property">parentlink</span> of the process. |
| The caller is notified asynchronously when the process |
| completes. |
| </p> |
| </li> |
| <li><p> |
| <span class="emphasis"><em>Empty BPEL |
| Process</em> |
| </span> - list of services participating in this BPEL process |
| together with the one of messages used within the |
| process is empty.There are no any orchestration logic. |
| </p> |
| </li> |
| <li><p> |
| <span class="emphasis"><em>Synchronous |
| BPEL Process</em> |
| </span> - similar to Asynchronous BPEL Process template |
| except the fact that here the caller is notified |
| synchronously when the process completes. |
| </p> |
| </li> |
| </ul> |
| </div> |
| </td> |
| <td align="left">Asynchronous BPEL Process</td> |
| </tr> |
| <tr> |
| <td align="left">Abstract Process</td> |
| <td align="left">Specifies the created process as an |
| abstract one -partially specified processes that are not |
| intended to be executed.</td> |
| <td align="left">unchecked</td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| <p>The second page of the wizard defines the process |
| interface (WSDL file) including the web service address, port |
| definition and protocol. The wizard will populate all of these |
| fields with appropriate default values based on the information |
| provided on the previous page.</p> |
| <div class="figure"> |
| <a id="d0e1227" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Create_a_BPEL_Process_File_02.png" |
| alt="New BPEL Process" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.3. New BPEL Process</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </li> |
| <li><p>The second page includes the following options:</p> |
| <div class="table"> |
| <a id="d0e1236" /> |
| <p class="title"> |
| <b>Table 3.2. New BPEL process file wizard. Second page |
| options.</b> |
| </p> |
| <div class="table-contents"> |
| <table |
| summary="New BPEL process file wizard. Second page options." |
| border="1"> |
| <colgroup> |
| <col align="left" /> |
| <col align="left" /> |
| <col align="left" /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th align="left">Field</th> |
| <th align="left">Description</th> |
| <th align="left">Default</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td align="left">Service Name</td> |
| <td align="left">Enter a WDSL service name for the |
| BPEL process.</td> |
| <td align="left">The process name</td> |
| </tr> |
| <tr> |
| <td align="left">Port Name</td> |
| <td align="left">Enter a WDSL port name for the BPEL |
| process.</td> |
| <td align="left">The process name + 'Port'</td> |
| </tr> |
| <tr> |
| <td align="left">Service Address</td> |
| <td align="left">Enter an address of the WDSL service |
| for the BPEL process.</td> |
| <td align="left">http://localhost:8080/ + process name |
| </td> |
| </tr> |
| <tr> |
| <td align="left">Binding Protocol</td> |
| <td align="left">Choose the binding protocol that you |
| use in the WDSL: SOAP or HTTP</td> |
| <td align="left">SOAP</td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| </li> |
| <li><p>The final page allows you to select the target |
| project and folder for the new process artifacts. If a process |
| with the name you provided already exists in that project and |
| folder, the wizard will display an error message.</p> |
| <p> |
| If the project is not a BPEL Project (does not define a BPEL |
| facet) the wizard will display a warning message. You can still |
| create the BPEL process, however it will not be deployable to a |
| BPEL runtime engine until the BPEL facet has been added to the |
| project (see the <span class="guimenuitem"><strong>Help</strong> |
| </span> menu for more information about project facets). |
| </p> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="important"> |
| <h2>Important</h2> |
| <p> |
| BPEL artifacts must be contained somewhere within the |
| <code class="filename">bpelContent</code> |
| folder hierarchy if you intend to deploy the process. Complex |
| projects may be organized into a folder hierarchy, but these |
| folders must be contained within |
| <code class="filename">bpelContent</code> |
| . |
| </p> |
| <p> |
| The |
| <code class="filename">Deployment Descriptor</code> |
| file must be contained within the |
| <code class="filename">bpelContent</code> |
| folder and at the root of any folder hierarchy. |
| </p> |
| </div> |
| <div class="figure"> |
| <a id="d0e1306" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Create_a_BPEL_Process_File_03.png" |
| alt="New BPEL Process" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.4. New BPEL Process</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>You will be asked if you wish for the BPEL persepective to |
| be opened once this wizard completes.</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="Reference-Wizard-Deployment_Descriptor" />3.1.3. New |
| BPEL Deployment Descriptor |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| Use this wizard to create a |
| <code class="filename">Deployment Descriptor</code> |
| file. This file is a manifest for the web service and is required |
| if the BPEL process is to be deployed to a runtime engine. |
| </p> |
| <div class="figure"> |
| <a id="d0e1322" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Deyployment_Descriptor_01.png" |
| alt="BPEL Deployment Descriptor" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.5. BPEL Deployment Descriptor</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div class="itemizedlist"> |
| <ul> |
| <li><p>The page includes the following options:</p> |
| <div class="table"> |
| <a id="d0e1332" /> |
| <p class="title"> |
| <b>Table 3.3. New BPEL Process file wizard. First page |
| options.</b> |
| </p> |
| <div class="table-contents"> |
| <table |
| summary="New BPEL Process file wizard. First page options." |
| border="1"> |
| <colgroup> |
| <col align="left" /> |
| <col align="left" /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th align="left">Field</th> |
| <th align="left">Description</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td align="left">BPEL Project</td> |
| <td align="left">Select the project and folder where |
| the new <code class="filename">Deployment |
| Descriptor</code> will be created. This must also be the root |
| folder that contains the BPEL processes.</td> |
| </tr> |
| <tr> |
| <td align="left">File name</td> |
| <td align="left">This field is automatically filled |
| and cannot be edited.</td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| <p>The BPEL Deployment Descriptor Editor will open once this |
| wizard completes.</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e1360" />3.2. Perspectives |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e1363" />3.2.1. BPEL Perspective |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| The BPEL Perspective is designed to facilitate the development and |
| deployment of BPEL processes and their artifacts. To open this |
| perspective navigate to <span class="guimenuitem"><strong>Window</strong> |
| </span> → <span class="guimenuitem"><strong>Open |
| Perspective</strong> |
| </span> → <span class="guimenuitem"><strong>Other</strong> |
| </span> → <span class="guimenuitem"><strong>BPEL</strong> |
| </span> and click <span class="guibutton"><strong>OK</strong> |
| </span>. |
| </p> |
| <div class="figure"> |
| <a id="d0e1381" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Perspective_01.png" |
| alt="BPEL Perspective default layout" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.6. BPEL Perspective default layout</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="Reference-Views" />3.3. Views |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e1390" />3.3.1. Outline |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| The <span class="guilabel"><strong>Outline</strong> |
| </span> view provides a structural layout of the BPEL process. You can |
| view the process as either a hierarchical tree-structured outline |
| (<span class="inlinemediaobject"><img |
| src="images/reference/View_Outline_icon_01.png" /> |
| </span>) or as a thumbnail view (<span class="inlinemediaobject"><img |
| src="images/reference/View_Outline_icon_02.png" /> |
| </span>), by pressing the associated button. |
| </p> |
| <div class="figure"> |
| <a id="d0e1406" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/View_Outline_01.png" |
| alt="Outline view" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.7. Outline view</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e1412" />3.3.2. Palette |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| The primary editing, creation and viewing tools of the BPEL |
| Designer are accessed from the <span class="guilabel"><strong>Palette</strong> |
| </span>. The <span class="guilabel"><strong>Palette</strong> |
| </span> can be docked either at the right or left edge of the BPEL |
| Designer main window, or it can be detached and displayed in its |
| own view. |
| </p> |
| <div class="figure"> |
| <a id="d0e1423" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Palette_01.png" alt="Palette" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.8. Palette</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <h5 xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="formalpara">Selection Tools</h5> |
| <p class="formalpara"> |
| The <span class="guilabel"><strong>Selection Tool</strong> |
| </span> is used to select individual activities in the editors drawing |
| canvas. Multiple activities can be selected by holding the <span |
| class="keycap"><strong>CTRL</strong> |
| </span> or <span class="keycap"><strong>SHIFT</strong> |
| </span> keys in combination with left mouse click. The <span |
| class="guilabel"><strong>Marquee Tool</strong> |
| </span> allows selection of groups of activities by dragging a selection |
| rectangle around them. |
| </p> |
| <h5 xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="formalpara">Tool Drawers</h5> |
| <p class="formalpara"> |
| BPEL activities are created by dragging icons from the labeled <span |
| class="guilabel"><strong>Actions</strong> |
| </span>, <span class="guilabel"><strong>Controls</strong> |
| </span> and <span class="guilabel"><strong>Faults</strong> |
| </span> palette sections (or drawers), onto the editor’s drawing canvas. |
| These sections can be collapsed and expanded by clicking on |
| individual palette section titles. They can also be <span |
| class="emphasis"><em>pinned</em> |
| </span> to prevent them from collapsing if another section is expanded. |
| </p> |
| <h5 xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="formalpara">Zoom Tools</h5> |
| <p class="formalpara"> |
| The tools at the bottom of the <span class="guilabel"><strong>Palette</strong> |
| </span> are used to expand or shrink the drawing canvas. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e1471" />3.3.3. Dashboard |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p>This panel is embedded in the BPEL Designer canvas and |
| provides a quick overview of the BPEL elements that are defined |
| for the currently selected activity or BPEL process.</p> |
| <div class="figure"> |
| <a id="d0e1476" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Dashboard_01.png" alt="Palette" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.9. Palette</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The process name appears at the top of the Dashboard. The main |
| Dashboard area lists all of the <span class="guilabel"><strong>Partner |
| Links</strong> |
| </span>, <span class="guilabel"><strong>Variables</strong> |
| </span>,<span class="guilabel"><strong>Correlation Sets</strong> |
| </span> and <span class="guilabel"><strong>Message |
| Exchanges</strong> |
| </span> currently defined for the process. The green plus symbol and grey |
| x symbol allow you to add and delete each of these elements. |
| In-line editing of all element names works by selecting the name |
| and then clicking again to enable the editor. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="Reference-Property_sections" />3.3.4. Property sections |
| </h3> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h4 class="title"> |
| <a id="d0e1499" />3.3.4.1. Common property section tabs |
| </h4> |
| </div> |
| </div> |
| </div> |
| <p>This section describes the Property Sheet tabs that are |
| common to many activities.</p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1504" />3.3.4.1.1. Description tab |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1507" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Common_Property_Tabs_01.png" |
| alt="Description tab" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.10. Description tab</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="guilabel"><strong>Description</strong> |
| </span> tab contains the activity name. Names must follow XML element |
| naming conventions, limiting characters to letters, numbers and |
| certain special characters only (spaces are not permited). For |
| further information on XML element naming conventions, see <a |
| class="ulink" href="http://www.w3.org/TR/xml/">http://www.w3.org/TR/xml/</a> |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1521" />3.3.4.1.2. Join Behavior tab |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1524" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Common_Property_Tabs_02.png" |
| alt="Join Behavior tab" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.11. Join Behavior tab</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Join conditions are evaluated by the target activities of links. |
| With the drop-down <span class="guilabel"><strong>Expression |
| language</strong> |
| </span> menu, enter an XPath expression that defines the condition of |
| the join. The <span class="guilabel"><strong>Suppress |
| Join Failure</strong> |
| </span> behavior defined by the process or a containing scope can be |
| overridden with the radio buttons at the bottom. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1538" />3.3.4.1.3. Correlation tab |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1541" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Common_Property_Tabs_03.png" |
| alt="Correlation tab" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.12. Correlation tab</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="guilabel"><strong>Correlation</strong> |
| </span> tab lists all correlations that are used by the currently |
| selected <span class="guilabel"><strong>Receive</strong> |
| </span>, <span class="guilabel"><strong>Reply</strong> |
| </span> or <span class="guilabel"><strong>Invoke</strong> |
| </span> activity. Correlations can be added to or removed from the |
| activity through this tab. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="Common_Property_sheet_tabs-Namespaces_tab" />3.3.4.1.4. Namespaces |
| tab |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1569" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Common_Property_Tabs_04.png" |
| alt="Namespaces tab" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.13. Namespaces tab</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>Namespaces are URIs (Uniform Resource Identifiers) that |
| uniquely identify a set of resources on the Internet. Because |
| URIs can be very lengthy, shorthand aliases called prefixes are |
| typically defined and used in XML files to make the XML more |
| readable.</p> |
| <p> |
| The <span class="guilabel"><strong>Namespaces</strong> |
| </span> tab lists all of the namespace URIs and their prefixes in scope |
| for the currently selected activity. Whenever you create a |
| reference to an external property (an element defined in an XSD) |
| whose namespace has not yet been assigned a prefix, the BPEL |
| Designer will prompt you to create a prefix. This can also be |
| done beforehand through the <span class="guilabel"><strong>Namespace</strong> |
| </span> tab of the <span class="guilabel"><strong>Properties</strong> |
| </span> sheet for the property by clicking the <span class="guibutton"><strong>Assign |
| Prefix</strong> |
| </span> button. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1591" />3.3.4.1.5. Message Exchange tab |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1594" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Common_Property_Tabs_05.png" |
| alt="Message Exchange tab" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.14. Message Exchange tab</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Message exchanges are used to associate a <span class="property">Reply</span> |
| activity with an <span class="property">inbound message</span> |
| activity and can be either a <span class="property">Receive</span>, |
| <span class="property">OnMessage</span> or <span |
| class="property">OnEvent</span>. These are descriptive names |
| given to a request-response conversation between two parties and |
| must conform to XML element naming conventions. For further |
| informaiton on XML element naming conventions, see <a |
| class="ulink" href="http://www.w3.org/TR/xml/">http://www.w3.org/TR/xml/</a>. |
| </p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h4 class="title"> |
| <a id="d0e1620" />3.3.4.2. Process Property sheet tabs |
| </h4> |
| </div> |
| </div> |
| </div> |
| <p>This section describes the Property Sheet tabs that are |
| unique to process activities.</p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1625" />3.3.4.2.1. Description tab |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1628" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Property_Sheet_01.png" |
| alt="Description tab" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.15. Description tab</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="guilabel"><strong>Description</strong> |
| </span> tab allows you to change the process name and its namespace |
| URI. All namespaces should follow the W3C recommendation (<a |
| class="ulink" href="http://www.w3.org/2005/07/13-nsuri">http://www.w3.org/2005/07/13-nsuri</a>. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1642" />3.3.4.2.2. Details tab |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1645" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Property_Sheet_02.png" |
| alt="Details tab" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.16. Details tab</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="guilabel"><strong>Process |
| Details</strong> |
| </span> tab allows you to select the default <span class="guilabel"><strong>Expression</strong> |
| </span> and <span class="guilabel"><strong>Query</strong> |
| </span> language. If you set <span class="guilabel"><strong>Exit |
| on Standard Fault</strong> |
| </span> to <span class="guilabel"><strong>Yes</strong> |
| </span>, it will cause the process to terminate if a WS-BPEL standard |
| fault, other than a join failure, is encountered. |
| </p> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="note"> |
| <h2>Note</h2> |
| <p>Currently only XPath 1.0 is supported.</p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1671" />3.3.4.2.3. Join Behavior tab |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1674" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Property_Sheet_03.png" |
| alt="Join Behavior tab" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.17. Join Behavior tab</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="guilabel"><strong>Process Join |
| Behavior</strong> |
| </span> tab determines how the process will handle join failures. When |
| set to <span class="guilabel"><strong>Yes</strong> |
| </span>, any |
| <code class="exceptionname">JoinFailure</code> |
| fault (detailed in the WS-BPEL Standard Faults section of the |
| OASIS specification: <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#_Toc164738543">http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#_Toc164738543</a>) |
| will be ignored for all activities in the process. An activity |
| is able override this value, or inherit the value from its |
| parent. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1694" />3.3.4.2.4. Imports tab |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1697" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Property_Sheet_04.png" |
| alt="Imports tab" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.18. Imports tab</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="guilabel"><strong>Imports |
| Detail</strong> |
| </span> tab lists all of the imported service interfaces (WSDL) and XML |
| Schemas (XSD) used by the process. Additional WSDL and XSD files |
| can be added to the imports on this page. After a new resource |
| has been imported, you may assign a prefix to the namespace URI |
| from the <span class="guilabel"><strong>Namespaces</strong> |
| </span> tab. |
| </p> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="note"> |
| <h2>Note</h2> |
| <p> |
| Imported resources must be located in the project root folder ( |
| <code class="filename">bpelContent</code> |
| by default) or in a sub-folder. |
| </p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1717" />3.3.4.2.5. Namespaces |
| </h5> |
| </div> |
| </div> |
| </div> |
| <p> |
| For information on the <span class="guilabel"><strong>Namespaces</strong> |
| </span> tab, see <a class="xref" |
| href="#Common_Property_sheet_tabs-Namespaces_tab" |
| title="3.3.4.1.4. Namespaces tab">Section 3.3.4.1.4, |
| “Namespaces tab”</a> |
| </p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h4 class="title"> |
| <a id="d0e1727" />3.3.4.3. Details tab |
| </h4> |
| </div> |
| </div> |
| </div> |
| <p> |
| This section describes the <span class="guilabel"><strong>Details</strong> |
| </span> tab and its attributes as they will appear for individual |
| activities. Several activities share common detail elements, but |
| all are presented here for your reference. |
| </p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1735" />3.3.4.3.1. Partner Links |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1738" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_01.png" |
| alt="Partner Links" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.19. Partner Links</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| <span class="property">Partner Links</span> help define the |
| conversations between two services. They define the roles each |
| partner plays in the conversation and the types of messages that |
| can be exchanged between them. |
| </p> |
| <p> |
| The <span class="guilabel"><strong>Details</strong> |
| </span> tab allows you to choose the <span class="guilabel"><strong>Expression |
| language</strong> |
| </span> and <span class="guilabel"><strong>Query |
| language</strong> |
| </span> for selecting elements of a <span class="property">Partner |
| Link</span>. |
| </p> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="note"> |
| <h2>Note</h2> |
| <p>Currently only XPath 1.0 is supported.</p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1766" />3.3.4.3.2. Variables |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1769" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_02.png" alt="Variables" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.20. Variables</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| <span class="property">Variables</span> are used in BPEL to |
| store inbound and outbound messages for examination and |
| manipulation by the business logic; they can also be used to |
| save intermediate results and the process state. There are three |
| kinds of variable declarations: messages types, XML Schema types |
| and XML Schema elements. |
| </p> |
| <p> |
| The <span class="guilabel"><strong>Details</strong> |
| </span> tab allows you to define the variable declared type and its |
| structure by selecting from known types. Once a variable type |
| has been defined, the structure of the variable is shown. |
| Clicking on the hyperlink will open the WSDL or XML Schema |
| editor for the selected type or element. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1787" />3.3.4.3.3. Empty |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1790" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_03.png" alt="Empty" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.21. Empty</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Empty</span> activity is a |
| placeholder for any undefined <span class="property">Basic |
| Activity</span> and is intended to eventually be replaced by a real |
| activity before the process can actually be executed. If the |
| BPEL engine encounters an <span class="property">Empty</span> |
| activity, it is ignored. |
| </p> |
| <p> |
| The <span class="guilabel"><strong>Details</strong> |
| </span> tab allows you to select one of four basic actions: <span |
| class="property">Invoke</span>, <span class="property">Receive</span>, |
| <span class="property">Reply</span> and <span class="property">Assign</span>. |
| Hovering the mouse over one of the selection buttons displays a |
| brief description of that activity. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="Reference-Details_tab-Invoke" />3.3.4.3.4. Invoke |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1827" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_04.png" alt="Invoke" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.22. Invoke</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Invoke</span> activity requires a <span |
| class="property">Partner Link</span> name and an <span |
| class="property">Operation</span> as defined in the WSDL for |
| that service. You can use the <span class="guilabel"><strong>Quick |
| Pick</strong> |
| </span> tree control at the right to select the <span class="property">Partner |
| Link</span> and <span class="property">Operation</span>. For one-way |
| invocations of the service, specify only an <span |
| class="property">Input Variable</span>; for request-response |
| invocations you must also specify an <span class="property">Output |
| Variable</span>. |
| </p> |
| <p> |
| The checkbox labeled <span class="guilabel"><strong>Use |
| WSDL Message Parts Mapping</strong> |
| </span> provides an alternative to using variables for the request |
| message. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="Reference-Details_tab-Receive" />3.3.4.3.5. Receive |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1867" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_05.png" alt="Receive" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.23. Receive</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| A <span class="property">Receive</span> activity requires a <span |
| class="property">Partner Link</span> name and an Operation as |
| defined in the WSDL for this service. You can use the <span |
| class="guilabel"><strong>Quick Pick</strong> |
| </span> tree control at the right to select the <span class="property">Partner |
| Link</span> and <span class="property">Operation</span>. A previously |
| defined variable can be used to hold the message data, or the <span |
| class="guilabel"><strong>Use WSDL Message Parts |
| Mapping</strong> |
| </span> checkbox can be set to store the incoming message in an |
| anonymous WSDL message variable. |
| </p> |
| <p> |
| The <span class="guilabel"><strong>Create a new |
| Process Instance</strong> |
| </span> checkbox, when enabled, will cause the BPEL engine to start a |
| new process. This will start a new conversation with a client. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="Reference-Details_tab-Reply" />3.3.4.3.6. Reply |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e1901" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_06.png" alt="Reply" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.24. Reply</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| A <span class="property">Reply</span> activity requires a <span |
| class="property">Partner Link</span> name and an <span |
| class="property">Operation</span> as defined in the WSDL for |
| this service. You can use the <span class="guilabel"><strong>Quick |
| Pick</strong> |
| </span> tree control at the right to select the <span class="property">Partner |
| Link</span> and <span class="property">Operation</span>. A previously |
| defined variable can be used to provide the response message |
| data, or the <span class="guilabel"><strong>Use |
| WSDL Message Parts Mapping</strong> |
| </span> checkbox can be set to use the data from the anonymous WSDL |
| message variable. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e1930" />3.3.4.3.7. Opaque |
| </h5> |
| </div> |
| </div> |
| </div> |
| <p> |
| <span class="property">Opaque</span> activities are only used in |
| abstract processes, and are meant as placeholders for other |
| activities or complex business logic that has not yet been |
| determined. When you drag and drop an <span class="property">Opaque</span> |
| activity onto the drawing canvas, the process will be converted |
| to a non-executable, abstract process. The BPEL Designer will |
| inform you about this by displaying a warning dialog. |
| </p> |
| <div class="figure"> |
| <a id="d0e1941" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_07-Opaque_Warning.png" |
| alt="Opaque" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.25. Opaque</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="Reference-Details_tab-Assign" />3.3.4.3.8. Assign |
| </h5> |
| </div> |
| </div> |
| </div> |
| <p> |
| The <span class="property">Assign</span> section is probably one |
| of the more complex pages in the BPEL Designer, due to the |
| nature of the BPEL <span class="property">Assign</span> |
| activity. The figure below shows the detail tab of an empty <span |
| class="property">Assign</span> activity with callouts |
| describing each component: |
| </p> |
| <div class="figure"> |
| <a id="d0e1961" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_08.png" alt="Assign" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.26. Assign</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="orderedlist"> |
| <ol> |
| <li><p>List (initially empty) of assignment operations |
| currently defined.</p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>From</strong> |
| </span> combo box for selecting the source element category. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>To</strong> |
| </span> combo box for selecting the target element category. |
| </p> |
| </li> |
| <li><p> |
| Contents and order management buttons. The <span |
| class="guibutton"><strong>New</strong> |
| </span> button adds a new assignment operation to the list. When |
| clicked, the <span class="guilabel"><strong>From</strong> |
| </span> and <span class="guilabel"><strong>To</strong> |
| </span> combo boxes become active and display <span class="property">Variable</span>. |
| These allow you to select the source and categories for |
| target items. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Validate |
| checkbox</strong> |
| </span>; when enabled will cause the BPEL engine to validate the |
| data after the assignment. If an error is detected it will |
| cause a fault, which can be caught by a fault handler in the |
| BPEL process. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Ignore Missing |
| Source Data checkbox</strong> |
| </span>; When enabled, missing source data is not considered an |
| error (no fault will be generated). |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Keep Source |
| Element Name checkbox</strong> |
| </span>; when enabled, the complex target variable element names |
| will not be replaced by the source element names if they |
| differ. |
| </p> |
| </li> |
| </ol> |
| </div> |
| <p> |
| The following figure shows the detail tab of an <span |
| class="property">Assign</span> activity which has an XPath |
| expression as the source (<span class="guilabel"><strong>From</strong> |
| </span>) and a process variable element as the target (<span |
| class="guilabel"><strong>To</strong> |
| </span>): |
| </p> |
| <div class="figure"> |
| <a id="d0e2027" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_08b.png" alt="Assign" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.27. Assign</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>A requirement of the BPEL language is that all complex |
| variables must be initialized with valid XML before they are |
| referenced either as a target of an assignment, or in another |
| BPEL activity. The BPEL Designer understands this and, once you |
| have selected the target of an assignment operation, it will ask |
| if you would like to have an XML fragment generated for the |
| target variable:</p> |
| <div class="figure"> |
| <a id="d0e2036" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_08c-Initializer.png" |
| alt="Assign" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.28. Assign</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Unless you are certain that the variable has been initialized |
| during a previous assignment operation or other activity, you |
| should click <span class="guibutton"><strong>Yes</strong> |
| </span>. The figure below shows the <span class="property">Assign</span> |
| details tab after the initializer has been generated: |
| </p> |
| <div class="figure"> |
| <a id="d0e2050" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_08d.png" alt="Assign" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.29. Assign</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <h5 xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="formalpara">Assignment Operation Categories</h5> |
| <p class="formalpara"> |
| Additional type selection or data entry widgets will appear |
| below the <span class="guilabel"><strong>From</strong> |
| </span> and <span class="guilabel"><strong>To</strong> |
| </span> combo boxes, depending on the source and target item categories |
| selected in the combo boxes. Initially these will be controls |
| for the selection of process variables, since the default combo |
| box selection is <span class="property">Variable</span>. The |
| possible source and target categories are described in the |
| following table: |
| </p> |
| <div class="table"> |
| <a id="d0e2070" /> |
| <p class="title"> |
| <b>Table 3.4. Possible source and target categories</b> |
| </p> |
| <div class="table-contents"> |
| <table summary="Possible source and target categories" |
| border="1"> |
| <colgroup> |
| <col align="left" /> |
| <col align="left" /> |
| <col align="left" /> |
| <col align="left" /> |
| <col align="left" /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th align="left">Category</th> |
| <th align="left">Control type</th> |
| <th align="left">Can be source?</th> |
| <th align="left">Can be target?</th> |
| <th align="left">Further information</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td align="left">Variable</td> |
| <td align="left">Tree</td> |
| <td align="left">Yes</td> |
| <td align="left">Yes</td> |
| <td align="left">Select an in-scope variable or any |
| portion if it is a complex variable. The target of the |
| assignment must have the same type (for simple variables) |
| or structure (for complex variables) as the source.</td> |
| </tr> |
| <tr> |
| <td align="left">Expression</td> |
| <td align="left">XPath</td> |
| <td align="left">Yes</td> |
| <td align="left">Yes</td> |
| <td align="left">Enter a valid XPath expression with |
| the XPath editor. For targets, the expression must resolve |
| to an L-Value; that is, it must be a variable reference.</td> |
| </tr> |
| <tr> |
| <td align="left">Fixed Value</td> |
| <td align="left">Text</td> |
| <td align="left">Yes</td> |
| <td align="left">No</td> |
| <td align="left">Enter a valid XML fragment that is |
| compatible in structure and data type with the target.</td> |
| </tr> |
| <tr> |
| <td align="left">Property of a Variable</td> |
| <td align="left">List</td> |
| <td align="left">Yes</td> |
| <td align="left">Yes</td> |
| <td align="left">N/A</td> |
| </tr> |
| <tr> |
| <td align="left">Partner Link reference</td> |
| <td align="left">List</td> |
| <td align="left">Yes</td> |
| <td align="left">Yes</td> |
| <td align="left">N/A</td> |
| </tr> |
| <tr> |
| <td align="left">Endpoint reference</td> |
| <td align="left">List</td> |
| <td align="left">Yes</td> |
| <td align="left">No</td> |
| <td align="left">N/A</td> |
| </tr> |
| <tr> |
| <td align="left">Opaque</td> |
| <td align="left">None</td> |
| <td align="left">Yes</td> |
| <td align="left">No</td> |
| <td align="left">N/A</td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="Reference-Details_tab-Validate" />3.3.4.3.9. Validate |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2172" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_09.png" alt="Validate" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.30. Validate</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Validate</span> details tab contains |
| a list of variables to be validated. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2183" />3.3.4.3.10. While and RepeatUntil |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2186" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_10.png" |
| alt="While and RepeatUntil" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.31. While and RepeatUntil</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>These activities have the same details tab, which allows |
| you to specify an XPath expression to be evaluated for the |
| conditional activity.</p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2196" />3.3.4.3.11. Link |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2199" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_11.png" alt="Link" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.32. Link</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Link</span> detail tab allows you to |
| specify a condition that will cause <span class="property">Flow</span> |
| synchronization to be satisfied and allow the target activity to |
| continue. This is similar to the details tab of the other |
| conditional activities. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2213" />3.3.4.3.12. Pick |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2216" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_12.png" alt="Pick" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.33. Pick</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Pick</span> details tab allows you to |
| specify whether the event will create a new process instance. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="Reference-Details_tab-OnMessage" />3.3.4.3.13. OnMessage |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2232" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_13.png" alt="OnMessage" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.34. OnMessage</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">OnMessage</span> activity is used in |
| either a <span class="property">Pick</span> or event handler. |
| </p> |
| <p> |
| The <span class="guilabel"><strong>Details</strong> |
| </span> tab allows you to specify the <span class="property">Partner |
| Link</span>, <span class="property">Operation</span> and <span |
| class="property">Message Type</span> expected by the activity, |
| and the process variable that will contain the received message |
| data. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="Reference-Details_tab-OnAlarm" />3.3.4.3.14. OnAlarm |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2263" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_14.png" alt="OnAlarm" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.35. OnAlarm</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">OnAlarm</span> activity is used in |
| either a <span class="property">Pick</span> or event handler to |
| handle timeouts while waiting for messages to arrive. This |
| activity can be configured to wait for a certain period of time |
| or until a specific date and time. |
| </p> |
| <p> |
| The <span class="guilabel"><strong>Details</strong> |
| </span> tab allows you to specify the <span class="property">Partner |
| Link</span>, <span class="property">Operation</span> and <span |
| class="property">Message Type</span> expected by the activity, |
| and the process variable that will contain the received message |
| data. |
| </p> |
| <p> |
| <span class="guilabel"><strong>Repeat</strong> |
| </span> conditions are only allowed for an <span class="property">OnAlarm</span> |
| in an event handler. This allows the activities enclosed in the |
| activity to be executed repeatedly. <span class="guilabel"><strong>Repeat</strong> |
| </span> duration is the amount of time the process will wait before |
| each repetition. The <span class="guilabel"><strong>Repeat</strong> |
| </span> screen follows: |
| </p> |
| <div class="figure"> |
| <a id="d0e2305" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_14b.png" alt="OnAlarm" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.36. OnAlarm</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2311" />3.3.4.3.15. ForEach |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2314" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_15.png" alt="ForEach" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.37. ForEach</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The details tab of the <span class="property">ForEach</span> |
| activity allows you to specify a counter variable to be used for |
| keeping track of the loop iterations. The <span class="guilabel"><strong>Parallel |
| execution</strong> |
| </span> checkbox, when enabled, will execute all iterations in |
| parallel. |
| </p> |
| <div class="figure"> |
| <a id="d0e2330" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_15b.png" alt="ForEach" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.38. ForEach</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="guilabel"><strong>Counter |
| Values</strong> |
| </span> tab is where the required starting and ending counter values |
| are specified. |
| </p> |
| <div class="figure"> |
| <a id="d0e2341" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_15c.png" alt="ForEach" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.39. ForEach</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The optional <span class="guilabel"><strong>Completion</strong> |
| </span> tab allows you to specify the early termination condition for |
| the loop. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="Reference-Details_tab-Wait" />3.3.4.3.16. Wait |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2355" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_16.png" alt="Wait" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.40. Wait</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The details tab of the <span class="property">Wait</span> |
| activity allows you set a delay (<span class="property">Duration</span>) |
| or specify a date and time (<span class="property">Date</span>) |
| for when to continue process execution. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2372" />3.3.4.3.17. Scope |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2375" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_17.png" alt="Scope" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.41. Scope</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The details tab for the <span class="property">Scope</span> |
| activity allows you to define whether the Scope is <span |
| class="guilabel"><strong>isolated</strong> |
| </span>. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2391" />3.3.4.3.18. Throw |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2394" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_18.png" alt="Throw" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.42. Throw</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Throw</span> activity will invoke a |
| fault handler in an enclosing <span class="property">Scope</span> |
| activity. <span class="property">Throw</span> requires the name |
| of either a standard BPEL fault, or the name of a user-defined |
| fault message. A variable is used to hold the value of the fault |
| data. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2411" />3.3.4.3.19. CompensateScope |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2414" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Details_tab_19.png" |
| alt="CompensateScope" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.43. CompensateScope</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">CompensateScope</span> activity will |
| invoke a compensation handler in the <span class="property">Scope</span> |
| or the <span class="property">Invoke</span> activity given by |
| the name of the <span class="guilabel"><strong>Target |
| Activity</strong> |
| </span>. |
| </p> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e2434" />3.4. Editors |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e2437" />3.4.1. BPEL Designer |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| This section discusses the features of the BPEL Designer. See <a |
| class="xref" href="#Reference-Views" title="3.3. Views">Section 3.3, |
| “Views”</a> for a detailed discussion of each of these features. |
| </p> |
| <div class="figure"> |
| <a id="d0e2444" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_01.png" |
| alt="BPEL Designer" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.44. BPEL Designer</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="orderedlist"> |
| <ol> |
| <li><p> |
| <span class="emphasis"><em>Drawing Canvas</em> |
| </span>: This contains the graphical representation of the BPEL |
| process and is displayed when the <span class="guilabel"><strong>Design</strong> |
| </span> tab at the bottom of the editor window is selected. The |
| primary mouse click action (default is left mouse button) on |
| any of the activity names activates an in-line editor, allowing |
| you to edit the process name. To finish editing, simply press |
| the <span class="keycap"><strong>ENTER</strong> |
| </span> key or change focus by clicking on a different window control. |
| </p> |
| <p> |
| The <span class="guilabel"><strong>Source</strong> |
| </span> tab displays the XML (text) representation of the process. Any |
| changes made in one view are immediately reflected in the |
| other. The default layout of activities is top-to-bottom, but |
| can be changed to horizontal layout from the context menu. |
| </p> |
| </li> |
| <li><p> |
| <span class="emphasis"><em>Palette</em> |
| </span>: The primary editing, creation and viewing tools of the BPEL |
| Designer are accessed from the tool <span class="guilabel"><strong>Palette</strong> |
| </span>. |
| </p> |
| </li> |
| <li><p> |
| <span class="emphasis"><em>Dashboard</em> |
| </span>: Provides an overview of the BPEL process. |
| </p> |
| </li> |
| <li><p> |
| <span class="emphasis"><em>Property Sheet</em> |
| </span>: When an activity is selected in the drawing canvas, its |
| properties are displayed in the tabbed <span class="guilabel"><strong>Properties</strong> |
| </span> sheet. |
| </p> |
| </li> |
| <li><p> |
| <span class="emphasis"><em>Outline</em> |
| </span>: This panel provides a structural view of the BPEL process. |
| </p> |
| </li> |
| </ol> |
| </div> |
| <p> |
| The BPEL Designer will validate your business process every time |
| it is saved. If an activity is found to be incomplete or |
| incorrectly configured, it will be decorated with an error icon |
| (red circle with an X) as for example the <span class="property">Assign</span> |
| activity below: |
| </p> |
| <div class="figure"> |
| <a id="d0e2503" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_02.png" |
| alt="Assign error" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.45. Assign error</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>Hovering your mouse over this icon will display an error |
| message in a tooltip:</p> |
| <div class="figure"> |
| <a id="d0e2511" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_03.png" |
| alt="Assign error with tooltip" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.46. Assign error with tooltip</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>The remainder of this section discusses some basic BPEL |
| concepts and how they relate to the BPEL Designer.</p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h4 class="title"> |
| <a id="d0e2519" />3.4.1.1. Basic activities |
| </h4> |
| </div> |
| </div> |
| </div> |
| <p> |
| Basic activities are represented on the drawing canvas as rounded |
| rectangles containing an icon and the user-defined name of the |
| activity. The <span class="guilabel"><strong>Actions</strong> |
| </span> section of the <span class="guilabel"><strong>Palette</strong> |
| </span> contains all of the basic activities. For example: <span |
| class="property">Assign</span>, <span class="property">Invoke</span> |
| and <span class="property">Receive</span>. |
| </p> |
| <p> |
| Most basic activities will require some additional configuration. |
| See <a class="xref" href="#Reference-Property_sections" |
| title="3.3.4. Property sections">Section 3.3.4, “Property |
| sections”</a> for more information. |
| </p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2543" />3.4.1.1.1. Start and End |
| </h5> |
| </div> |
| </div> |
| </div> |
| <p> |
| Every BPEL process has implicit <span class="property">Start</span> |
| <span class="inlinemediaobject"><img |
| src="images/reference/BPEL_Designer_04.png" /> |
| </span> and <span class="property">End</span> <span |
| class="inlinemediaobject"><img |
| src="images/reference/BPEL_Designer_05.png" /> |
| </span> activities. These do not correspond to actual BPEL elements |
| however, and are simply placeholders for visualizing the |
| beginning and end of the process flow. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2562" />3.4.1.1.2. Assign |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2565" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_06.png" |
| alt="Assign activity" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.47. Assign activity</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Assign</span> activity allows you to |
| manipulate variables and message contents that are defined in |
| the process. See <a class="xref" |
| href="#Reference-Details_tab-Assign" title="3.3.4.3.8. Assign">Section 3.3.4.3.8, |
| “Assign”</a> for more information. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2578" />3.4.1.1.3. Invoke |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2581" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_07.png" |
| alt="Invoke activity" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.48. Invoke activity</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Invoke</span> activity is used to |
| send a message to an external service (one-way invocation), and |
| optionally wait for a response (request and response). An <span |
| class="property">Invoke</span> can also define a compensation |
| handler and a fault handler to handle exception conditions. See |
| <a class="xref" href="#Reference-Details_tab-Invoke" |
| title="3.3.4.3.4. Invoke">Section 3.3.4.3.4, “Invoke”</a> for |
| more information. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2597" />3.4.1.1.4. Receive |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2600" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_08.png" |
| alt="Receive activity" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.49. Receive activity</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Receive</span> activity will wait for |
| a specific message type from a service client. See <a |
| class="xref" href="#Reference-Details_tab-Receive" |
| title="3.3.4.3.5. Receive">Section 3.3.4.3.5, “Receive”</a> for |
| more information. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2613" />3.4.1.1.5. Reply |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2616" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_09.png" |
| alt="Reply activity" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.50. Reply activity</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Reply</span> activity is used to |
| respond to clients with a specific message type, or fault |
| message (if defined for the process interface). See <a |
| class="xref" href="#Reference-Details_tab-Reply" |
| title="3.3.4.3.6. Reply">Section 3.3.4.3.6, “Reply”</a> for |
| more information. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2629" />3.4.1.1.6. Validate |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2632" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_10.png" |
| alt="Validate Input activity" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.51. Validate Input activity</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Validate</span> activity is used to |
| validate the values of variables against their XML Schema and |
| WSDL data definitions. This includes the variable’s data type as |
| well as structure. If validation fails, the BPEL standard fault |
| invalidVariables is thrown. |
| </p> |
| <p> |
| Validation is typically performed just before sending messages |
| to a partner or client, or after receiving a message to ensure |
| the message contains all required data and that the data is as |
| expected. See <a class="xref" |
| href="#Reference-Details_tab-Validate" |
| title="3.3.4.3.9. Validate">Section 3.3.4.3.9, “Validate”</a> |
| for more information. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2647" />3.4.1.1.7. Wait |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2650" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_11.png" |
| alt="Wait activity" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.52. Wait activity</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| A <span class="property">Wait</span> activity will delay process |
| execution for a certain amount of time, or until a given date |
| and time; this is typically used to invoke an operation at a |
| certain time. For example to update process state hourly or |
| daily, or to collect some information from another service at a |
| certain time of day. See <a class="xref" |
| href="#Reference-Details_tab-Wait" title="3.3.4.3.16. Wait">Section 3.3.4.3.16, |
| “Wait”</a> for more information. |
| </p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h4 class="title"> |
| <a id="d0e2663" />3.4.1.2. Structured activities |
| </h4> |
| </div> |
| </div> |
| </div> |
| <p> |
| Structured activities can be thought of as containers that can |
| hold one or more activities. The <span class="guilabel"><strong>Controls</strong> |
| </span> section of the <span class="guilabel"><strong>Palette</strong> |
| </span> contains all of the <span class="emphasis"><em>structured |
| activities</em> |
| </span>. When you drag and drop one of these onto the drawing canvas, |
| the BPEL Designer will create a basic skeleton of the activity, |
| and assign default properties. |
| </p> |
| <p> |
| All structured activities will require some additional |
| configuration before they are considered valid. For example, BPEL |
| does not allow an empty <span class="property">Sequence</span> |
| activity. Invalid structured activities will be decorated with an |
| error icon similar to basic activities. |
| </p> |
| <p> |
| Structured activities can be expanded and collapsed on the |
| drawing canvas by clicking the plus and minus buttons at the |
| bottom of the figure. Illustrated below is a collapsed and |
| expanded <span class="property">Sequence</span>: |
| </p> |
| <div class="figure"> |
| <a id="d0e2687" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_12.png" |
| alt="Collapsed Sequence" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.53. Collapsed Sequence</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div class="figure"> |
| <a id="d0e2693" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_13.png" |
| alt="Expanded Sequence" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.54. Expanded Sequence</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>The following sections describe the structured activities |
| and how each must be configured to be considered vaid for BPEL.</p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2701" />3.4.1.2.1. If |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2704" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_14.png" |
| alt="If, ElseIf and Else" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.55. If, ElseIf and Else</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">If</span> activity allows conditional |
| execution of one or more sequences of activities. It consists of |
| a sequence of one or more conditional branches defined by <span |
| class="property">If</span> and optional <span class="property">ElseIf</span> |
| elements. The elements are evaluated in left-to-right order (or |
| top-to-bottom if you have selected horizontal layout). An |
| optional <span class="property">Else</span> branch will be |
| executed if none of the other conditions are true. |
| </p> |
| <p> |
| An <span class="property">If</span> activity must define a |
| condition (expressed as an XPath) and an activity which is |
| executed if the condition evaluates true. To insert additional <span |
| class="property">ElseIf</span> and <span class="property">Else</span> |
| elements, right-click the <span class="property">If</span> |
| figure and select the desired element from the context menu. The |
| figure above shows a complete <span class="property">If</span> |
| activity with optional <span class="property">ElseIf</span> and |
| <span class="property">Else</span> elements. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2747" />3.4.1.2.2. Pick |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2750" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_15.png" alt="Pick" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.56. Pick</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Pick</span> activity will cause the |
| process to wait for one of any number of messages to be |
| received. An optional timer can be set to limit the time to wait |
| for receipt of these messages. Activities to handle receipt of |
| messages and timer expiration are defined in the <span |
| class="property">Pick</span>. Message receipts are handled by <span |
| class="property">OnMessage</span> activities (<a class="xref" |
| href="#Reference-Details_tab-OnMessage" |
| title="3.3.4.3.13. OnMessage">Section 3.3.4.3.13, |
| “OnMessage”</a>), and timer expiration is handled by the <span |
| class="property">OnAlaram</span> activity (<a class="xref" |
| href="#Reference-Details_tab-OnAlarm" |
| title="3.3.4.3.14. OnAlarm">Section 3.3.4.3.14, “OnAlarm”</a>). |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2774" />3.4.1.2.3. While |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2777" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_16.png" alt="While" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.57. While</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">While</span> activity repeatedly |
| executes the contained activity as long as a condition evaluates |
| true at the beginning of each iteration. A <span |
| class="property">While</span> activity must define a condition |
| and must contain an activity. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2791" />3.4.1.2.4. ForEach |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2794" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_17.png" alt="ForEach" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.58. ForEach</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| <span class="property">ForEach</span> is a looping activity that |
| executes the activities contained in its <span class="property">Scope</span> |
| a specified number of times. A counter variable, defined in the |
| <span class="property">ForEach</span> property detail tab, is |
| used to keep track of the iterations. The <span class="property">ForEach</span> |
| properties must be configured with starting and ending value |
| expressions for this counter variable. The counter is initially |
| set to the starting value and activities in the <span |
| class="property">Scope</span> are executed until the counter |
| exceeds the ending value. |
| </p> |
| <p> |
| This activity can also be configured to execute all iterations |
| in parallel, meaning the enclosed <span class="property">Scope</span> |
| activity behaves as if multiple <span class="property">Scopes</span> |
| are enclosed in a <span class="property">Flow</span> activity. |
| </p> |
| <p> |
| An optional early termination value can be defined, which will |
| cause the loop to complete before the counter has reached its |
| ending value. The <span class="property">ForEach</span> will |
| complete when the counter is equal to this early termination |
| value for the sequential execution case. For the parallel |
| execution case, the early termination value is the number of |
| completed iterations. For example, the <span class="property">ForEach</span> |
| completes when at least <span class="emphasis"><em>some |
| number</em> |
| </span> of <span class="emphasis"><em>some action</em> |
| </span> have finished. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2842" />3.4.1.2.5. RepeatUntil |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2845" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_18.png" |
| alt="RepeatUntil" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.59. RepeatUntil</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">RepeatUntil</span> activity |
| repeatedly executes the contained activity as long as a |
| condition evaluates true at the end of each iteration. A |
| condition must be defined for a <span class="property">RepeatUntil</span>, |
| and it must contain an activity. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2859" />3.4.1.2.6. Sequence |
| </h5> |
| </div> |
| </div> |
| </div> |
| <p> |
| A <span class="property">Sequence</span> is a container for one |
| or more other activities, which are executed in sequential order |
| and (unlike <span class="property">Scope</span> and <span |
| class="property">Flow</span> activities), has no other special |
| characteristics. Because the conditional activities (<span |
| class="property">If</span>, <span class="property">While</span>, |
| <span class="property">RepeatUntil</span> and <span |
| class="property">ForEach</span>) can have only one activity as |
| the target of their execution, a <span class="property">Sequence</span> |
| is typically used to execute multiple activities. |
| </p> |
| <p> |
| For example, the <span class="property">If</span> shown below |
| contains only a single Assign activity: |
| </p> |
| <div class="figure"> |
| <a id="d0e2893" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_19.png" |
| alt="Sequence" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.60. Sequence</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| If it were necessary to perform an assignment and then invoke |
| another web service, the <span class="property">Assign</span> |
| and <span class="property">Invoke</span> could be contained |
| within a <span class="property">Sequence</span>. The <span |
| class="property">Sequence</span> would then become the target |
| of the <span class="property">If</span>: |
| </p> |
| <div class="figure"> |
| <a id="d0e2916" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_20.png" |
| alt="Sequence" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.61. Sequence</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="note"> |
| <h2>Note</h2> |
| <p> |
| The BPEL Designer will automatically create a <span |
| class="property">Sequence</span> if you drag-drop a second |
| activity into any of the conditional activities. |
| </p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e2928" />3.4.1.2.7. Scope |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e2931" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_21.png" alt="Scope" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.62. Scope</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| A <span class="property">Scope</span> provides a context for its |
| enclosed activity. This context includes variables, partner |
| links, message exchanges, correlation sets, event handlers, |
| fault handlers, a compensation handler and a termination |
| handler. These <span class="property">Scope</span> contexts can |
| be nested hierarchically where the root context is provided by |
| the process itself. |
| </p> |
| <p> |
| A <span class="property">Scope</span> can be thought of as a |
| compartmentalized sub-process. If the <span class="property">Scope</span> |
| is declared as being <span class="emphasis"><em>isolated</em> |
| </span>, then the variables and partner links shared with the process |
| are locked to prevent other concurrent <span class="property">Scopes</span> |
| from altering them while a <span class="property">Scope</span> |
| is executing. <span class="property">Scope</span> may also be |
| nested to any depth and all variables, partner links and others |
| defined in a <span class="property">Scope</span>, are inherited |
| by its children. Refer to <a class="xref" |
| href="#Reference-BPEL_Designer-Structured_Activities-Flow" |
| title="3.4.1.2.8. Flow">Section 3.4.1.2.8, “Flow”</a> for a |
| discussion of concurrent execution. |
| </p> |
| <p> |
| To be valid, a <span class="property">Scope</span> must have a |
| single activity. The typical use of a Scope activity is to |
| invoke a service and wait for a response message or timeout. In |
| the above figure, the <span class="property">Scope</span> has |
| defined a message variable and a partner link used to interact |
| with the invoked service. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="Reference-BPEL_Designer-Structured_Activities-Flow" />3.4.1.2.8. Flow |
| </h5> |
| </div> |
| </div> |
| </div> |
| <p> |
| The <span class="property">Flow</span> activity allows multiple |
| activities to be executed in parallel. All activities or <span |
| class="property">Sequences</span> of activities that are |
| contained in a <span class="property">Flow</span>, are executed |
| (or begun) at the same time by the BPEL engine. A <span |
| class="property">Flow</span> completes when all of its enclosed |
| activities have completed. |
| </p> |
| <p> |
| Parallel processing is typically used to save time by doing more |
| than one thing at a time and as a result, speed up the process. |
| However, in many situations several tasks can be started at the |
| same time, but one or more tasks may depend on the successful |
| completion of other tasks. This task dependency sequencing is |
| called <span class="emphasis"><em>synchronization</em> |
| </span> and is achieved using <span class="property">Links</span>. |
| </p> |
| <p>For example, a process that handles purchase orders for |
| material goods needs to:</p> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="orderedlist"> |
| <ol> |
| <li><p>Calculate the total order price</p> |
| </li> |
| <li><p>Calculate shipping costs for the order</p> |
| </li> |
| <li><p>Send a customer invoice</p> |
| </li> |
| </ol> |
| </div> |
| <p>All of these activities can be started at the same time, |
| however the shipping cost must be finalized before the total |
| order price can be determined, and the invoice can be sent.</p> |
| <p> |
| To create a <span class="property">Link</span>, right-click on |
| the activity that must be completed first (the activity that is |
| the <span class="emphasis"><em>source</em> |
| </span> of the dependency) and select <span class="guimenuitem"><strong>Add |
| Link</strong> |
| </span> from the context menu. Next, move the mouse to the activity in |
| the <span class="property">Flow</span> that depends on this one |
| (the <span class="emphasis"><em>target</em> |
| </span>) and click the left mouse button to create the link. |
| </p> |
| <p> |
| A <span class="property">Link</span> is identified by a name |
| that must be unique within the <span class="property">Flow</span>. |
| The BPEL Designer generates a reasonable default name, but you |
| can change this in its properties. You can also add a test to |
| the <span class="property">Link</span> that defines the |
| conditions for considering an activity to be complete. For |
| example an activity in a <span class="property">Flow</span> may |
| require two pieces of information, provided by other services, |
| in order to continue. Consider the process <span |
| class="property">Flow</span> shown below: |
| </p> |
| <div class="figure"> |
| <a id="d0e3051" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_22.png" |
| alt="Flow example" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.63. Flow example</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| In this example, the <span class="emphasis"><em>Billing</em> |
| </span> department can begin preparation of a customer invoice, but it |
| needs to know if sufficient stock is on hand to fulfill the |
| order and if an outside vendor needs to provide the additional |
| quantities ordered. The following condition would enable the <span |
| class="property">Link</span> so that execution can continue for |
| the price calculation and customer invoicing: |
| </p> |
| <div class="figure"> |
| <a id="d0e3065" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/BPEL_Designer_23.png" |
| alt="Link example" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.64. Link example</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>This process is only partially complete though as it does |
| not consider the number of outside vendors, or if the total |
| quantity being ordered can ever be filled.</p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h4 class="title"> |
| <a id="d0e3073" />3.4.1.3. Fault Activities |
| </h4> |
| </div> |
| </div> |
| </div> |
| <p>Fault activities cause the normal process execution flow to |
| jump to a specialized handler, similar to exceptions in modern |
| programming languages. There are five different types of fault |
| activities, described in this section.</p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e3078" />3.4.1.3.1. Exit |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e3081" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Fault_Activities_01.png" alt="Exit" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.65. Exit</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Exit</span> activity causes the |
| process to immediately terminate. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e3092" />3.4.1.3.2. Throw |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e3095" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Fault_Activities_02.png" |
| alt="Throw" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.66. Throw</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Throw</span> activity propagates a |
| specified fault to its ancestor <span class="property">Scope</span>, |
| or the process itself. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e3109" />3.4.1.3.3. Rethrow |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e3112" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Fault_Activities_03.png" |
| alt="Rethrow" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.67. Rethrow</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| A <span class="property">Rethrow</span> activity can only be |
| used inside a fault handler. It is used to propagate the fault |
| that was caught by the handler, using the original fault data. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e3123" />3.4.1.3.4. Compensate |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e3126" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Fault_Activities_04.png" |
| alt="Compensate" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.68. Compensate</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">Compensate</span> activity is used to |
| invoke a compensation handler. This activity can only be used |
| within a fault handler, compensation handler or termination |
| handler. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e3137" />3.4.1.3.5. CompensateScope |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e3140" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Fault_Activities_05.png" |
| alt="CompensateScope" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.69. CompensateScope</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="property">CompensateScope</span> activity is |
| used to invoke a compensation handler in the enclosing <span |
| class="property">Scope</span>. This activity can only be used |
| within a fault handler, compensation handler or termination |
| handler. |
| </p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h4 class="title"> |
| <a id="d0e3154" />3.4.1.4. Faulot, compensation, termination |
| and event handlers |
| </h4> |
| </div> |
| </div> |
| </div> |
| <p>Handlers allow a BPEL process to recover from exception |
| conditions. Exception conditions include: a timeout waiting for a |
| response from a partner service, invalid or missing message data, |
| a fault condition returned by a service. There are four types of |
| handlers:</p> |
| <div class="itemizedlist"> |
| <ul> |
| <li><p> |
| Fault handler <span class="inlinemediaobject"><img |
| src="images/reference/Handlers_01.png" /> |
| </span>: Executed when a fauly is thrown by an activity. |
| </p> |
| </li> |
| <li><p> |
| Compensation handler <span class="inlinemediaobject"><img |
| src="images/reference/Handlers_02.png" /> |
| </span>: Executed when the BPEL process encounters a <span |
| class="property">Compensate</span> or <span class="property">CompensateScope</span> |
| activity. |
| </p> |
| </li> |
| <li><p> |
| Temination handler <span class="inlinemediaobject"><img |
| src="images/reference/Handlers_03.png" /> |
| </span>: Executed if a <span class="property">Scope</span> is forced |
| to terminate early. |
| </p> |
| </li> |
| <li><p> |
| Event handler <span class="inlinemediaobject"><img |
| src="images/reference/Handlers_04.png" /> |
| </span>: Executed for events include the receipt of a message and a |
| timer expiration. |
| </p> |
| </li> |
| </ul> |
| </div> |
| <p>Handlers are defined for the process or for certain |
| activities. To create a new handler right-click an activity and |
| select the desired handler from its context menu. The BPEL |
| Designer will generate a skeleton of the handler within a |
| collapsible window that is attached to the activity. The figure |
| below illustrates all of the different types of handlers in their |
| fully expanded view. The handler windows can be collapsed and |
| expanded by clicking on their respective icon.</p> |
| <div class="figure"> |
| <a id="d0e3199" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Handlers_05.png" |
| alt="Handlers overview" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.70. Handlers overview</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The behavior of handlers and the order of exception processing is |
| complex and beyond the scope of this document. Refer to the OASIS |
| WS-BPEL 2.0 specification at <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.html">http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.html</a> |
| for more information. |
| </p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e3210" />3.4.1.4.1. Process-level Handlers |
| </h5> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e3213" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Handlers_06.png" |
| alt="Start activity with handlers" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.71. Start activity with handlers</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| Fault and event handlers can be defined for the process by |
| right-clicking the <span class="property">Start</span> activity |
| and selecting the desired handler from the context menu. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e3224" />3.4.1.4.2. Scope-level handlers |
| </h5> |
| </div> |
| </div> |
| </div> |
| <p> |
| A <span class="property">Scope</span> may have any handler. |
| Since <span class="property">Scopes</span> can be nested, each |
| level can define its own set of handlers. Events that are not |
| caught and processed by a handler in an inner <span |
| class="property">Scope</span>, will be propagated to its |
| ancestors. |
| </p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h5 class="title"> |
| <a id="d0e3238" />3.4.1.4.3. Activity-level handlers |
| </h5> |
| </div> |
| </div> |
| </div> |
| <p> |
| Only the <span class="property">Invoke</span> activity can |
| define handlers. The handlers available to it are the fault and |
| compensation handlers. |
| </p> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3246" />3.4.2. BPEL Deployment Descriptor editor |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| Before a BPEL project can be deployed to the runtime engine, you |
| must create what is called a <span class="emphasis"><em>deployment |
| descriptor</em> |
| </span>. This is simply a manifest file, serialized as XML, that |
| describes all of the BPEL processes and their interfaces to the |
| BPEL engine. The <span class="emphasis"><em>deployment |
| descriptor</em> |
| </span> file must be created in the root folder of your project. See <a |
| class="xref" href="#Reference-Wizard-Deployment_Descriptor" |
| title="3.1.3. New BPEL Deployment Descriptor">Section 3.1.3, |
| “New BPEL Deployment Descriptor”</a> more information. |
| </p> |
| <p> |
| The <span class="emphasis"><em>deployment descriptor</em> |
| </span> editor traverses the folder hierarchy in your project and |
| searches for all BPEL files. Each process is then represented in a |
| separate tab in the editor. The figure below shows two processes |
| (HelloWorld and GoodbyeWorld). Each process must be configured |
| before the project can be deployed. |
| </p> |
| <div class="figure"> |
| <a id="d0e3264" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Deployment_descriptor_editor_01.png" |
| alt="Deployment descriptor editor example" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.72. Deployment descriptor editor example</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="orderedlist"> |
| <ol> |
| <li><p>Process selection tabs: Click on these tabs to |
| display the configuration page for each process.</p> |
| </li> |
| <li><p> |
| Initial process state: The process can be deployed in either an |
| <span class="emphasis"><em>active</em> |
| </span>, <span class="emphasis"><em>inactive</em> |
| </span> or <span class="emphasis"><em>retired</em> |
| </span> state. |
| </p> |
| </li> |
| <li><p>Inbound interfaces selection: Select the WSDL |
| port type that clients will use to invoke this service.</p> |
| </li> |
| <li><p>Output interfaces selection: Each invoked service |
| (if any) will require you to select its port type.</p> |
| </li> |
| <li><p>Process-level monitoring events: Allow you to |
| select which events are generated by the BPEL engine. This is |
| currently unused but will be used in future for debugging the |
| process.</p> |
| </li> |
| <li><p>Scope-level monitoring events: The BPEL engine |
| can be configured to generate monitoring events for each Scope |
| defined in the process.</p> |
| </li> |
| </ol> |
| </div> |
| <p>The only action required to configure a processes is to |
| select the interfaces for inbound and outbound services used by |
| the process; all other settings are optional.</p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e3300" />3.5. Preference pages |
| </h2> |
| </div> |
| </div> |
| </div> |
| <p>Certain aspects of the BPEL Designers behavior can be |
| customized to suit your personal preference.</p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3305" />3.5.1. Editor |
| </h3> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e3308" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Editor_preferences_01.png" |
| alt="Editor preferences" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.73. Editor preferences</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>The editor behavior can be customized on this page.</p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3316" />3.5.2. Expression editors |
| </h3> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e3319" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Editor_preferences_02.png" |
| alt="Expression editor preferences" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.74. Expression editor preferences</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>This preference page is used to configure the XPath |
| expression editor templates and is similar to other Eclipse editor |
| template preference pages.</p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3327" />3.5.3. WSIL browser |
| </h3> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e3330" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/WSIL_browser_preferences_01.png" |
| alt="WSIL browser preferences" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.75. WSIL browser preferences</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>This preference page is used to configure a Web Services |
| Inspection Language (WSIL) file. The file can contain references |
| to WSDL files for external services as well as references to other |
| WSIL files, either locally or on the web. This file is used to |
| search for WSDLs when defining partner links in a process.</p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e3340" />3.6. Dialogs |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3343" />3.6.1. XPath expression editor (embedded |
| control) |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| The XPath expression editor provides context-sensitive assistance |
| in the form of pop-up proposals. The light bulb icon <span |
| class="inlinemediaobject"><img |
| src="images/reference/XPath_expression_editor_01.png" /> |
| </span> indicates that content assist is available by pressing the <span |
| class="keycap"><strong>CTRL</strong> |
| </span> and <span class="keycap"><strong>SPACE</strong> |
| </span> keys simultaneously. The editor will display appropriate help |
| information based on what it knows about variables currently |
| in-scope for the selected activity. An example is seen in the |
| figure below: |
| </p> |
| <div class="figure"> |
| <a id="d0e3358" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/XPath_expression_editor_02.png" |
| alt="Expression editor assistance example" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.76. Expression editor assistance example</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="note"> |
| <h2>Note</h2> |
| <p>The BPEL 2.0 specification provides for the definition of |
| an XPath language version at the process level, as well as the |
| activity level (for those activities that make use of XPath). |
| However, only XPath 1.0 is supported by the BPEL Designer and the |
| JBoss Riftsaw runtime engine at this time.</p> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3367" />3.6.2. Quick pick (embedded control) |
| </h3> |
| </div> |
| </div> |
| </div> |
| <div class="figure"> |
| <a id="d0e3370" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Dialog_quick_pick_01.png" |
| alt="Quick pick" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.77. Quick pick</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p>Tree control is used in many proeprty pages for selecting |
| message parts, partner links and operations.</p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3378" />3.6.3. Type selection |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p>This dialog is displayed whenever the BPEL Designer requires |
| you to select a message, message part, XML Schema type or XML |
| element. Refer to the figure below for an explanation of each of |
| the components of this dialog:</p> |
| <div class="figure"> |
| <a id="d0e3383" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Dialog_type_selection_01.png" |
| alt="Type selection" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.78. Type selection</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="orderedlist"> |
| <ol> |
| <li><p> |
| <span class="guilabel"><strong>Type Name</strong> |
| </span>: Used to limit the items displayed in the <span |
| class="guilabel"><strong>Matches</strong> |
| </span> (4) list. Only items that begin with the text in this filter |
| will be displayed. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Show XSD Types</strong> |
| </span>: Can be used to limit where the editor will search for XSD |
| files. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Filter</strong> |
| </span>: Further reduces the number of matches according to types. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Matches</strong> |
| </span>: Displays the items matching the selected filters. Selecting |
| an item in this list will update the <span class="guilabel"><strong>Type |
| Structure</strong> |
| </span> (5) tree view. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Type Structure</strong> |
| </span>: Displays the structure of the item selected in the <span |
| class="guilabel"><strong>Matches</strong> |
| </span> (4) list. Depending on the type of item requested, you may |
| need to select an item from this tree control as well; the <span |
| class="guibutton"><strong>OK</strong> |
| </span> button being enabled is an indicated of a selection being |
| required here. |
| </p> |
| </li> |
| <li><p> |
| <span class="guibutton"><strong>Add Schema</strong> |
| </span>: If the required XML Schema has not been resolved, you can add |
| it to the process’ imports by clicking this button. |
| </p> |
| </li> |
| </ol> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="Reference-Dialog-WSDL_Selection" />3.6.4. Select WSDL |
| property |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p>This dialog allows you to select an existing WSDL property |
| or create a new one.</p> |
| <div class="figure"> |
| <a id="d0e3443" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Dialog_wsdl_selection_01.png" |
| alt="Select a WSDL property" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.79. Select a WSDL property</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="orderedlist"> |
| <ol> |
| <li><p> |
| <span class="guilabel"><strong>Property Name</strong> |
| </span>: Used to limit the items displayed in the <span |
| class="guilabel"><strong>Matches</strong> |
| </span> (3) list. Only those items that begin with the text in this |
| filter will be displayed. |
| </p> |
| </li> |
| <li><p> |
| <span class="guibutton"><strong>New</strong> |
| </span>: Click this button to create a new WSDL property. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Matches</strong> |
| </span>: Displays the items that match the <span class="guilabel"><strong> |
| Property Name</strong> |
| </span> (1), or all items if the filter is blank. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Property Type</strong> |
| </span>: Displays the type of an item selected in the <span |
| class="guilabel"><strong>Matches</strong> |
| </span> (3) list. |
| </p> |
| </li> |
| </ol> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3483" />3.6.5. Create WSDL property |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| This dialog is used to create a new WSDL property and is displayed |
| when you click the <span class="guibutton"><strong>New</strong> |
| </span> button in <a class="xref" href="#Reference-Dialog-WSDL_Selection" |
| title="3.6.4. Select WSDL property">Section 3.6.4, “Select |
| WSDL property”</a> dialog. |
| </p> |
| <div class="figure"> |
| <a id="d0e3493" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Dialog_wsdl_creation_01.png" |
| alt="Create a WSDL property" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.80. Create a WSDL property</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="orderedlist"> |
| <ol> |
| <li><p> |
| <span class="guilabel"><strong>Name</strong> |
| </span>: Enter the name for the new property. |
| </p> |
| </li> |
| <li><p> |
| <span class="guibutton"><strong>Defined As</strong> |
| </span>: Select how the property type will be defined. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Browse</strong> |
| </span>: Click this button to select the property type. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>New</strong> |
| </span>: Click this button to create a new property alias. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Aliases</strong> |
| </span>: This list displays all property aliases defined for the |
| property. |
| </p> |
| </li> |
| </ol> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3530" />3.6.6. Create WSDL property alias |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p>This dialog allows you to create a WSDL property alias for a |
| selected property.</p> |
| <div class="figure"> |
| <a id="d0e3535" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Dialog_wsdl_creation_02.png" |
| alt="Create a WSDL property alias" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.81. Create a WSDL property alias</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="orderedlist"> |
| <ol> |
| <li><p> |
| <span class="guilabel"><strong>Defined As</strong> |
| </span>: Select how the property alias type will be defined. |
| </p> |
| </li> |
| <li><p> |
| <span class="guibutton"><strong>Browse</strong> |
| </span>: Click this button to select the property alias type. |
| </p> |
| </li> |
| <li><p> |
| <span class="guilabel"><strong>Query</strong> |
| </span>: This editor allows you to use the XPath Expression Editor to |
| define a query for the property alias. |
| </p> |
| </li> |
| </ol> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3560" />3.6.7. Cheat sheets |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p> |
| Cheat sheets are part of the Eclipse <span class="guilabel"><strong>Help</strong> |
| </span> framework, which provide interactive, step-by-step tutorials for |
| plug-in tools. The BPEL Designer cheat sheet can be accessed by |
| following <span class="guimenuitem"><strong>Help</strong> |
| </span> → <span class="guimenuitem"><strong>Cheat Sheets</strong> |
| </span>. You will then see the following screen: |
| </p> |
| <div class="figure"> |
| <a id="d0e3574" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Dialog_cheet_sheet_01.png" |
| alt="Cheat sheet menu selection" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.82. Cheat sheet menu selection</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The cheat sheet will open in a separate view as show below. Click |
| on the <span class="guibutton"><strong>Click to |
| begin</strong> |
| </span> link to begin. |
| </p> |
| <div class="figure"> |
| <a id="d0e3585" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Dialog_cheet_sheet_02.png" |
| alt="Cheat sheet menu" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.83. Cheat sheet menu</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| </div> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e3591" />3.7. Icons, buttons and menus |
| </h2> |
| </div> |
| </div> |
| </div> |
| <p>The BPEL Designer does not contribute any toolbar buttons, or |
| main menu actions.</p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h3 class="title"> |
| <a id="d0e3596" />3.7.1. Context menu |
| </h3> |
| </div> |
| </div> |
| </div> |
| <p>The context menu is activated when the right mouse button is |
| clicked while the mouse is over an activity figure on the drawing |
| canvas.</p> |
| <div class="figure"> |
| <a id="d0e3601" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Context_menu_01.png" |
| alt="Cheat sheet menu" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.84. Cheat sheet menu</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The <span class="guibutton"><strong>Add</strong> |
| </span> and <span class="guibutton"><strong>Insert Before</strong> |
| </span> sub-menus contain the same actions. The sub-menu is displayed in |
| the figure below: |
| </p> |
| <div class="figure"> |
| <a id="d0e3615" /> |
| <div class="figure-contents"> |
| <div class="mediaobject"> |
| <img src="images/reference/Context_menu_02.png" |
| alt="Cheat sheet menu" /> |
| </div> |
| </div> |
| <p class="title"> |
| <b>Figure 3.85. Cheat sheet menu</b> |
| </p> |
| </div> |
| <br class="figure-break" /> |
| <p> |
| The items within the <span class="guibutton"><strong>Add</strong> |
| </span> sub-menu appends the activity after the currently selected one, |
| while those within the <span class="guibutton"><strong>Insert |
| Before</strong> |
| </span> sub-menu insert the new activity before the current one. |
| </p> |
| </div> |
| </div> |
| </div> |
| <div class="chapter" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="troubleshooting" />Chapter 4. Troubleshooting |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="toc"> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e3639">4.1. Error |
| messages</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e4336">4.2. Warning |
| messages</a> |
| </span> |
| </dt> |
| <dt> |
| <span class="section"><a href="#d0e4388">4.3. |
| Information messages</a> |
| </span> |
| </dt> |
| </dl> |
| </div> |
| <p>This section lists all of the messages generated by the BPEL |
| Validator. The SA (Static Analysis) column contains hyperlinks to |
| the OASIS WS-BPEL 2.0 specification entry for each validation rule |
| to which the message applies. It is possible that one message is |
| applicable to more than one BPEL element or attribute, therefore all |
| of the SA rules that are relevant are listed for each message.</p> |
| <p>Refer to the OASIS documentation linked in the SA column for a |
| detailed explanation of the BPEL requirement, and for possible |
| resolutions for the error.</p> |
| <div xmlns:rf="java:org.jboss.highlight.XhtmlRendererFactory" |
| class="note"> |
| <h2>Note</h2> |
| <p>The substitution parameters (for example: {0} and {1}) are |
| placeholders for the BPEL element, attribute or value identified by |
| the Validator.</p> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e3639" />4.1. Error messages |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="table"> |
| <a id="d0e3642" /> |
| <p class="title"> |
| <b>Table 4.1. Error messages</b> |
| </p> |
| <div class="table-contents"> |
| <table summary="Error messages" border="1"> |
| <colgroup> |
| <col /> |
| <col /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th>Message text</th> |
| <th>SA</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td>{1} "{2}" of type "{4}" is not compatible with WSDL |
| message "{3}".</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00048_table">00048</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00058_table">00058</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00087_table">00087</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The start activity <{0}> must be the first |
| activity in the process.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00056_table">00056</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Standard fault "{1}" cannot be handled in <{0}> |
| when exitOnStandardFaults is set to yes.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00003_table">00003</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The partner link "{1}" referenced from this |
| <{0}> must have "{2}" defined.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00037_table">00037</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Target scope "{2}" does not exist.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00077_table">00077</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Target {3} "{2}" must have a compensationHandler or a |
| faultHandler.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00078_table">00078</a> |
| </td> |
| </tr> |
| <tr> |
| <td>{1,choice,0#Node|1#Activity} <{0}> must contain |
| at least {5,choice,1#one node|1<{5} nodes} from {3}</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02002_table">02002</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The <{1}> node present in this <{0}> has |
| {2,choice,0# unspecified text value (is empty)| 1<="" |
| td=""></td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00038_table">00038</a> |
| </td> |
| </tr> |
| <tr> |
| <td><{3}> can only occur at most {5,choice,1#one |
| time|1<{5} times} in parent {1,choice,0#node|1#activity} |
| <{0}></td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02002_table">02002</a> |
| </td> |
| </tr> |
| <tr> |
| <td><{1}> name "{2}" is already defined in this |
| scope/process.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00018_table">00018</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00023_table">00023</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00044_table">00044</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00064_table">00064</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00068_table">00068</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00069_table">00069</a> |
| </td> |
| </tr> |
| <tr> |
| <td>This <{0}> with name="{1}" was already defined |
| previously</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00022_table">00022</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Cannot import type "{1}" from location "{2}"</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA01234_table">01234</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The XSD type "{1}" of {2} "{3}" in this <{0}> is |
| not a simple XSD type.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00045_table">00045</a> |
| </td> |
| </tr> |
| <tr> |
| <td>This <{0}> uses undefined message part "{1}" in |
| message type "{2}".</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00021_table">00021</a> |
| </td> |
| </tr> |
| <tr> |
| <td>There is no "{2}" message that is used by this |
| <{0}> - {3,choice,0#node <{4}> |2#attribute "{4}"} |
| must be omitted.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00047_table">00047</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Solicit-response operation "{4}" in portType "{3}" |
| cannot be used in a BPEL process.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00001_table">00001</a> |
| </td> |
| </tr> |
| <tr> |
| <td>XSD element <{0}> in import {1} conflicts with |
| element of the same name in {2}.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00014_table">00014</a> |
| </td> |
| </tr> |
| <tr> |
| <td>{1,choice,0#Node|1#Activity} <{0}> must have {2} |
| {3,choice,0#node|1#activity|2#attribute} present.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00080_table">00080</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00081_table">00081</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00083_table">00083</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00090_table">00090</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The variable name "{1}" is used as a counter name in |
| <{2}>.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00076_table">00076</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The link "{1}" used as a {0} is not defined in the |
| enclosing flow.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00065_table">00065</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Scope "{1}" cannot have a <{2}> because because |
| it is itself inside an FCT-hander.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00079_table">00079</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The <link> "{1}" has a control cycle where the |
| source "{2}" has the target "{3}" as a preceding activity.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00072_table">00072</a> |
| </td> |
| </tr> |
| <tr> |
| <td><{0}> cannot be a child of <{1}>; it can |
| only be a child of {2}</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02001_table">02001</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The link "{1}" does not have a source.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00066_table">00066</a> |
| </td> |
| </tr> |
| <tr> |
| <td>{0} attribute refers to an unsupported language URI |
| {1}</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00004_table">00004</a> |
| </td> |
| </tr> |
| <tr> |
| <td>A catch for fault "{1}" already exist.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00093_table">00093</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Extension "{1}" is not supported by this |
| implementation.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00009_table">00009</a> |
| </td> |
| </tr> |
| <tr> |
| <td>{1,choice,0#Node|1#Activity} <{0}> must specify |
| one {3,choice,0#node|1#activity|2#attribute} {2}.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00081_table">00081</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00081_table">00090</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The attribute {1} must be set to "{2}" on this |
| <{0}></td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00057_table">00057</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Attribute "{0}" must not be set on this <{1}> |
| {2,choice,0#node|1#activity}.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00046_table">00046</a> |
| </td> |
| </tr> |
| <tr> |
| <td>{3,choice,0#Node|1#Activity|2#Attribute} {2} must not |
| be specified on {1,choice,0#node|1#activity} <{0}>.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00090_table">00090</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Attribute "{1}" cannot be set because {2} "{3}" is not |
| an element.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00042_table">00042</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Immediately enclosed {0} "{1}" must have a unique name |
| within the outer scope "{3}".</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00092_table">00092</a> |
| </td> |
| </tr> |
| <tr> |
| <td>"{1}" is set to "{2}" on this <{0}> |
| {4,choice,0#node|1#activity} but it can only be set to {3}</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00017_table">00017</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00032_table">00032</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00046_table">00046</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00090_table">00090</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA01001_table">01001</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA01010_table">01010</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02003_table">02003</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02004_table">02004</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The {1} of "{2}" is not compatible with {3} of "{4}" - |
| {5}</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00043_table">00043</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Message part "{1}" does not exist in message "{2}"</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00034_table">00034</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00054_table">00054</a> |
| </td> |
| </tr> |
| <tr> |
| <td>partnerLink "{1}" uses portType "{3}" (via |
| partnerLinkType "{2}") which has an overloaded operation |
| "{4}".</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00002_table">00002</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Attribute "{1}" is not set on this <{0}> |
| {2,choice,0#node|1#activity}.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00000_table">00000</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00010_table">00010</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00024_table">00024</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00032_table">00032</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00046_table">00046</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00047_table">00047</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00081_table">00081</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00088_table">00088</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00090_table">00090</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA01001_table">01001</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA01004_table">01004</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA01010_table">01010</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02003_table">02003</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02004_table">02004</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The <{0}> activity named "{1}" must be in a |
| fault, compensate, or termination handlers.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00007_table">00007</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00008_table">00008</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The "{1}" cannot be used on <{0}> that does not |
| have {2} defined.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00017_table">00017</a> |
| </td> |
| </tr> |
| <tr> |
| <td><{0}> activity "{1}" specifies a portType "{2}", |
| yet this portType does not match the portType derived from |
| "{4}" of partnerLink "{3}" defined in WSDL "{5}"</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00005_table">00005</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Isolated scope "{1}" cannot exist within another |
| isolated scope (scope "{3}").</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00091_table">00091</a> |
| </td> |
| </tr> |
| <tr> |
| <td><{0}> activity "{1}" is trying to use |
| partnerLink "{2}" which does not have a "{3}" defined.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00084_table">00084</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Part "{3}" must be specified on this <{2}> - |
| activity <{1}> requires it.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00050_table">00050</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The targetNamespace {2} of the imported document is |
| not the default namespace.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00012_table">00012</a> |
| </td> |
| </tr> |
| <tr> |
| <td>This <{0}> activity is a start activity and |
| cannot have an onAlarm component.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00062_table">00062</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The import namespace {1} and the imported document |
| target namespace {2} do not match.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00011_table">00011</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The {1} start activities must share at least one |
| correlation.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00057_table">00057</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Either "{1}" or "{2}" attribute is required on this |
| <{0}></td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00019_table">00019</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00020_table">00020</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The partner link "{1}" referenced from this |
| <{0}> must have "{2}" defined.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00035_table">00035</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00036_table">00036</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The <{1}> activity named {0} must be in a fault |
| handler.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00006_table">00006</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The part "{1}" is already specified in another |
| <{0}>.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00053_table">00053</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The link "{1}" is not unique - the link "{2}" also |
| makes an identical connection.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00067_table">00067</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The form of <{0}> is not valid (too many |
| variants detected).</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00032_table">00032</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The variable name "{0}" contains an illegal period (.) |
| character.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00024_table">00024</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Notification operation "{4}" in portType "{3}" (via |
| partnerLinkType "{2}") cannot be used in a BPEL process.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00001_table">00001</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The link "{1}" does not have a target.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00066_table">00066</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The link "{1}" crosses repeatable boundary on |
| <{2}>.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00070_table">00070</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The "{0}" attribute of this <{1}> is set to |
| "{2}" - it is not a valid NCName.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00000_table">00000</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00024_table">00024</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA01004_table">01004</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Either <{1}> *or* attribute "{2}" must be |
| specified on <{0}>.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00051_table">00051</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00052_table">00052</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00055_table">00055</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00059_table">00059</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00063_table">00063</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00085_table">00085</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The {1} "{2}" is not of messageType and a "part" is |
| specified in this <{0}> node.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00034_table">00034</a> |
| </td> |
| </tr> |
| <tr> |
| <td>"{1}" is set to "{3}" on this <{0}> |
| {2,choice,0#|1#activity} but it cannot be resolved (check |
| value of "{1}", imports, WSDLs or XSDs).</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00010_table">00010</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00017_table">00017</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00021_table">00021</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00032_table">00032</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00045_table">00045</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00081_table">00081</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00088_table">00088</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00090_table">00090</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02003_table">02003</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02004_table">02004</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Link "{1}" must be outbound only; target activity must |
| be outside of the enclosing <{2}>.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00071_table">00071</a> |
| </td> |
| </tr> |
| <tr> |
| <td>Variable "{0}" must be have either |
| messageType,element, or type defined.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00025_table">00025</a> |
| </td> |
| </tr> |
| <tr> |
| <td>There is no start activity in process "{1}"</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00015_table">00015</a> |
| </td> |
| </tr> |
| <tr> |
| <td>{0} "{1}" must have "{2}" and/or "{3}" set.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00016_table">00016</a> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e4336" />4.2. Warning messages |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="table"> |
| <a id="d0e4339" /> |
| <p class="title"> |
| <b>Table 4.2. Error messages</b> |
| </p> |
| <div class="table-contents"> |
| <table summary="Error messages" border="1"> |
| <colgroup> |
| <col /> |
| <col /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th>Message text</th> |
| <th>SA</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td>The expression in <{0}> cannot be checked - no |
| expression validator has been registered for language {1}.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00029_table">00029</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00033_table">00033</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA01000_table">01000</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The {1} of simple type "{2}" is not compatible with |
| {3} of simple type "{4}" - a BPEL runtime may provide an |
| implicit conversion.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00043_table">00043</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The {3,choice,0#node|1#activity} <{0}> refers to |
| a {1} (via the attribute "{2}") - this {1} needs to be defined |
| correctly.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00032_table">00032</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02003_table">02003</a> |
| <a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA02004_table">02004</a> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| </div> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e4388" />4.3. Information messages |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="table"> |
| <a id="d0e4391" /> |
| <p class="title"> |
| <b>Table 4.3. Error messages</b> |
| </p> |
| <div class="table-contents"> |
| <table summary="Error messages" border="1"> |
| <colgroup> |
| <col /> |
| <col /> |
| </colgroup> |
| <thead> |
| <tr> |
| <th>Message text</th> |
| <th>SA</th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr> |
| <td>Copy rule not checked - {1} type-of "{2}", {3} type-of |
| "{4}".</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00043_table">00043</a> |
| </td> |
| </tr> |
| <tr> |
| <td>The {1} of {0} is not defined in BPEL 2.0 and is not |
| understood by this implementation.</td> |
| <td><a class="ulink" |
| href="http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html#SA00013_table">00013</a> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| </div> |
| <br class="table-break" /> |
| </div> |
| </div> |
| <div class="chapter" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e4420" />Chapter 5. Summary |
| </h2> |
| </div> |
| </div> |
| </div> |
| <div class="toc"> |
| <dl> |
| <dt> |
| <span class="section"><a href="#d0e4426">5.1. Other |
| relevant resources on the topic</a> |
| </span> |
| </dt> |
| </dl> |
| </div> |
| <p>This document highlights the capabilities of BPEL Tools, as |
| well as providing the steps required to create and configure BPEL |
| process and deployment descriptor files. If you have questions or |
| suggestions concerned both the documentation and tools behavior |
| please visit the JBoss Tools Users forum.</p> |
| <div class="section" lang="en-US"> |
| <div class="titlepage"> |
| <div> |
| <div> |
| <h2 class="title"> |
| <a id="d0e4426" />5.1. Other relevant resources on the topic |
| </h2> |
| </div> |
| </div> |
| </div> |
| <p> |
| All JBoss Tools release documentation you can find at <a |
| class="ulink" href="http://docs.jboss.org/tools">http://docs.jboss.org/tools</a> |
| in the corresponding release directory. |
| </p> |
| <p> |
| The latest documentation builds are available at <a class="ulink" |
| href="http://download.jboss.org/jbosstools/nightly-docs">http://download.jboss.org/jbosstools/nightly-docs</a>. |
| </p> |
| </div> |
| </div> |
| </div> |
| </body> |
| </html> |