Dynamic Addressing uses Normalized Message Properties to dynamically override the static configuration of an endpoint and reroute messages accordingly. The message payload can contain the location of the message consumer as well as other binding protocol specific information to configure endpoint behavior.
Normalized Message properties are commonly used to specify metadata that is associated with message content. javax.jbi.security.subject and javax.jbi.message.protocol.type are two examples of standard normalized Message properties defined in the JBI Specification.
Normalized Message properties provide additional capabilities, including the following:
Getting and setting transport context properties; for example, HTTP headers in the incoming HTTP request or file names read by the File Binding Component.
Getting and setting protocol-specific headers or context properties (SOAP headers).
Getting and setting additional message metadata; for example. a unique message identifier or an endpoint name associated with a message.
Dynamic configurations; for example, to dynamically overwrite the statically configured destination file name at runtime.
Some of the use cases mentioned above require protocol and binding specific properties, typically used by a particular binding component. Other properties are considered common or general purpose properties that all participating JBI components make use of, such asthe message ID property, which can be utilized to uniquely identify or track a given message in the integration.