User Community Service Desk Downloads
If you can't find the product or version you're looking for, visit support.ataccama.com/downloads

Publishers

Each publisher has to be configured to connect to external systems. Double-click the number next to a given publisher to open the configuration.

Sample publisher configurations can be found in MDM Example Project project in your build.
If publishing of an event fails for any publisher, the publishing is stopped. When resumed, the event at which the failure occurred is published again by all publishers (that means some publishers might have distributed it multiple times). The preceding events are not published again.

Event JMS publisher

This publisher sends the events through Java Message Service (for more information, see Oracle JMS article.

To run this publisher, the JMS server component must first be configured in the MDM runtimeConfig. For more information, see Server Configuration for MDM Web App.

To configure the event JMS publisher:

  1. Create a new event handler as described in Processors.

  2. Switch to the Publishers tab, select Add and then Event JMS Publisher.

  3. Double-click the row number of the publisher to see the configuration details.

  4. Configure the settings on the General tab:

    • Enable (Boolean) - Select this to enable the publisher.

    • Description (optional) - Description of the publisher.

    • Connection Name - Name of the JMS connection configured in the server configuration.

    • Destination - Target JMS queue or topic destination.

      A destination is the object a client uses to specify the target of messages it produces and the source of messages it consumes.

      In the PTP messaging domain, destinations are called queues. In the pub/sub messaging domain, destinations are called topics.

      A JMS application can use multiple queues or topics (or both).

    • Content Type - Sets the info header of the media type; the default value is text/plain.

    • Transformers - This is the specification of a transformer, an element that transforms the event into text (see Event Handler, section Transformers).

      • Simple XML Transformer: Transforms events to simple predefined XML. Does not require any template configuration.

        • Description Indent (Boolean) - If enabled (default), the XML is pretty-printed.

        • Include Old Values (Boolean) - If enabled, the XML contains the old values of attributes.

      • Expressions Template Transformer:

        • Entity Name - Optional entry that declares the entity that flows into this transformer (and if there’s an incoming event from a different entity, an exception is thrown). If omitted, all entities are accepted, but no data columns are available.

        • Template - Message text with nested ONE expressions.

          Example template definition
          <transformer class="com.ataccama.nme.engine.event.handler.publishers.transformers.ExpressionTemplateTransformer">
          <entity name="party" layer="master" masterView="MasterView" />
          <template>Some text with ${'ONE expressions'} inside it.</template>
          </transformer>
  5. Configure the advanced settings on the Advanced Settings tab (optional):

    • Filter Incoming Events Setting (Boolean) - If enabled, filters the flow of incoming events according to the configuration defined.

    • General Filter Expression - A common filter based on metadata attributes: only the meta dot-source can be used here.

      A Boolean ONE expression can be specified. In that case, only the events for which the expression evaluates to true are accepted. For more information, see Event Handler, section Evaluation of ONE expressions.

    • Filtered Entities - Define which entities should be monitored for data changes (events from all other entities are filtered out). Optionally, use a filter expression on the entity level: meta, new, and old dot-sources can be used here.

      Each entity can have its own filterExpression that works exactly like the filterExpression except all the data columns are available (old and new values of the changed records as well as metadata columns).

    • Retry Publishing Settings (Boolean) - If enabled, the configuration defines the following:

      • Global Retries - Initial number of retries.

      • Retry Delay - Delay before retrying, after a failed attempt to publish an event (in seconds).

      • Consecutive Success Granting Retry - Number of consecutive successes that will generate another retry (0 means no retries are generated).

      • Maximum Retries - Limit of retries allowed.

  6. Select Apply to save your changes.

  7. Go to Output Interfaces > Event Handlers. Right-click and select Generate.

Event plan publisher

This publisher send events as records to a configured plan.

Only the events of the entities defined in the steps that follow are processed. Each entity is generated as a separate Integration Input in the plan.

This publisher is available to both SoR and consolidation event handlers.

To configure the event plan publisher:

  1. Create a new event handler as described in Processors.

  2. Switch to the Publishers tab, select Add and then Event Plan Publisher.

  3. Double-click the row number of the publisher to see the configuration details.

  4. Configure the settings on the General tab:

    • Enable (Boolean) - Select this to enable the publisher.

    • Description (optional) - Description of the publisher.

    • Suffix (optional) - Attribute that is used to differentiate between several plan publishers with the same layer name and entity.

      For better plan name readability, use underscore at the beginning of the suffix.
    • Layer Name - Select the desired layer.

    • Entity Name - Select the desired entity.

    • All Columns (Boolean) - If enabled, events for all columns in the selected entity are published.

      If All Columns is selected, including meta columns and columns in this section returns an error.
    • Meta Columns - Define the meta columns that are processed for the defined entity.

    • Columns - Define the columns that are processed for the defined entity.

    • Old Value (Boolean) - If enabled, the original values for those columns are sent to the plan.

    • New Value (Boolean) - If enabled, the new values for those columns are sent to the plan.

  5. Configure the advanced settings on the Advanced Settings tab (optional):

    • Filter Incoming Events Setting (Boolean) - If enabled, filters the flow of incoming events according to the configuration defined.

    • Filter Expression - A common filter based on data attributes.

      A Boolean ONE expression can be specified. In that case, only the events for which the expression evaluates to true are accepted. For more information, see Event Handler, section Evaluation of ONE expressions.

    • Retry Publishing Settings (Boolean) - If enabled, the configuration defines the following:

      • Global Retries - Initial number of retries.

      • Retry Delay - Delay before retrying, after a failed attempt to publish an event (in seconds).

        • Consecutive Success Granting Retry - Number of consecutive successes that will generate another retry (0 means no retries are generated).

      • Maximum Retries - Limit of retries allowed.

  6. Select Apply to save your changes.

  7. Go to Output Interfaces > Event Handlers. Right-click and select Generate.

We recommend using the event plan publisher with the simple event processor. For more information, Processors.

Event SQL publisher

This publisher executes an SQL statement on a database.

To run this publisher, a data source must first be configured in the MDM serverConfig. For more information, see Server Configuration for MDM Web App.

To configure the event SQL publisher:

  1. Create a new event handler as described in Processors.

  2. Switch to the Publishers tab, select Add and then Event SQL Publisher.

  3. Double-click the row number of the publisher to see the configuration details.

  4. Configure the settings on the General tab:

    • Enable (Boolean) - Select this to enable the publisher.

    • Description (optional) - Description of the publisher.

    • Data Source - MDM hub data source: a named database connection defined in the server configuration.

    • Entity Name - Defines the entity to be used in the template.

    • Template - SQL template used for publishing events into a database.

      Example template
      insert into PARTY_MAS (N_CMO_COMP_NAME, O_CMO_COMP_NAME) values (${new.cmo_company_name}, ${old.cmo_company_name})
  5. Configure the advanced settings on the Advanced Settings tab (optional):

    • Filter Incoming Events Setting (Boolean) - If enabled, filters the flow of incoming events according to the configuration defined.

    • General Filter Expression - A common filter based on data attributes.

      A Boolean ONE expression can be specified. In that case, only the events for which the expression evaluates to true are accepted. For more information, see Event Handler, section Evaluation of ONE expressions.

    • Filtered Entities - Define which entities should be monitored for data changes (events from all other entities are filtered out). Optionally, use a filter expression on the entity level: meta, new, and old dot-sources can be used here.

      Each entity can have its own filterExpression that works exactly like the filterExpression except all the data columns are available (old and new values of the changed records as well as metadata columns).

    • Retry Publishing Settings (Boolean) - If enabled, the configuration defines the following:

      • Global Retries - Initial number of retries.

      • Retry Delay - Delay before retrying, after a failed attempt to publish an event (in seconds).

      • Consecutive Success Granting Retry - Number of consecutive successes that will generate another retry (0 means no retries are generated).

      • Maximum Retries - Limit of retries allowed.

  6. Select Apply to save your changes.

  7. Go to Output Interfaces > Event Handlers. Right-click and select Generate.

HTTP SOAP publisher

This type of publisher constructs a SOAP message and then sends it through an HTTP protocol to a specified destination.

To run this publisher, a URL resource must first be configured in the MDM runtimeConfig. For more information, see Server Configuration for MDM Web App.

To configure the HTTP SOAP publisher:

  1. Create a new event handler as described in Processors.

  2. Switch to the Publishers tab, select Add and then HTTP SOAP Publisher.

  3. Double-click the row number of the publisher to see the configuration details.

  4. Configure the settings on the General tab:

    • Enable (Boolean) - Select this to enable the publisher.

    • Description (optional) - Description of the publisher.

    • URL Resource Name - Name of the URL resource configured in the server runtime configuration file (see Runtime Configuration).

    • SOAP Action - Defines an appropriate name for the SOAP Action filter.

    • SOAP Version - Select between SOAP 1.1 and 1.2.

    • Timeout (optional) - Timeout limit in milliseconds (default is 5000).

    • Encoding (optional) - Encoding type (default is UTF-8).

    • Delay between requests (optional) - Delay in milliseconds (default is 0).

    • Transformers - This is the specification of a transformer, an element that transforms the event into text (see Event Handler, section Transformers).

      • Simple XML Transformer: Transforms events to simple predefined XML. Does not require any template configuration.

        • Description Indent (Boolean) - If enabled (default), the XML is pretty-printed.

        • Include Old Values (Boolean) - If enabled, the XML contains the old values of attributes.

      • Expressions Template Transformer:

        • Entity Name - Optional entry that declares the entity that flows into this transformer (and if there’s an incoming event from a different entity, an exception is thrown). If omitted, all entities are accepted, but no data columns are available.

        • Template - Message text with nested ONE expressions.

          Example template definition
          <transformer class="com.ataccama.nme.engine.event.handler.publishers.transformers.ExpressionTemplateTransformer">
          <entity name="party" layer="master" masterView="MasterView" />
          <template>Some text with ${'ONE expressions'} inside it.</template>
          </transformer>
  5. Configure the advanced settings on the Advanced Settings tab (optional):

    • Filter Incoming Events Setting (Boolean) - If enabled, filters the flow of incoming events according to the configuration defined.

    • General Filter Expression - A common filter based on data attributes.

      A Boolean ONE expression can be specified. In that case, only the events for which the expression evaluates to true are accepted. For more information, see Event Handler, section Evaluation of ONE expressions.

    • Filtered Entities - Define which entities should be monitored for data changes (events from all other entities are filtered out). Optionally, use a filter expression on the entity level: meta, new, and old dot-sources can be used here.

      Each entity can have its own filterExpression that works exactly like the filterExpression except all the data columns are available (old and new values of the changed records as well as metadata columns).

    • Retry Publishing Settings (Boolean) - If enabled, the configuration defines the following:

      • Global Retries - Initial number of retries.

      • Retry Delay - Delay before retrying, after a failed attempt to publish an event (in seconds).

      • Consecutive Success Granting Retry - Number of consecutive successes that will generate another retry (0 means no retries are generated).

      • Maximum Retries - Limit of retries allowed.

  6. Select Apply to save your changes.

  7. Go to Output Interfaces > Event Handlers. Right-click and select Generate.

The following is a sample HTTP SOAP Publisher configuration:

HTTP SOAP Publisher sample configuration
Expression template example

Standard output publisher

This publisher outputs events to Standard Ouput (StdOut). It is useful for debugging and presenting.

To configure the HTTP SOAP publisher:

  1. Create a new event handler as described in Processors.

  2. Switch to the Publishers tab, select Add and then Standard Output Publisher.

  3. Double-click the row number of the publisher to see the configuration details.

  4. Configure the settings on the General tab:

    • Enable (Boolean) - Select this to enable the publisher.

    • Description (optional) - Description of the publisher.

    • Transformers - This is the specification of a transformer, an element that transforms the event into text (see Event Handler, section Transformers).

      • Simple XML Transformer: Transforms events to simple predefined XML. Does not require any template configuration.

        • Description Indent (Boolean) - If enabled (default), the XML is pretty-printed.

        • Include Old Values (Boolean) - If enabled, the XML contains the old values of attributes.

  5. Configure the advanced settings on the Advanced Settings tab (optional):

    • Filter Incoming Events Setting (Boolean) - If enabled, filters the flow of incoming events according to the configuration defined.

    • General Filter Expression - A common filter based on data attributes.

      A Boolean ONE expression can be specified. In that case, only the events for which the expression evaluates to true are accepted. For more information, see Event Handler, section Evaluation of ONE expressions.

    • Filtered Entities - Define which entities should be monitored for data changes (events from all other entities are filtered out). Optionally, use a filter expression on the entity level: meta, new, and old dot-sources can be used here.

      Each entity can have its own filterExpression that works exactly like the filterExpression except all the data columns are available (old and new values of the changed records as well as metadata columns).

    • Retry Publishing Settings (Boolean) - If enabled, the configuration defines the following:

      • Global Retries - Initial amount of retries.

      • Retry Delay - Delay before retrying, after a failed attempt to publish an event (in seconds).

      • Consecutive Success Granting Retry - Amount of consecutive successes that will generate another retry (0 means no retries will be generated). Maximum Retries - Limit of retries allowed.

  6. Select Apply to save your changes.

  7. Go to Output Interfaces > Event Handlers. Right-click and select Generate.

Traversing plan publisher

The traversing plan publisher is an extension to the event plan publisher. It ensures that all related records defined by the model are present in the plan.

The configuration requires defining a root entity and related entities. Master entity-based roots can have both other master and instance entities as related entities. Instance entity-based roots can have other instance entities as related entities.

When an event containing one or more entities from the defined model is sent to the publisher, the adapter traverses through all the relationships between the entities, retrieves their data, and provides them to the plan to their corresponding Integration Inputs.

The traversing plan publisher is called by the processor for each group of related records that will always contain at least one record that had some change event. The record group is always consistent and complete based on the defined publisher model configuration (that is usually a subset of the MDM hub model).

To configure the traversing publisher:

  1. Create a new event handler as described in Processors.

  2. Switch to the Publishers tab, select Add and then Traversing Plan Publisher.

  3. Double-click the row number of the publisher to see the configuration details.

  4. Configure the settings:

    • Enable (Boolean) - Select this to enable the publisher.

    • Description (optional) - Description of the publisher.

    • Name (optional) - Attribute that is used to differentiate between several plan publishers with the same layer name and entity.

    • Root Entity - Press Ctrl+Space to see a list of the root entities. The root entity should be the top-level parent in the data tree that is sent to the plan. It is the entity for which the related entities are configured and the data retrieved.

      For better plan name readability, use underscore at the beginning of the suffix.
    • All Columns (Boolean) - If enabled, events for all columns in the selected entity are published.

      If All Columns is selected, including meta columns and entity columns in this section returns an error.
    • Meta Columns - Define the metadata columns that are provided in the publishing plan.

    • Entity Columns - Define the entity columns that are provided in the publishing plan. Old Value (Boolean) - If enabled, the original values for those columns are sent to the plan. Actual Value (Boolean) - If enabled, the current values for those columns are sent to the plan. Related Entities - Choose the related entities you want to include in the publisher (only child entities of the defined root entity can be chosen). The depth of relations is dependent on your model.

  5. Select Apply to save your changes.

  6. Go to Output Interfaces > Event Handlers. Right-click and select Generate.

    Traversing plan publisher - example configuration
    <publisher class="com.ataccama.nme.dqc.event.EventPlanPublisher">
    <planFileName>../engine/events/tp_party_master.comp</planFileName>
    <entities>
    <entity layer="master" masterView="masters" name="party"/>
    <entity layer="master" masterView="masters" name="address"/>
    <entity layer="master" masterView="masters" name="contact"/>
    <entity layer="master" masterView="masters" name="id_document"/>
    <entity layer="master" masterView="masters" name="consent"/>
    <entity layer="instance" name="party"/>
    </entities>
    <adapter class="com.ataccama.nme.engine.event.handler.publishers.TraversingEventAdapter">
    <root>
    <master name="party" view="masters">
    <childEntities>
    <entity name="address" relationshipName="party" view="masters"/>
    <entity name="contact" relationshipName="party_has_contact" view="masters"/>
    <entity name="id_document" relationshipName="party" view="masters"/>
    <entity name="consent" relationshipName="party" view="masters"/>
    </childEntities>
    <instance name="party"/>
    </master>
    </root>
    </adapter>
    </publisher>
We recommend using the traversing plan publisher with the grouping event processor to remove duplicate results. For more information, see Processors, section Grouping event processor configuration.

iSM publisher

This publisher compiles an XML message from every event it receives. Every XML message is then prefixed with the length of the message in the form of a 4-byte binary integer (big endian) and sent separately to the specified host and port.

This publisher is available to both SoR and consolidation event handlers.

To configure the iSM publisher:

  1. Create a new event handler as described in Processors.

  2. Switch to the Publishers tab, select Add and then iSM Publisher.

  3. Double-click the row number of the publisher to see the configuration details.

  4. Configure the settings:

    • Enable (Boolean) - Select this to enable the publisher.

    • Description (optional) - Description of the publisher.

    • Host - Target host (for example, localhost).

    • Port - Target port (for example, 8888).

    • Target System - The targetSystem property in the message. For more information, see Event Handler, section Publishers.

  5. Configure the advanced settings on the Advanced Settings tab (optional):

    • Filter Incoming Events Setting (Boolean) - If enabled, filters the flow of incoming events according to the configuration defined.

    • General Filter Expression - A common filter based on data attributes.

      A Boolean ONE expression can be specified. In that case, only the events for which the expression evaluates to true are accepted. For more information, see Event Handler, section Evaluation of ONE expressions.

    • Filtered Entities - Define which entities should be monitored for data changes (events from all other entities are filtered out). Optionally, use a filter expression on the entity level: meta, new, and old dot-sources can be used here.

      Each entity can have its own filterExpression that works exactly like the filterExpression except all the data columns are available (old and new values of the changed records as well as metadata columns).

    • Retry Publishing Settings (Boolean) - If enabled, the configuration defines the following:

      • Global Retries - Number of retries.

      • Retry Delay - Delay before retrying, after a failed attempt to publish an event (in seconds).

      • Consecutive Success Granting Retry - Number of consecutive successes that will generate another retry (0 means no retries are generated).

      • Maximum Retries - Limit of retries allowed.

  6. Select Apply to save your changes.

  7. Go to Output Interfaces > Event Handlers. Right-click and select Generate.

Was this page useful?