Configuring the tsap-rfc-server.properties file
The configuration file tsap-rfc-server.properties for Talend SAP RFC Server is located under the $TSAPS_HOME/conf directory (where $TSAPS_HOME corresponds to the directory where the Talend SAP RFC Server has been installed). This file consists of five sections. Before starting Talend SAP RFC Server, you can configure the file to enable some additional features of the server according to your needs.
- Talend SAP RFC Server doesn't support the SAP cluster configuration.
- Any change of the configuration file requires a restart of the Talend SAP RFC Server.
Before the sections
- logging.config: Specifies the log configuration file, which sets the log levels (mandatory).
- loader.path: Specifies directories or archives to append to classpath for including sapjco3.jar. The directories or archives need to be separated with commas (mandatory).
- named.connections: Specifies the path to the directory that holds the SAP connection configuration files (mandatory).
Health section
This section controls the showing of health information.
- management.endpoint.health.show-details: Sets the level of showing health information, which is collected by summarizing all the HealthIndicator results (mandatory).
JMS broker section
The JMS Broker section sets up the interaction with the embedded or remote JMS broker.
To enable user authentication, you need to uncomment the following three parameters and set their values. If you don't enable user authentication, the tSAPIDocReceiver component or the tSAPDataSourceReceiver component can also connect to Talend SAP RFC Server without setting the value for their user and password fields.
- jms.login.config=conf/user-authentication/login.config: File system directory containing JAAS authentication configuration.
- jms.login.configDomain=tsaps-domain: Domain of JAAS authentication configuration to use.
- jms.login.username: JAAS username used to authenticate a publisher or sender.
- jms.login.password: JAAS password used to authenticate a publisher or sender.
To enable the SSL transport mechanism, copy the key store file for SSL to the $TSAPS_HOME/conf folder. Then uncomment the following two parameters (the path to the key store file and the password for the key store file) in the configuration file and set their values
- jms.ssl.keystore.path: The path to a key store for SSL.
- jms.ssl.keystore.password: A password for a key store for SSL.
- jms.durable.queue.replicate: Whether JMS messages should be replicated in durable queues. You must enable this property when using batch mode. You must also enable it if you want to retain messages in case the SAP RFC server fails.
- jms.durable.queue.retentionPeriod: Retention period for JMS messages in durable queues in milliseconds (by default: 7 days). You must enable this property when using batch mode. You must also enable it if you want to retain messages in case the SAP RFC server fails.
Embedded broker section
The Embedded Broker section details the connection information of the used embedded JMS broker. If you use an external JMS broker, these values are commented out. The following lists the settings:
- jms.bindAddress: The host address and port (ex: tcp://localhost:61616) for the JMS broker to listen for incoming connections (mandatory).
- jms.persistent: Whether JMS messages are persisted or not. This way, the Talend SAP RFC Server keeps a copy of all IDocs received in queues named after the IDoc. This is meant to serve the tSAPIDocReceiver component in batch mode. When the receiver runs, it collects all IDocs stored in the durable queues since the last time it ran. You must enable this property when using batch mode. You must also enable it if you want to retain messages in case the SAP RFC server fails.
By default, messages are kept in the queues for up to seven days. You can change the retention period by uncommenting this parameter in the configuration file and updating its value to meet your own requirement.
- jms.dataDirectory: File system location used by the JMS broker to persist data.
- jms.useJmx: Sets whether or not the Broker's services should be exposed into JMX or not.
Remote broker section
The Remote Broker section details the connection information to a remote or external broker. If you use an embedded broker, this section is commented out. The following lists the settings:
- jms.broker.url: When active, connects to a remote broker instead of an embedded one.
- jms.reconnect.interval: Interval between reconnection attempts.
- rfc.server.remote.broker.url: URLs of the brokers for failover. Broker URLs need to be provided in this form: rfc.server.remote.broker.url=failover:(tcp://ip_address1:port_number1,tcp://ip_address2:port_number2, ...).
Error Page's Content section
The Error Page's Content section specifies the way error messages are displayed. The values can be always, on-param, and never. The default is always.
- server.error.include-message=always
- server.error.include-binding-errors=always
Kafka section
The Kafka section details the Kafka connection information needed to use the streaming mode feature. It also contains settings for configuring an Azure event hub as a Kafka cluster.
- kafka.bootstrap.servers=<kafka_setting>: Kafka broker addresses (in the form of host:port number) separated by commas (mandatory).
- kafka.security.protocol=SASL_SSL
- kafka.sasl.mechanism=PLAIN
- kafka.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="{YOUR.EVENTHUBS.CONNECTION.STRING}";
- kafka.security.protocol=SASL_SSL, kafka.sasl.mechanism=PLAIN, and kafka.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="{YOUR.EVENTHUBS.CONNECTION.STRING}"; are required when feature.streaming.enabled is set to true in an SAP connection configuration file.
- For information about configuring an Azure eventhub as a Kafaka cluster, go to Quickstart: Data streaming with Event Hubs using the Kafka protocol.