Same document type as input to two int components

i have 3 integration components. first one:- publishes a
document. i want this particular document to trigger the
rest two integration components. second int. component
subscribes to the document type and works fine. but when i
try to assign the same document type to the third int.
component, it says “cannot use that as an input. The
integration component on the same adapter process is using
that input document type already”
how do i resolve this?

  • Create a second adapter and host on of the integrations
    on that.
  • OR -
  • Perform the actions needed by both integrations within a
    single integration. For example, move the logic of the 3rd
    integration to scripted/configured operations of the 2nd
    integration and call those operations from the component

Hi, Nagendra.

To clarify Rob’s point: if your adapter subscribes to the
same UDM for two separate events, there will be a flag which
indicates the action to take.

At the logical point in your integration component, set an
If/Else based on this flag.

This way, you can use one component and cover mutliple logic

Thanks for ur bits. performing both the actions in a single
integration is not a viable solution in my scenario. i want
these two integrations separate. so, how about publishing
two documents(though, they will have same content) one for
each integration. please comment on this.

Publishing two documents with identical information but of
two different document types will work. However, it will
increase the work you will have to perform if and when
changes occur. It also increases the complexity of the
system and will confuse other subscribers as to which
document type to subscribe to.

Would you mind elaborating on the reason why performing both
actions in the same integration is not a viable solution in
your scenario?

If you really don’t want to perform both action in a single
integration, for whatever reason, it would indicate the need
for two separate adapters, each of which will have its own
integration component triggered by the same document, which
is exactly what Rob’s first suggestion was.

If the drive for separate int.comps is separation of
business logic, then you can accomplish that by extracting
the logic for both actions into scripted operations. In
this case the int.comp is just the construct which calls
both scripted operations.