Important

You are viewing documentation for an older version of Confluent Platform. For the latest, click here.

JMS Configuration Options

The Confluent JMS Source Connector can be configured using a variety of configuration properties.

JMS Connection

java.naming.provider.url

The url to connect to.

  • Type: string
  • Importance: high
java.naming.factory.initial

The initial context for the JMS Provider See Context.INITIAL_CONTEXT_FACTORY for more details.

  • Type: string
  • Importance: high
connection.factory.name

The name that is passed to the Context.lookup of the InitialContext specified in java.naming.factory.initial. This should return the ConnectionFactory for the JMS provider.

  • Type: string
  • Default: ConnectionFactory
  • Importance: high
java.naming.security.principal

The security principal to connect with. This is typically a username. See Context.SECURITY_PRINCIPAL for more details. The documentation for your JMS provider will be helpful as well.

  • Type: string
  • Default: “”
  • Importance: high
java.naming.security.credentials

The security credentials to connect with. This is typically a password. See Context.SECURITY_CREDENTIALS for more details. The documentation for your JMS provider will be helpful as well.

  • Type: password
  • Default: [hidden]
  • Importance: high

JMS Session

jms.destination.name

The name of the JMS destination (queue or topic) to read from.

  • Type: string
  • Importance: high
jms.destination.type

The type of JMS destination, which is either queue or topic.

  • Type: string
  • Default: queue
  • Valid Values: [queue, topic]
  • Importance: high
jms.message.selector

The message selector that should be applied to messages in the destination.

  • Type: string
  • Default: “”
  • Importance: high
jms.session.acknowledge.mode

The acknowledgement mode for the JMS Session. See JMS documentation for auto, client, and dups_ok.

  • Type: string
  • Default: client
  • Valid Values: [client, auto, dups_ok]
  • Importance: medium
jms.session.transacted

Flag to determine if the session is transacted and the session completely controls. the message delivery by either committing or rolling back the session. See Connection.createSession(boolean, int) for more details.

  • Type: boolean
  • Default: true
  • Importance: low

Kafka

kafka.topic

The name of the Kafka topic where the connector writes all records that were read from the JMS broker.

  • Type: string
  • Importance: high

Confluent Platform

confluent.license

Confluent will issue a license key to each subscriber. The license key will be a short snippet of text that you can copy and paste. Without the license key, you can use the connector for a 30-day trial period. If you are a subscriber, please contact Confluent Support for more information.

  • Type: string
  • Default: “”
  • Valid Values: Confluent Platform license
  • Importance: high
confluent.topic.bootstrap.servers

A list of host/port pairs to use for establishing the initial connection to the Kafka cluster used for licensing. All servers in the cluster will be discovered from the initial connection. This list should be in the form <code>host1:port1,host2:port2,…</code>. Since these servers are just used for the initial connection to discover the full cluster membership (which may change dynamically), this list need not contain the full set of servers (you may want more than one, though, in case a server is down).

  • Type: list
  • Importance: high
confluent.topic

Name of the Kafka topic used for Confluent Platform configuration, including licensing information.

  • Type: string
  • Default: _confluent-command
  • Importance: low
confluent.topic.replication.factor

The replication factor for the Kafka topic used for Confluent Platform configuration, including licensing information. This is used only if the topic does not already exist, and the default of 3 is appropriate for production use. If you are using a development environment with less than 3 brokers, you must set this to the number of brokers (often 1).

  • Type: int
  • Default: 3
  • Importance: low

Confluent Licensing

The connector requires a Confluent Enterprise license, which is stored inside Kafka in a topic. The connector must be configured with Kafka client configuration properties so that it can connect to Kafka and validate the license. To configure the clients used for the license topic add the standard producer, consumer, and topic configuration properties to the connector properties, prefixed with confluent.topic.. Do not specify the serializers and deserializers. If specified here, they will be ignored.

If the connector does not exist, you might need to create the license topic. This allows you to override the replication factor and other topic configuration properties using the same confluent.topic. prefix. You cannot override the cleanup policy of a topic because the topic always has a single partition and is compacted.

For example, here’s an example of the licensing-related properties that should be included in the connector configuration:

confluent.license=
confluent.topic.bootstrap.servers=localhost:9092

Set the confluent.license property with the license you get from Confluent support, or leave it blank for a 30-day trial.

Note

When using a Kafka cluster as destination with fewer than three brokers (e.g., when testing locally) you should set the confluent.topic.replication.factor property to 1.

Other properties have defaults but can be specified as needed. For example, the confluent.topic.client.id property defaults to the name of the connector with -licensing suffix. Specify the configurations settings for brokers that require SSL or SASL for client connections here.

If necessary, you can override producer-specific properties by using the confluent.topic.producer. and you can override consumer-specific properties with the confluent.topic.consumer. prefix.