The ESB configuration language is a very powerful and robust way of driving enterprise data/messages through the ESB mediation engine. However, very a large amount number of configuration files in the form of sequences, endpoints, proxies , and transformations can be required to satisfy all the mediation requirements of your system. In such cases a number of configuration files will be scattered all over and would be extremely hard to manage. What would be frustrating to note is that, most of the configurations of particular types are redundant in nature.ESB templates ( New in version 4.0 ) try to To keep your configurations manageable, it's important to avoid scattering configuration files across different locations and to avoid duplicating redundant configurations.
ESB templates help minimize this redundancy by creating prototypes that users can use and reuse and utilize as and when needed. This is very much analogous to classes and instances of classes where-as, : a template is a class that can be used to wield instance objects such as templates and endpoints. Thus, ESB templates are an ideal way to improve reusability and readability of ESB configurations/XMLs. In addition to thatAdditionally, users can utilize use predefined templates that reflect commonly used common enterprise integration patterns for rapid development of ESB message/mediation flows.
ESB templates comes in two different forms.
Endpoint Template - Defines a templated form ofa ESB sequence. Sequence template has the ability to parameterize XPath expressions used within a sequence defined inside a template. We invoke a sequence template with the Call Template Mediator by passing parameter values.
an endpoint. An endpoint template can parameterize an endpoint defined within it. You invoke an endpoint template as follows:
<endpoint template=”name” ...> <parameter name=”name” value=”value”/> ..... </
- Defines a templated form of anendpoint
ESB sequence.Endpoint template has the ability to parameterize an endpoint defined within it. Invoking a template of this kind is achieved using a template endpoint.
A sequence template can parameterize XPath expressions used within a sequence that is defined inside a template. You invoke a sequence template with the Call Template mediator by passing in the parameter values as follows:
<call-template target=”template” > <parameter name=”name” value=”value”/> ..... </