Apache Kafka Publisher
The adapter enables to publish messages in a specific Apache Kafka Topic.
Properties
Operation | Defines the operation executed by the adapter. Possible values:
|
Parameter
Adapter | Adapter main class (do not change!) Possible values: de.softproject.integration.adapter.apachekafka.ApacheKafkaPublisherAdapter: Hauptklasse (default) |
trustStorePath | Defines where the trust store to be used is located. |
trustStorePassword | Password for the trust store |
keyStorePath | Defines where the key store to be used is located. |
keystorePassword | Password for the key store |
privateKeyPassword | Password of the private key in the keystore file |
username | User name for SASL/PLAIN authentication at the Kafka server
If you use this parameter, the configuration properties
sasl.mechanism = PLAIN and security.protocol = SASL_SSL are set.
|
password | Password for SASL/PLAIN authentication at the Kafka server
If you use this parameter, the configuration properties
sasl.mechanism = PLAIN and security.protocol = SASL_SSL are set.
|
clusterId | ID of the cluster in which the message is published Possible values: Cluster ID The ID of the cluster can be found in the file |
ClientId | ID of the client with which the message is published Possible values: Client ID The ID of the cliente can be found in the file |
topic | Name of the topic in which the message is published Possible values: String consisting of alphanumeric ASCII characters, |
messageDataType | Data type of the message(s) to be published. Possible values:
Messages with different data types can be published in a topic. To read the messages with the Apache Kafka Subscriber Adapter, the data type must be known and set correctly. For example, a message of the data type |
keyDataType | Data type of the key Possible values:
Sample key definition
XML
The following four cases can be distinguished:
|
The values of the trustStorePath, trustStorePassword, keyStorePath, keyStorePassword and privateKeyPassword parameters can also be defined in the apachekafka-config.xml file (see Apache Kafka).
The information about the adapter configuration overwrites the information in the apachekafka-config.xml. However, all parameters must be set for this. If not all parameters are set via the adapter configuration, the files from the apachekafka-config.xml are used.
If adapter parameters are used to override the SSL configuration of a particular client, then these values are retained until they are overridden again or the server is restarted.
Status values
1 | The adapter operation was executed successfully. |
-1 | An error occurred during the execution of the adapter. |
Input
The adapter expects a predefined XML structure as input. The structure depends on the data type of the message.
Data type STRING:
<Messages>
<Message>
<!-- This is a message. -->
</Message>
<Message>
<!-- This is another message. -->
</Message>
</Messages>
Data type BYTES:
<Messages>
<Message>ZXN0byBlcyB1biBmaWNoZXJvIGRlIHRleHRv</Message>
</Messages>
Data type NUMERIC:
<Messages>
<Message>5428</Message>
</Messages>
Messages with and without headers can be mixed:
<?xml version="1.0" encoding="UTF-8"?>
<Messages>
<!-- Example 1: A message with many headers -->
<Message key="header-message">
<Headers>
<Header key="header1">value 1</Header>
<Header key="header2">value 2</Header>
<Header key="header3">value 3</Header>
</Headers>
<Body>Successfull message</Body>
</Message>
<!-- Example 2: A message without headers but with message key -->
<Message key="header-message">
<Body>Successfull message</Body>
</Message>
<!-- Example 3: A message without headers and message key -->
<Message>
<Body>Successfull message</Body>
</Message>
</Messages>
Output
If the execution is successful, the input is output.