Template Properties

Introduction

A large number of configuration files in the form of sequences, endpoints, proxy services, and transformations can be required to satisfy all the mediation requirements of your system. To keep your configurations manageable, it's important to avoid scattering configuration files across different locations and to avoid duplicating redundant configurations.

Templates help minimize this redundancy by creating prototypes that users can use and reuse when needed. This is very much analogous to classes and instances of classes: a template is a class that can be used to wield instance objects such as sequences and endpoints. Thus, templates are an ideal way to improve reusability and readability of configurations/XMLs. Additionally, users can use predefined templates that reflect common enterprise integration patterns for rapid development of message/mediation flows.

Template Type Description
Endpoint Template Endpoint template is a generalized form of endpoint configurations. It parameterizes a list of endpoint configurations. This allows a mediation flow to use the template parameters to select specific endpoint configurations (defined in the template) and apply them to the mediation flow.

Unlike sequence templates, endpoint templates are always parametrized using $ prefixed values (not XPath expressions). Once an endpoint template is created, it can be referred in a mediation flow through a Template Endpoint. Therefore, the template endpoint is the artifact that translates this template into a concrete endpoint. This is semantically similar to the relationship between a sequence template and the Call Template Mediator.
Sequence Template This is a parametrized sequence providing an abstract or generic form of a sequence defined in the Micro Integrator. Parameters of a template are defined in the form of XPath statements. Callers can invoke the template by populating the parameters with static values/XPath expressions using the Call Template mediator, which makes a sequence template into a concrete sequence.

See the topics given below for the list of properties that can be configured when you create an artifact template.

Sequence Template Properties

The parameters available to configure the Sequence Template are as follows.

Parameter Description
Name The name of the Sequence Template.
onError Select the error sequence that needs to be invoked.
Trace Enabled Whether or not trace is to be enabled for the sequence.
Statistics Enabled Whether or not statistics is to be enabled for the sequence.
Template Parameters The input parameter that are supported by this Sequence Template.
isMandatory Set this parameter to 'true' if a value is required to be passed for the configuration.

When this parameter is 'true', if a value is not passed from a Call Template mediator as shown below, the Micro Integrator will first check for a defaultvalue. If a defaultValue does not exist, the 'onError' sequence of the Call Template mediator will be called.

If an empty value is passed in the Call Template mediator, the empty value will be used instead of using the default value.

See the example use cases for details.
defaultValue Specifies a default value that should apply when a value is not passed when calling the template. See the example use cases for details.

Endpoint Template Properties

The basic parameters available to configure the Endpoint template are as follows.

Parameter Description
Name The name of the Endpoint template. This name will be referred by Template Endpoint to access the parameters defined within the Endpoint template.
Parameter Value Parameters added to the endpoint template. As the endpoint defined within the endpoint template is parameterized using these parameters. Therefore, these can be accessed from Template Endpoints.

Endpoint Properties (Required)

An Endpoint Template contains an Endpoint artifact. The following Endpoint properties are required depending on the template type:

Template Type Description
Address Endpoint Template The following information needs to be specified:
  • Template Name: The unique name for the endpoint template.
  • Name: A name for the inline endpoint.
  • Address: The URL of the template endpoint. This can be a parametrized value such as $uri.
Default Endpoint Template The following information needs to be specified:
  • Template Name: The unique name for the endpoint template.
  • Name: A name for the inline endpoint.
WSDL Endpoint Template The following information needs to be specified:
  • Template Name: The unique name for the template.
  • Name: A name for the inline endpoint.
  • Specify As: The method to specify the WSDL. The available values are as follows:
    • In-lined WSDL: Paste the WSDL in the text box that appears when this option is selected.
    • URI: Activates the WSDL URI field.
  • WSDL URI: The URI of the WSDL.
  • Service: The service selected from the available services for the WSDL.
  • Port: The port selected for the service specified in the above field. In a WSDL an endpoint is bound to each port inside each service.
HTTP Endpoint Template You can define a URI template based REST service endpoint. The Endpoint Template has the following options:
  • Template Name: The unique name for the endpoint template.
  • Name: A name for the inline endpoint.
  • URI Template: The URI template of the endpoint. Insert uri.var. before each variable.

Endpoint Properties (Optional)

To configure the other Endpoint properties of the inline Endpoint, see Endpoint Properties.

Top