Dynamic properties can be overridden, at run time, using mediation policies.
Any property that you promote on a mediation primitive is also a dynamic property. Dynamic properties can occur in a request, response, or fault flow; they can be overridden, at run time, using mediation policies in a registry. Although you can override promoted properties dynamically, you must always specify a valid default value.
Promoted properties have a group name, an alias name, a type, and value: all of which you can set from WebSphere® Integration Developer. Multiple promoted properties can be given the same alias name if they are of the same type. You can see the promoted properties on the runtime administrative console, and you can set the property values administratively.
When you use mediation policies, the property group name is used to construct the mediation policy namespace, and the alias name must map to an assertion name in the mediation policy. For example, suppose a property has an alias name of beforeRequestTransform and a group of stockQuoteGroup. The mediation policy refers to the property with the name beforeRequestTransform, and uses the group stockQuoteGroup as the namespace of the mediation policy assertion.
After mediation policy information has been retrieved from the registry, the run time stores it in the dynamicProperty context of the service message object (SMO). The information in the dynamicProperty context can be used to override the values of promoted properties that come later in the flow.
Element | Value | Description |
---|---|---|
group | String | The group name of the property to be overridden. |
name | String | The alias name of the property to be overridden. |
value | String | The value to be used. |
type | String | The property type. |
When available, the mediation policy values take precedence at run time. If a mediation policy is not found, or is unsuitable, the run time uses the promoted property values shown on the administrative console.
If the dynamic override fails for a particular mediation primitive, the fail terminal of that mediation primitive is fired. A dynamic override can fail for a number of reasons. For example, if you try to override the XSL stylesheet of the XSL Transformation primitive, but the stylesheet cannot be found at run time.