Zenflow Plug-in User's Guide
Table of Contents
1.1.1 Creating a New BPEL File
1.1.2 Importing an Existing BPEL File Into a Project
1.2 Linking WSDL Files and WSDL Cache
5.1 New BPEL File Wizard Dialog
6.1 Expand/Collapse Activities
Chapter 8. Interoperation
with NovaStudio
List of Figures
Figure 2‑2. Example Context Menu
Figure 4‑1. Zenflow Graphic Window
Figure 4‑2. Zenflow Tree Window
Figure 4‑3. Zenflow Source Code Window
Figure 4‑4. Zenflow Problems Window
Figure 4‑5. Eclipse Properties Window for Displaying
Zenflow Activity Information
Figure 4‑6. Zenflow Outline Window
Figure 5‑1. New BPEL File Wizard Dialog
Figure 5‑2. Zenflow WSDL File Information Dialog
Figure 5‑3. WSDL Import Complete Dialog
Figure 5‑4. Zenflow Correlation Sets Dialog
Figure 5‑5. Zenflow Partner Links Definition Dialog
Figure 5‑6. Zenflow Variables Definition Dialog
Figure 5‑7. Zenflow Preferences Dialog
Figure 6‑1. Graphic Display of an Expanded Complex
Activity
Figure 6‑2. Graphic Display of Collapsed Complex Activity
Figure 6‑3. Example of Node “Breaking Away” During a
Moving Activity
Figure 7‑1. Properties Window with a ”Description”
Property for the Activity Type
Figure 7‑2. Code View of “Description” Property
Figure 7‑3. Invoke Activity Redrawn as a Complex Activity
Figure 7‑4. Link Showing Interdependency between Parallel
Paths of Execution
Figure 7‑5. Confirmation Box for Linking Activities
Figure 7‑6. Display of Code within a “JavaSnippet”
Figure 7‑7. Save BPELJ Snippet Confirmation Dialog
Figure 8‑1. NovaStudio Services View With Zenflow
Preface
This guide describes the overall features of Zenflow. The information in this document applies to the Eclipse plug-in version of Zenflow.
Zenflow is a tool that assists designers in the creation of BPEL files. It offers several ways to create and edit BPEL files, while enforcing correct BPEL syntax. Additionally, it provides some assistance in filling in various elements and attributes based on the current context and definitions.
Zenflow currently does not support the generation of WSDL files. These files must be provided as input to the program.
Zenflow uses the Eclipse project model. An Eclipse project must exist before a new BPEL file can be created or imported.
1. Right click on the desired project and select "New → Other → Zenflow → BPEL file".
2. Select the "next" button, which will display the BPEL wizard.
3. Fill in the properties of the BPEL file as described in New BPEL File Wizard Dialog.
1. Right click on the desired project folder in the package explorer view and select the "Import" menu item.
2. Select to import from the "File System", and browse to the folder containing the BPEL file.
3. Expand this directory in the "File System Import" dialog and select the check box next to the desired BPEL file.
|
Note: DO NOT import the WSDL file using this dialog. |
The Zenflow editor requires access to two types of WSDL files. The first is the WSDL file that represents the BPEL process itself. The second is the WSDL files for any web service that the BPEL process will invoke. Collectively, these WSDL files define the message types, data types, partners, etc. that can be references in the BPEL process. These WSDL files must be linked into Zenflow using the "Link WSDL Files" menu described below.
As WSDL files are linked into Zenflow, a cache associating namespaces and the WSDL files that contribute to that namespace is maintained. This cache is used any time a BPEL file is opened. If the BPEL file references any namespace contained in the cache, then the corresponding WSDL files are automatically linked for that Process. This prevents having to relink the WSDL files each time Zenflow is started.
The WSDL cache is maintained in a directory named ".workdirectory" immediately under the Eclipse workspace location. Thus the cache is shared between all projects in the workspace, and if the workspace is cleared or changed, then a new cache is created.
There are two types of menus used in Zenflow: the main menu and context menus. These menus are described below.
When a BPEL file is opened, the Zenflow menu is added to the main Eclipse toolbar. The following figure is an example of the main menu.
This menu has the following elements:
Link WSDL Files
This menu displays the WSDL Dialog. This is used to make the information defined in external WSDL files available inside the Zenflow editor.
Variables
This menu displays the Variables dialog. When the dialog is opened with this menu, then the global variables for the process are displayed.
Partner links
This menu displays the Partner Links dialog. This is used to define partner links that will be available to the BPEL process.
Correlations Sets
This menu displays the Correlations Sets dialog. This is used to define the correlations sets available to the BPEL process.
Insert
This brings up a popup menu that allows for the insertion of a new activity. See Inserting Activities for more information.
Move backward/Move forward
These menus allows for the movement of the selected activity within the process. See Moving Activities for more information.
Restore positions
The menu causes the graph view to be redrawn with default locations for all elements.
Right clicking on a selected activity in the graphic or scheme window will display a context menu. The following figure is an example context menu.
Figure 2‑2. Example Context Menu
This popup menu is primarily used for inserting new activities into existing complex activities. The contents of the "Insert" menu is customized based on the selected activity. See Inserting Activities for more information about inserting activities.
If a right click occurs on the "background" of the graphic or scheme window, then the context menu is customized to allow inserting process-level event, fault, and compensation handlers.
The Zenflow toolbar shown below will appear just below the main Eclipse toolbar.
Each toolbar icon has an associated tooltip that will provide a brief description of its function.
The first three toolbar icons correspond to the last three
menu items described in
Section 2.1. The remainder of the toolbar icons allow for
inserting a specific type of activity into the BPEL process. These icons are
enabled and disabled based on the activities that are valid to insert based on
the currently selected activity.
See the Inserting Activities for more information.
The graphic window is the main work area of Zenflow. This window is initially opened by double clicking on a BPEL file in the package explorer window. The graphic window uses the "Process" tab at the bottom of the main edit area. The following figure is an example of the graphic window.
Figure 4‑1. Zenflow Graphic Window
The graphic window displays the process as an ordered left-to-right sequence of graphic elements that correspond to the BPEL activities. The graph depicts the logical flow of the process moving from left to right. Multiple paths are displayed to represent parallel paths of execution or decision points in the process.
Scroll Bars
Scroll bars are displayed if the graph is too large for the display area. These can be used to bring the desired part of the graph into view.
Expand/Collapse of Complex Activities
The graphic image of each complex activity is followed by a "+" or "-" icon. This icon allows complex activities to be expanded or collapsed. An expanded complex activity displays all of its immediate child activities. A collapsed complex activity does not display any of its internal child elements. The activity can be expanded or collapsed by clicking on the "+" or "-" icon. This feature can assist in navigation of large graphs, and is also useful when moving activities.
Selecting Activities
Clicking on the graphic image for an activity "selects" it. A selected activity will have a thin border displayed around its graphic image. When an activity is selected, the properties for that activity are displayed in the properties window. Additionally, if a complex activity is selected, then the toolbar icons for activities’ types that can be inserted into the selected activity are enabled.
Context Menu
Right clicking on a selected activity will display a popup context menu. See Context menu and Inserting Activities for more details.
Context Menu for Process
Right clicking on the background of the graphic window will display the process level context menu. See Context menu and Inserting Activities for more details.
To open the tree window, select the "Scheme" tab at the bottom of the main work area. The following figure is an example of the tree window.
Figure 4‑2. Zenflow Tree Window
The tree window displays the process as a top-down tree that corresponds to the BPEL activities. The tree depicts the parent/child relationships of the activities of the BPEL process.
Scroll Bars
Scroll bars are displayed if the tree is too large for the display area. These can be used to bring the desired part of the tree into view.
Expand/Collapse of complex activities
The tree image of each complex activity is preceded by a "+" or "-" icon. This icon allows complex activities to be expanded or collapsed. An expanded complex activity displays all of its immediate child activities. A collapsed complex activity does not display any of its internal child elements. The activity can be expanded or collapsed by clicking on the "+" or "-" icon. This feature can assist in navigation of large trees.
Selecting activities
Clicking on the tree image for an activity "selects" it. A selected activity is highlighted. Note that Zenflow treats some types of complex activities, such as "Assign" activities, as single entities. In this case, selecting any activity within the logical group will highlight the entire group. When an activity is selected, the properties for that activity are displayed in the properties window. Additionally, if a complex activity is selected, then the toolbar icons for activities’ types that can be inserted into the selected activity are enabled.
Context Menu
Right clicking on a selected activity will display a popup context menu. See Context menu and Inserting Activities for more details.
Context Menu for Process
Right clicking on the background of the tree window will display the process-level context menu. See Context menu and Inserting Activities for more details.
To open the source code window, select the "Sourcecode" tab at the bottom of the main work area. The following figure is an example of source code window.
Figure 4‑3. Zenflow Source Code Window
The source code window displays the BPEL source code for the process.
Scroll Bars
Scroll bars are displayed if the tree is too large for the display area. These can be used to bring the desired part of the tree into view.
Direct edit
This window allows for direct editing of the BPEL xml file. Care should be used to ensure that only valid syntax is entered. If new activities are added or attributes are changed in this window, then the changes are reflected in the graphic and tree views.
Copy/Paste
This window allows direct cut/copy/paste of statements between BPEL processes, or within the same BPEL process. This is sometimes the easiest way to "clone" an existing process or a sequence of statements into another process.
Zenflow uses the standard Eclipse "Problems" window to inform the user of inconsistencies as the BPEL process is being edited. The following figure is an example of the Problems window.
Figure 4‑4. Zenflow Problems Window
Selecting a row in the problem window will select the associated activity in the graphic and scheme views.
Zenflow uses the standard Eclipse properties window to display information about the currently selected activity. The following is an example of the Properties window.
Figure 4‑5. Eclipse Properties Window for Displaying Zenflow Activity Information
The "Properties" window displays the properties and is also used to modify properties. To edit a property, click it in the property window. This will cause the row to be highlighted. For editing purposes, a property falls into one of the following categories:
· Read Only - This type of property cannot be modified. The "Type" and "Complexity" properties are examples of read only properties.
· Text Input - This type of property allows direct text input for the field. After the property row is selected, the "value" field is changed to a text box allowing direct user input. The "Name" property is an example of this.
· Combo Box Selection - This type of property provides a selection of possible values based on context. After the property row is selected, the "value" field is changed to a combo box that is populated with potential values based on the current context. "Partner", "PortType", and "Operation" are examples of this type of property.
·
Custom Editor - This type of property
provides a separate editor dialog for the property. ``After the property row is
selected, the icon appears at the end of the row. Pressing
this icon will display the custom editor dialog for the property. The
"Assign Definition" property is an example of this.
There are some properties that are common to all activity types, and some that are specific to a specific activity type.
The outline window shows a tree representation of the current BPEL process. The following figure is an example of the Outline window.
Figure 4‑6. Zenflow Outline Window
The outline provides a quick navigational aide for the process. Complex activity nodes can be expanded or contracted as desired to simplify the view. This is done by clicking on the "+" or "-" icon at the left of each complex node. If an activity is selected in the outline view by left clicking on it, then the corresponding activity in the graphic and tree views is also selected, scrolling it into the view if necessary.
This section describes the various dialogs that are used by Zenflow.
The BPEL new file wizard dialog is displayed when a new BPEL file is created. To access this dialog, right click on the project in the project explorer and select "New → Other → Zenflow → BPEL file". The following figure is an example of the BPEL File wizard dialog.
Figure 5‑1. New BPEL File Wizard Dialog
This dialog contains the following fields:
Location
This identifies the project in which the new BPEL file will be created.
File Name
This is the name that will be given to the new BPEL file.
BPEL Version
This allows a BPEL 1.1 or 2.0 syntax BPEL file to be defined.
Process Name
This is the name of the BPEL process. This is used as the value of the "name" attribute of the process element of the BPEL process.
Target Namespace
This is the target namespace for the BPEL process. This is used as the value for the "targetNamespace" attribute of the process element of the BPEL process.
Enable BPELJ
This option must be checked if BPELJ is to be used in the process. See Section 7.4, “Java Snippet Activity,” for information about BPELJ java code snippet activities.
BPELJ Package
This field is only enabled if the “Enable BPELJ” option is selected. This is the package name that should be given to the java snippets. If no name is specified, then a default will be used.
The WSDL dialog allows linking of WSDL files to BPEL processes. Use the main menu "Zenflow → Link WSDL files..." to access this dialog.
The following figure is an example of the WDL File information dialog.
Figure 5‑2. Zenflow WSDL File Information Dialog
When a WSDL file is linked using this dialog, that WSDL and all WSDL files it imports are read and parsed for type information that is then made available to the BPEL editor. The following buttons are used in this dialog:
Add Local WSDL file
Press this button to add a WSDL file that is accessible in the file system of the local computer. The standard file browser is opened, allowing the user to navigate and select the desired WSDL file.
Remove WSDL file
This button is enabled when a WSDL file in the list is selected. Pressing this button will remove the definitions contained in that WSDL file from the Zenflow editor.
Add Remote WSDL file
This button can be used to add a WSDL file that is accessible by a HTTP URL. Enter the URL in the text box and press the "Add Remote WSDL file" button.
OK
This button closes the dialog and makes all changes available to Zenflow.
Cancel
This button closes the dialog and ignores any changes that have been made. Thus, if new WSDL files were added or deleted and the dialog is closed with the cancel button, then those additions and deletions have no effect.
This dialog is resizable by click/dragging any corner or side.
The following dialog is used to display information following the import of a WSDL file:
Figure 5‑3. WSDL Import Complete Dialog
This dialog is displayed in the following cases:
· After either “Add Local” or “Add Remote” WSDL file buttons in the WSDL dialog are pressed.
· After dragging a WSDL file from the NovaStudio Service view and dropping onto the Zenflow editor (See section 8.1).
The WSDL Import Complete dialog displays three types of information:
· WSDL file imported
The URL for the WSDL file that was just imported is displayed.
· Unreferenced PortTypes
Any PortType that is not referenced by an existing PartnerLinkType is displayed. This list is not specific to the file just imported. The services accessed by the PortTypes listed here will NOT be available in any Zenflow dialog.
In order to make the services accessed by these PortTypes to be available to Zenflow, a corresponding PartnerLinkType definition must be created in a WSDL file that is imported into Zenflow.
· Unreferenced PartnerLinkTypes
Any PartnerLinkType that is not referenced by an existing PartnerLink is displayed. This list is not specific to the file just imported. In order to access services identified by these PartnerLinkTypes, the main menu item Zenflow -> Partner Links… must be used, as described in Section 5.4.
The correlations dialog is used to manage the correlations that can be used by the process. This dialog is accessed using the main menu "Zenflow → Correlations Sets". The following figure is an example of the Correlation Sets dialog.
Figure 5‑4. Zenflow Correlation Sets Dialog
The dialog allows for adding, removing, and modifying the correlation sets using the following buttons:
Add
Enter a new name and property in the text boxes and press the add button to define a new correlation set. If one already exists with the name specified, a message box is displayed asking if the existing entry is to be replaced.
Remove Selected
Correlations in the list can be selected by clicking on them or a group selected by ctrl-clicking on each desired row. Then clicking on the "Remove Selected" button will delete the selected correlations.
OK
Closing the dialog by clicking on the OK button cause all additions/deletions to be accepted.
Cancel
Closing the dialog by clicking on the Close button cause all additions/deletions to be ignored.
To easily edit a property value of an existing correlation set, select it in the list. This populates the text controls with the name and property. These values can then be modified. Then clicking on the "Add" button will ask if the existing entry is to be replaced.
This dialog can be resized by click/dragging any corner or side.
The Partner Links dialog is used to manage the partner links that can be used by the process. This dialog is accessed using the main menu "Zenflow → Partner Links". The following figure is an example of the Partner links dialog.
Figure 5‑5. Zenflow Partner Links Definition Dialog
The following buttons are used in the Partner Links dialog:
Add
Enter a name for the new Partner link. Then select a type from the Partner link type combo box. This combo box is filled with all the partner link types defined in all WSDL files that have been linked to the process. Then select the appropriate role from one of the two role combo boxes, and press the "Add" button to add the new partner link to the list.
Remove Selected
Partner links in the list can be selected by clicking on one or a group can be selected by ctrl-clicking on each desired row. Then pressing the "Remove Selected" button will delete the selected partner links.
OK
Closing the dialog by pressing the OK button cause all additions/deletions to be accepted.
Cancel
Closing the dialog by pressing the Close button cause all additions/deletions to be ignored.
This dialog is resizable by click/dragging any corner or side.
The variables dialog is used to manage global and local variables of the BPEL process. This dialog is accessed in two ways.
· To manage global variables, use the main menu "Zenflow → Variables".
· To manage local variables within a scope, select a Scope activity.
This causes the properties of the scope to be displayed in the properties window. In the properties window, select the "Local Variables" property, and select the custom editor icon to open the variables dialog.
The following figure is an example of the Variables definition dialog.
Figure 5‑6. Zenflow Variables Definition Dialog
The following buttons are used in the variables definition dialog:
Add
Enter a name for the new variable and select the variable class in the combo box. For variable class "WSDL Message", the variable type combo box is filled with all variable types defined in the linked WSDL files. For variable classes "Schema Type" and "Schema Element", it is necessary to manually enter the variable type. No error checking is done for Schema Types/Elements, thus be careful about spelling.
Remove Selected
Variables in the list can be selected by clicking on one or a group can be selected by ctrl-clicking on each desired row. Then pressing the "Remove Selected" button will delete the selected partner links.
OK
Closing the dialog by pressing the OK button cause all additions/deletions to be accepted.
Cancel
Closing the dialog by pressing the Close button cause all additions/deletions to be ignored.
This dialog can be resized by click/dragging any corner or side.
The standard Eclipse preferences dialog is used for Zenflow preferences. This can be seen using the main menu "Window → preferences → Zenflow". The following figure is an example of the Zenflow Preferences dialog.
Figure 5‑7. Zenflow Preferences Dialog
Display Activity
image
When this box is checked, the Process/Schema view will have the activity Icon displayed along side of the corresponding activity. Unchecking removes these Icon displays.
Object Visualization
Only the checked activity types will be shown in the Process view.
Display Arrows
The check indicates whether the lines between activity should be displayed with arrowheads or not.
|
Note: This dialog WILL change in future versions. |
This section describes how to accomplish several common operations and scenarios using Zenflow.
In both the graphic and scheme windows, complex activities can be expanded or collapsed. This is achieved by pressing on the "+" or "-" icon at the right hand side of the complex activity graphic image.
Note that expanded complex activities have two graphic images: one represents the opening BPEL element, and the second represents the closing BPEL element. This is shown in the following image.
Figure 6‑1. Graphic Display of an Expanded Complex Activity
As the above image illustrates, the "-" icon is on the right side of the opening graphic for the "Flow" activity. Clicking on this icon collapses the complex activity so that its internal child activities are not shown, as can be seen in the following image.
Figure 6‑2. Graphic Display of Collapsed Complex Activity
Collapsing activities is useful when working with large processes to assist in understanding the overall structure of the process. In addition, moving activities is affected by the expanded state of activities. See below on Moving Activities for more information.
To delete an activity, first select it by left clicking on the activity graphic, then press the delete key.
To select a "link", left click on the square selection point in the middle of the link line.
When a complex activity is deleted, all of its child activities are also deleted.
Activities are inserted as children of complex nodes.
To Insert an Activity:
1. Select the complex node that the new activity is to be added to by clicking on it.
2. To add the first activity to a new process, or to add global fault, compensation, or event handlers, right click on the background to obtain a process level context menu.
3. Right click to open the context menu, select "Insert", and then select the desired activity type. The “Insert” context menu will only display items for BPEL activities that are valid to insert in the selected parent. This is dependent on the type of parent activity selected: if that activity can contain more than one child, and if there is a current child. In some cases, the “Insert” context menu will be empty.
The new activity is added at the end of the child activities of the selected complex node.
4. If desired, move the activity using the procedure for Moving activities.
To avoid complex movement operations, it is recommended that activities be added to the complex node in which they should be contained.
Zenflow supports drag-and-drop operations to move activities in the graph.
Activity nodes can be dragged to new positions by left clicking the node and dragging. When dragged, the node "breaks away" from its current sequence and the lines to it are not drawn.
The following figure is a picture of an "Invoke" node that has been dragged up and "breaks away" from its parent "case" statement.
Figure 6‑3. Example of Node “Breaking Away” During a Moving Activity
While dragging the node, the graphic for the node is moved
with the mouse, and at the same time the cursor changes to either the “iBeam” or the standard "cross/sizeall"
cursor, depending on whether or not the mouse
is over a valid area for dropping the node.
Zenflow still enforces BPEL syntax in all cases.
If the node is dropped to an "invalid" target area, then the node is graphically moved, but it remains logically connected in the same sequence stream as before. In other words, the node is just moved on the display without affecting the BPEL model.
If the node is dropped on a target area where it is valid to insert that type of node, then the node is removed from its original sequence and added to the new sequence.
It is important to understand where the “drop zones” are located. This is different for “sequential” parent containers, such as a “Sequence” activity, and a parallel parent container such as a “Flow” activity.
For a "sequence", the drop zones are in the horizontal space between each consecutive child node. This should be very intuitive. To move an activity to be in a sequence, drag the activity between and in line with any two activities of the sequence. It may also be dropped just after the opening node of the sequence, or just prior to the closing node of the sequence.
For "parallel" activities (such as flow, switch, etc.) the drop zones are the vertical space above and below each immediate child, as well as the area just below the last child in the flow. To move an activity to make it the last child in a parallel activity, drop the node just below the current last child. To make a node the first in a flow, drop it in the area between the opening of the flow and its first child. If the child activities are expanded complex activities, then the drop zone is always above and below the opening node of the complex activity.
Any complex node can be dragged as well, whether or not the complex node is expanded. When moving complex activities, all the associated child nodes move with it if it is dropped in a valid area, as would be expected.
Moving nodes that are the source or target of a "link" causes the link to be disconnected. The link can subsequently be reconnected.
The easiest way to become familiar with the drop zones is to create a simple graph with a sequence activity and a flow activity, and insert a few simple activities in each. Then drag the simple activities around the graph between the various nodes and note whether the cursor becomes an ibeam, which means that a drop results in the node being moved in the BPEL, or if the cursor just stays as the "move" cursor, in which case a drop just changes the display.
In some cases it is desirable to surround an activity or a group of activities with a complex activity. A typical scenario would be to select a group of activities and surround them with either a "Scope" or "Sequence". This is done using the following procedure:
1. Select one or more consecutive activities with a ctrl-left click on their graphic image.
2. Right click and select "Insert".
3. Then select the desired parent activity type.
This section describes several BPEL activity types and elements that require special attention.
BPEL itself does not define a “comment” activity. However, a BPEL process is represented as a XML file. This allows XML comments to be present in the BPEL source code file. These comments are preserved by Zenflow.
When Zenflow parses a BPEL file, it may encounter XML comments. If an XML comment is encountered, it is saved and associated with the next activity that is defined. The XML comment can be seen as the “Description” property of each activity type. This is illustrated in the property window shown in the following figure.
Figure 7‑1. Properties Window with a ”Description” Property for the Activity Type
The “Description” property can be directly edited and the text will be saved in the BPEL file as a XML comment preceding the activity. This can be seen in the source code view shown in the following figure.
Figure 7‑2. Code View of “Description” Property
In general, the “Invoke” activity type is considered to be a “simple” activity type with no children. However, the “Invoke” is allowed to have a compensation handler, and to catch faults. (It may also have correlation sets, but that is managed as a property in the property window).
When an “Invoke” is first added to a process, it is displayed as a simple activity type, meaning there is no “+/-“ icon on its right hand side. However, unlike other simple activities, right clicking on a “Invoke” will bring up a context menu that allows for the insertion of “Catch”, “CatchAll”, and “Compensation handler” child activities. If one or more of these are added to an invoke activity, then the invoke is redrawn as a complex activity as shown in the following figure.
Figure 7‑3. Invoke Activity Redrawn as a Complex Activity
Links are used within Flow activities to introduce interdependencies between parallel paths of execution. Zenflow represents links as an arrow from the source activity to the target activity.
To insert a Link, right click on a “Flow” activity and select “Link” from the “Insert” menu. The link will be added directly below the flow activity as shown in the following figure.
Figure 7‑4. Link Showing Interdependency between Parallel Paths of Execution
The properties of the link can be displayed by left clicking on the square box at the midpoint of the link. Notice that the “Name” property is predefined because all links must have a name. It is recommended that a meaningful name be given to newly created links.
To connect a link, drag either endpoint to the desired source or target activity. The link should point from the source activity to the target activity; thus drag the end of the link without the arrowhead to the source activity, and drag the end with the arrowhead to the target. When either endpoint is dropped over an activity, the following confirmation box is displayed.
Figure 7‑5. Confirmation Box for Linking Activities
To delete a link, select it by left clicking on the square box at the midpoint of the link, and press the “delete” key.
If the source or target activity of a link is moved to a new location using a drag and drop operation, then the link is disconnected from that activity.
|
Note: Zenflow does not currently enforce proper link semantics, and will allow link endpoints to be connected to activities outside of the flow, or otherwise invalid with respect to the BPEL specification. The user must understand link restrictions and ensure that valid source/target activities are chosen for each link. |
If BPELJ has been enabled for the process (see Section 5.1), then it will be possible to add java code snippet activities to the process. These appear as any other “simple” activity. Left click on the activity to display the properties of the snippet in the properties window. The “Java Snippet” property displays the code within the snippet. Clicking on this row will open the snippet editor window as shown in the following figure.
Figure 7‑6. Display of Code within a “JavaSnippet”
Notice that the snippet editor window is created as a tab within file group, and, unlike the “Process”, “Scheme”, and “Sourcecode” tabs, the snippet editor tab can be closed.
The name of the tab will be the name given to the snippet activity. If a name has not been given to the activity, then a temporary name is generated for use only on the tab. Multiple snippet editors can be open concurrently within the same BPEL file.
If the snippet is modified, when the icon is pressed to close the snippet editor,
then the following confirmation dialog is displayed.
Figure 7‑7. Save BPELJ Snippet Confirmation Dialog
If “Yes” is pressed, then the changes to the snippet are saved in the process model. If “No” is pressed, then the process model is unchanged.
This section describes features available only when the Zenflow plug-in is used in the context of NovaStudio.
Dragging WSDL Files from NovaStudio Service View to Zenflow
The NovaStudio services view can be used to display various types of services, including WSDL files. The following figure shows this view along with Zenflow.
Figure 8‑1. NovaStudio Services View With Zenflow
Any WSDL file identified in the services view can be dragged up to the Zenflow graphic window and dropped. This will cause an import of the WSDL file into Zenflow to be done. The “WSDL Import Complete” dialog (see Section 5.2) will be displayed to confirm the import.
In the NovaStudio services view, it is possible to expand the WSDL file entries and display the methods available in the corresponding Web service.
Future versions of Zenflow will provide the capability of dragging the method up to the Zenflow graphic area and have an “Invoke” activity for the method automatically created. This functionality is not available at this time.