Skip to main content
Skip table of contents

ExtendedServiceInvoker

Extended Service Invoker allows users to connect to an existing extended service, which is achieved by communicating with the ports exposed in Port Configuration of that extended service.

The ports can be added in synchronous pairs each constituting one input port and one or more output ports. In such a synchronous case, the messages can have ‘Execution Timeout’ and ‘Time to Live’. Ports that are not included in synchronous pairs will be treated as asynchronous ports.

Component Configuration

The configuration for ExtendedServiceInvoker is defined in the ExtendedServiceInvoker Configuration Property Sheet (CPS) as shown in the figure below.

image-20240221-072925.png

Figure 1: ExtendedServiceInvoker CPS

Attributes

Error Handling Configuration

image-20240221-073023.png

Figure 2: Error handling configuration

The remedial actions to be taken when a particular error occurs can be configured here. Click the ellipses button against this property to configure Error Handling properties for different types of errors. By default, the options Log to Error Logs and Send to error port are enabled.

Please refer to the Error Handling section on the Common Configurations page for documentation.

FES Connection Configuration

Details of Enterprise Server Connection can be provided by clicking the ellipses button.

image-20240221-073145.png

Figure 3: FES Connection Configuration

URL

The URL of the enterprise server to which the peer server on which the component is running is connected.

Username

User name that should be used to connect to the enterprise server.

Password

Password that should be used to connect to the enterprise server.

Backup URL

The alternate URL that should be tried for connecting to the enterprise server if the enterprise server cannot be connected to using the URL mentioned against the property FES URL.

In case of enterprise servers in HA mode, this should point to a secondary server URL if the primary is set against the Server URL property and vice-versa.

Server Call Timeout

Sets the timeout for the calls made to the Enterprise Server. The default value is 180 Seconds.

This value should be increased to avoid timeout with the Enterprise server while launching Components.

Port Configuration

image-20240229-101950.png

Figure 4: Port Configuration panel

Extended Service Name

Name of the extended service which has to be invoked.

Synchronous Ports Table

Table to which Synchronous Port Pairs can be added.

InputPort & OutputPorts

Select synchronous port pairs. Each pair can have one input port and one or more output ports. Click the Add button to add ports. Click the ellipsis button in the table cell to select the desired port.

Figure 5: InputPort selection window

Figure 6: OutputPorts selection window

Create connection at startup

JMS Connection for the ports to be created when the component is launched (enabled state) or when the first message arrives (disabled state).

Execution Timeout (millisec)

Timeout to process the message in synchronous case in milliseconds.

The Execution Timeout property and the Time To Live property described below will be visible in the CPS only in case of Synchronous Port and only after adding ports in the Port Configuration panel.

Time To Live (millisec)

Time for which the message can be alive in synchronous case in milliseconds.

Expert Properties

Enable the Show Expert Properties checkbox to make the expert properties visible.

Expert properties are meant for advanced users; please use them with caution.

image-20240219-073320.png

Figure 7: CPS with Expert Properties enabled and highlighted

Attributes

Pre Processing XSL Configuration

Pre Processing XSL configuration can transform the request message before processing it. Click the ellipses button against the property to configure the properties.

Refer to the Pre/Post Processing XSL Configuration section under the Common Configurations page for details regarding Pre Processing XSL configuration and Post Processing XSL configuration (below).

Post Processing XSL Configuration 

Post Processing XSL configuration can transform the response message before sending it to the output port.

Process Message Based on Property

The property helps components to skip certain messages from processing.

Refer to the Process Message Based On a Property section under the Common Configurations page.

Functional Demonstration

This demonstration uses Extended Service Invoker to invoke ExtendedService1 where XMLSplitter1(refer to the Functional Demonstration section, Scenario 1, in the XMLSplitter microservice help page for configuration) is deployed. The Input and Output ports of XMLSplitter1 are exposed in the Properties panel which is displayed in the Port Configuration tab.

Figure 8: Extended Service for demonstration

Figure 9: Sample flow with ExtendedServiceInvoker

Sample Input

CODE
<ns1:BookStore
	xmlns:ns1="http://www.books.org">
	<ns1:Book>
		<ns1:Title>StoryOfLife</ns1:Title>
		<ns1:Author>Bailey</ns1:Author>
		<ns1:Date>11/05/2021</ns1:Date>
		<ns1:ISBN>ISBN1</ns1:ISBN>
		<ns1:Publisher>RootedBooks</ns1:Publisher>
	</ns1:Book>
	<ns1:Book>
		<ns1:Title>HorrorStory</ns1:Title>
		<ns1:Author>George</ns1:Author>
		<ns1:Date>21/07/2021</ns1:Date>
		<ns1:ISBN>ISBN2</ns1:ISBN>
		<ns1:Publisher>GrootedBooks</ns1:Publisher>
	</ns1:Book>
	<ns1:Book>
		<ns1:Title>CountryLife</ns1:Title>
		<ns1:Author>Auchentoshan</ns1:Author>
		<ns1:Date>31/05/2020
		</ns1:Dte>
		<ns1:ISBN>ISBN3</ns1:ISBN>
		<ns1:Publisher>DistilledBooks</ns1:Publisher>
	</ns1:Book>

A) Synchronous Case

Provide the following values in the Synchronous Port Configuration panel:

  • InputPort: XMLSplitIN

  • OutputPorts: XMLSplitOUT

Figure 10: Synchronous Port Configuration-Synchronous case

If the input is sent to the XMLSplitIN port, the microservice waits till a response is received in the XMLSplitOUT port. This response is received as output. So, in this case, the first split XML message will be received in the output port.

Figure 11: Output-Synchronous case

B) Asynchronous Case

In the Synchronous Port Configuration panel, click the DeleteAll button to delete all entries. XMLSplitIN and XMLSplitOut will be considered Asynchronous Input and Output ports respectively. Now when the same input is sent, all the split JMS responses are asynchronously received by the consumer listening at XMLSplitOut.

Figure 12: Output-Asynchronous case

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.