Supported Environments for Solace Java RTO API
The Solace Java RTO API is compatible with many different operating systems and platforms, and requires any version of a Java Development Kit (JDK) that is in active support for the platform and operating system.
Operating Systems and Platforms
The following operating systems and platforms are supported:
- Windows (x86/x86_64)
- macOS
- x86_64
- ARM (M-Series) — version 10.6+
- Linux
- x86 — supported
- x86_64 — supported
- ARM — not supported
- Alpine Linux (x86_64) — not supported
TLS Support
Transport Layer Security (TLS) provides secure connections between Solace Java RTO API and event brokers. The following TLS versions are supported for establishing secure connections to an event broker. The recommended version to use is the most recent version of TLS.
- TLS 1.2 — supported
- TLS 1.3 — supported (requires event broker version 10.25+ and Solace Java RTO API version 10.9+)
Secure Socket Layer (SSL) protocol version support varies. We don't recommend that you use SSL unless it's required for backwards compatibility.
Debugging TLS 1.3 Connections
TLS 1.3 encrypts handshake messages, not just application data, and enforces perfect forward secrecy, which prevents decryption even with server private keys. These security enhancements make traditional packet capture analysis methods ineffective. To effectively debug TLS 1.3 traffic, you must log encryption keys to a file during runtime. These keys can then be used with tools like Wireshark to decrypt and inspect the encrypted communications.
For the Solace Java RTO API, you can set the SSLKEYLOGFILE environment variable before creating a session, which allows you to capture pre-master secrets. For more information, see Wireshark TLS Decryption Using Key Log File.
Java Development Kit (JDK) Requirements
The Solace Java RTO API is compatible and supported with any version of the Oracle JDK or OpenJDK that is in active support and also has security update support. For information about supported versions, see the Oracle Java SE Support Roadmap.
Your JVM and Java RTO architecture must both be 32-bit or both be 64-bit.
OpenSSL Compatibility
The Solace Java RTO API is compatible with OpenSSL 3.0 and OpenSSL 1.1. The API bundles OpenSSL libraries for developer convenience only; these libraries are unsuitable for production environments. OpenSSL binaries are bundled with the following:
- for macOS and Windows, all versions of the Solace Java RTO API
- for Linux, versions 10.7 and earlier of the Solace Java RTO API
Retrieving the API
The Solace Java RTO API can be retrieved using Maven (pom.xml) or Gradle (build.gradle).
For example, using Maven:
<dependencies>
<dependency>
<groupId>com.solacesystems</groupId>
<artifactId>solclientj</artifactId>
<version>10.15.0</version>
<type>pom</type>
</dependency>
</dependencies>
Or using Gradle:
...
...
dependencies {
//Messaging API Dependencies
implementation group: 'com.solacesystems', name: 'solclientj', version: '10.15.0'
...
}