[id='configure_alpn']
= Configuring Clients for ALPN
Configure clients to provide ALPN messages for protocol negotiation during TLS
handshakes with {brandname} servers.

.Prerequisites

* Enable {brandname} server endpoints with encryption.

.Procedure

. Provide your client application with the appropriate libraries to handle
ALPN/TLS exchanges with {brandname} servers.
+
[NOTE]
====
{brandname} uses Wildfly OpenSSL bindings for Java.
====
+
. Configure clients with trust stores as appropriate.

.Programmatically

[source,java]
----
include::code_examples/ConfigurationBuilderTrustStore.java[]
----

.Hot Rod client properties

[source,properties]
----
include::config_examples/hotrod-client-truststore.properties[]
----



.Reference

* link:#endpoint_connectors[{brandname} Endpoint Connectors]
* link:https://github.com/wildfly-security/wildfly-openssl[Wildfly OpenSSL]
* link:{javadocroot}/org/infinispan/client/hotrod/configuration/SslConfigurationBuilder.html[SslConfigurationBuilder]
* link:{javadocroot}/org/infinispan/client/hotrod/configuration/package-summary.html[Hot Rod client configuration properties]
