Standard processes for collaboration templates

This section describes the business process flow of a typical WebSphere Business Integration Server Express collaboration. The standard processes include the following:

The business process flow differs depending on the triggering verb and values of the collaboration object's configuration properties.

Retrieve process

A collaboration can receive a triggering business object that uses the Retrieve verb. It is assumed that a source application's business object uses this verb when its attributes contain cross-referenced key values. The business object's map and the destination application's connector use the primary key to return the business object from the destination application.

Figure 81 illustrates a collaboration's process for retrieving business objects when the triggering verb is Retrieve.

Figure 81. Retrieve process


Use_Retrieve process

Figure 82 illustrates a collaboration's Use_Retrieve Process when its USE_RETRIEVE configuration property evaluates to true. For information about the configuration property, see its entry in TABLEA3.

Figure 82. Use_Retrieve process


Table 89 illustrates the relationship between the setting for the USE_RETRIEVE and CONVERT_CREATE properties when the triggering verb is Create. The relationship is similar between the USE_RETRIEVE and CONVERT_UPDATE properties.

Table 89. Relationship between the USE_RETRIEVE and CONVERT_CREATE properties

Value of USE_RETRIEVE Value of CONVERT_CREATE Action
true True Retrieve the business object from the destination application.

If the destination application does not return a business object, send the business object with the Create verb to the destination application.

If the destination application returns a business object, check whether the source and destination business objects are identical:

  • If they are identical, raise an exception stating that the business objects are identical and stop processing.
  • If they are not identical, convert the Create verb to the Update verb and send the business object to the destination.
false True Send the business object with the create verb to the destination application.
  • If the destination application fails to create the business object, convert the Create verb to the Update verb and resend the business object.
  • If the destination application succeeds in creating the business object, continue processing.
false False Send the business object with the Create verb to the destination application.
  • If the destination application fails to create the business object, raise an exception and stop processing.
  • If the destination application succeeds in creating the business object, continue processing.
true False Retrieve the business object from the destination application.

If the destination application does not return a business object, send the business object with the Create verb to the destination application.

If the destination application returns a business object, determine whether the source and destination business objects are identical.

  • If they are identical, raise an exception stating that the CONVERT_CREATE property value evaluates to false and stop processing.
  • If they are not identical, raise an exception and stop processing.

Filtering process

Figure 83 illustrates a collaboration's process for filtering business objects based on values in specified attributes.

Figure 83. Filtering process


The above graphic refers to filter configuration properties with an "X_" rather than "1_" because you can add sets of filtering configuration properties to the collaboration in order to filter on multiple attributes. For more information on adding filter properties, see Filtering data in the triggering business object and Table 90.

To understand the collaboration's behavior when 1_FAIL_ON_INVALID_VALUE evaluates to false, assume that a top-level business object named BusObjA contains an array of child business objects named BusObjB. Assume further that each BusObjB child business object contains an array of child business objects named BusObjC. To filter on an attribute named Type in the BusObjB business object, set the value of 1_FILTER_ATTRIBUTE to BusObjA.BusObjB.Type. To exclude all business objects whose Type contains the value of "Non-standard", set the value of the 1_EXCLUDE_VALUES property to "Non-standard".

Now assume that one of the business objects in the array of BusObjB has a value of "Non-standard" in its Type attribute and that 1_FAIL_ON_INVALID_VALUE evaluates to false. The collaboration removes this business object and its child business objects from processing.

Note:
If the attribute that fails filtering is contained by the top-level business object, the collaboration continues processing the entire business object.

Additional Retrieve process

If a collaboration's ADDITIONAL_RETRIEVE property evaluates to true, the collaboration retrieves the business object from the destination application after it has successfully synchronized the data. This property is useful when the source application requires a full-valued business object to be returned from the destination application, but the destination application's connector does not send back a complete business object after creating or updating its data. For more information on the ADDITIONAL_RETRIEVE configuration property, see Standard properties for collaboration templates.

Figure 84 illustrates a collaboration's Additional Retrieve process.

Figure 84. Additional Retrieve process


Email process for error handling

The settings of a collaboration's SEND_EMAIL and INFORMATIONAL_EXCEPTIONS properties determine whether the collaboration does one of the following:

Figure 85 illustrates a collaboration's process for sending email and determining whether a particular exception can cause the collaboration to end in failure.

Figure 85. Email process for error handling


Copyright IBM Corp. 2004