Kafka messages sometimes remain unprocessed by a JMS source for unexplained reasons. To ensure that all the Kafka messages are consumed and published successfully, Adeptia Connect integrates Apache Kafka using which the application components can create, send, receive, and read messages using reliable communication.
...
Click Configure > ACCOUNTS > Kafka.
- Click Create Kafka account.
- In Create Kafka Account window, do the following:
- In the Name and Description fields, enter the name and description respectively for the new Kafka account.
- In the Broker field, enter the URL of the Kafka brokers, foe example, host1:port1,host2:port2.
In the Security Protocol field, enter the protocol used to communicate with brokers.
Tip The supported protocols are PLAINTEXT and SSL.
In case you select SSL, you need to select a Keystore in the Select Keystore field.In the Addon Configuration window, enter the Add On Configurations to be used in back end for performing operation on Kafka server (e.g. param1=value,param2=value..).
Note Here you can use properties which are not listed on this Kafka account creation interface, for example, you may need to use a property called Serializer that converts the data to bytes. You can find the properties available at this location. - In the Select Project field, select the project.
- Click Save.
...
- Click Configure > EVENTS > Kafka Listener.
- Click Create Kafka Listener.
- In Create Kafka Listener window, do the following:
- In the Name and Description fields, enter the name and description respectively for the Kafka listener.
In the Kafka Account field, select the Kafka account. You can create a new Kafka account by clicking .
Note Click Test to check if you are able to connect with Kafka server using this Kafka account. In the Topic(s) field, select the topic to be used.
Tip You can select multiple topics. - In the Consumer Group field, enter the string that uniquely identifies the group of consumer processes to which this consumer belongs. By setting the same consumer group multiple processes indicate that they are all part of the same consumer group.
- In the Key(s) to Filter Messages field, enter the Name of the message key to process. You can use comma to provide multiple message keys.
- In the Consumer Count field, enter the number of consumers that connect to Kafka server.
- In the Process Flow Name field, select the process flow.
- In the Auto Offset Reset field, select the value to define the offset when there is no initial offset in ZooKeeper or if an offset is out of range:
- EARLIEST : Automatically reset the offset to the earliest offset
- LATEST : Automatically reset the offset to the latest offset fail: throw exception to the consumer.
- NONE
- Select the Enable Message Aggregator check box to define the message aggregator properties:
- In the Number of Messages for Aggregation field, enter the number of message should be aggregated.
- In the Aggregation Timespan field, enter the time in seconds, messages received within the provided timespan will be aggregated.
In the Message Type field, select the message format.
Tip The supported message formats are JSON, XML, and PLAINTEXT.
- In the Message Joiner field, enter the delimiter based on which the messages will be aggregated.
It depends on the Message Type.
- XML : It will be an XPath.
- PLAINTEXT : It will be a delimiter.
- JSON : It can be empty or an element name.
- In the Seek To field, select if the Kafka Consumer will read the message from beginning or end on startup.
- In the Heartbeat Interval field, enter the heartbeat interval.
The expected time between heartbeats to the consumer coordinator when using Kafka group management facilities. Heartbeats are used to ensure that the consumers session stays active and to facilitate rebalancing when new consumers join or leave the group. The value must be set lower than session timeout, but typically should be set no higher than 1/3 of that value. It can be adjusted even lower to control the expected time for normal rebalances. - In the Session Timeout field, enter the time interval for session timeout.
The timeout used to detect failures when using Kafka group management facilities. - In the Select Project field, select the project.
- Click Save.
Select the server type from the drop-down list of JMS Server Type.
To know more on the JMS Server types supported by Adeptia Connect and their corresponding JAR files, JNDI Factory and URLs, refer Table 4.Click Upload Jars button to upload the driver jar files for the JMS Server. The UploadJar Files screen is displayed.
JMS Jar files are drivers, which are used to connect JMS Servers. There are specific jar files for different JMS Servers. These jar files are not provided with the Adeptia Connect. Users should use the jar files that are available with the JMS Servers. - In the Name and Description fields, enter the name and description respectively for the Kafka listener.
- Click the Browse button and select the required jar files. The path of the selected jar file is displayed in the Browse File field.
- Click the Upload JAR button. The file name is displayed in under the heading File Names list.
- Repeat the steps to upload additional jar files. Click the Finish button to return to the Create JMS Provider screen. The uploaded jar file(s) is displayed in the textbox Provider Jar Files.
- Enter the JNDI Factory class name as specified by the JMS Provider in the textbox JNDI Factory. For Example, in case of Apache ActiveMQ, the value is org.apache.activemq.jndi.ActiveMQInitialContextFactory.
- Enter the URL of the JMS Server in the URL field. For example, for Apache ActiveMQrunning on the same server, use tcp://localhost:61616.
- Enter the username and password required to connect to JMS Server in the textboxes UserName and Password respectively.
- Re-enter the password in the textbox Confirm Password.
- Enter the JMS Provider Queue connection Factory in the Queue Connection Factory field. For example, in case of Apache ActiveMQ, Queue Connection Factory is QueueConnectionFactory.
Enter the JMS Provider Topic Connection Factory in the Topic Connection Factory field. For example, in case of OpenJMS, Topic Connection Factory is TopicConnectionFactory.
The above example is only applicable in case of Apache MQ. If we use the Apache Active MQ as JMS Server then we can define the Topic and Queue name (which will be used in the Source/Target/Event) in the Additional Connection parameter table.
In case the JMS Server, which you are trying to connect, requires additional connection parameters, the enter those connection parameters and their values in the Additional Connection Parameters table.- Click Save.
If required, you can also unload the JAR files. To unload jars files, click the Unload JAR button.
Expand Advanced Properties and select the project of the activity from the drop-down list of Project.
...
Server Type
...
JAR Files
...
JNDI Factory
...
URL
...
Apache Active MQ
...
activemq-all-5.7.0.jar
...
org.apache.activemq.jndi.ActiveMQInitialContextFactory
...
...
OpenJMS
...
openjms-0.7.7-beta-1.jar,
penjms-common-0.7.7-beta-1.jar,
openjms-net-0.7.7-beta-1.jar,
openjms-tools-0.7.7-beta-1.jar,
jndi-.2.1.jar,
concurrent-1.3.4.jar,
spice-jndikit-1.2.jar,
derby-10.1.1.0.jar
...
org.exolab.jms.jndi.InitialContextFactory
...
...
OracleAQ
...
aqapi.jar,ojdbc6.jar
...
oracle.jms.AQjmsInitialContextFactory
...
jdbc:oracle:thin:@{hostname}:{port}:{sid}
...
Oracle Weblogic
...
wlfullclient.jar
...
weblogic.jndi.WLInitialContextFactory
...
...
IBM WebSphere
...
com.ibm.mq.commonservices.jar,
com.ibm.mq.defaultconfig.jar, com.ibm.mq.headers.jar, com.ibm.mq.jar,
com.ibm.mq.jmqi.jar, com.ibm.mq.jms.Nojndi.jar, com.ibm.mqjms.jar,
connector.jar,
dhbcore.jar
...
com.ibm.mq.jms.Nojndi
...
Version of JAR files may vary depending on version of the JMS Servers you are using.
Creating Kafka Target
Services
Account
Listener
Activate/Deactivate Kafka Listener
...
Using Kafka in a Process Flow
QuickBooks is the #1 rated small business accounting software.
QuickBooks features several innovative functions such as remote access capabilities, remote payroll assistance and outsourcing, electronic payment functions, online banking and reconciliation, mapping features through integration with Google Maps, marketing options through Google, and improved e-mail functionality through Microsoft Outlook and Outlook Express. In addition, you can import data from Excel spreadsheets, use additional employee time to track, and make use of pre-authorization of electronic funds.
For more information, click here.
Field (Account) Information
While configuring the Source or Destination of a Template or Transaction, you need to create an account to configure your application with Adeptia Connect. While creating an account, you need to specify the location from where Adeptia Connect will access the data.
Click to add an account.