You can configure transaction properties for COM components and Windows Script components on the Advanced Port Properties pages of the COM Component Binding Wizard and the Script Component Binding Wizard. The Advanced Port Properties page provides an option to abort the current transaction when an error is returned from a method in a component. On the Advanced Port Properties page, you can configure the following transactional properties:
- Transaction support. The Transaction support property specifies the degree to which your component will require, support, or ignore transactions.
- Disabled. This selection specifies that the component will ignore COM transaction management.
- Not Supported. This selection specifies that the component will not participate in a transaction, or propagate the transactions of other components.
- Supported. This selection specifies that if a transaction contains an action that is connected to the port to which the component is bound, the component will be included in the transaction. Otherwise, the component will not have a transaction.
- Requires New. This selection specifies that if a transaction contains an action that is connected to the port to which the component is bound, the component will be included in the transaction. If there is no transaction containing an action that is connected to the port to which the component is bound, a new transaction will be created for the component.
- Requires new. This selection specifies that a new transaction will always be created for the component.
Important
- BizTalk Orchestration Designer relies on the transactional behavior of the implementation technologies that are utilized in a XLANG schedule drawing. It does not provide or impose transactional behavior on a business process if the XLANG schedule drawing contains a Transaction shape. If a COM component, Message Queue, or Script is not transactional, the data manipulated by the XLANG schedule drawing will not be modified in a transactional manner.
Notes
- When you set the Transaction Model property to treat the XLANG schedule as a COM component, do not use Transaction shapes in the XLANG schedule drawing. If you use Transaction shapes, and then attempt to compile the XLANG schedule drawing into an XLANG schedule, the compile process will not work. You must remove all Transaction shapes from the XLANG schedule drawing before compiling.
- If the use of a COM component occurs in multiple transactions, the COM component must either hold no state or hold state and support persistence.
- If multiple actions communicate with a port bound to a COM or Script component, and these actions can be found within multiple transactions that are not nested within each other, the component instances will be destroyed and instantiated again prior to each new transactional context. If the component holds state, and supports persistence, the reactivation will restore the state. If the component holds state, and does not support persistence, the state will be lost. If the component was instantiated by another application, the XLANG Scheduler Engine will be able to reactive the component only if it is persistable. If the component was instantiated by another application and cannot be persisted, the XLANG Scheduler Engine will not be able to instantiate the component again, and the XLANG schedule will fail with an error.
Related Topics