diff --git a/proton-j/src/test/java/org/apache/qpid/proton/systemtests/engine/SslTest.java b/proton-j/src/test/java/org/apache/qpid/proton/systemtests/engine/SslTest.java
index b8cb97f..32ab62d 100644
--- a/proton-j/src/test/java/org/apache/qpid/proton/systemtests/engine/SslTest.java
+++ b/proton-j/src/test/java/org/apache/qpid/proton/systemtests/engine/SslTest.java
@@ -52,6 +52,9 @@
     private static final String CLIENT_JKS_TRUSTSTORE = "src/test/resources/client-jks.truststore";
     private static final String PASSWORD = "password";
 
+    private static final String SERVER_2_JKS_KEYSTORE = "src/test/resources/server2-jks.keystore";
+    private static final String CA_CERTS = "src/test/resources/ca-certs.crt";
+
     private static final String SERVER_CONTAINER = "serverContainer";
     private static final String CLIENT_CONTAINER = "clientContainer";
 
@@ -64,7 +67,7 @@
     private final Connection _serverConnection = Proton.connection();
 
     @Test
-    public void testOpenConnectionOverSslTransports() throws Exception
+    public void testOpenConnectionsWithProvidedSslContext() throws Exception
     {
         SslDomain clientSslDomain = SslDomain.Factory.create();
         clientSslDomain.init(Mode.CLIENT);
@@ -169,4 +172,74 @@
         assertEquals("Unexpected local state", localState, endpoint.getLocalState());
         assertEquals("Unexpected remote state", remoteState, endpoint.getRemoteState());
     }
+
+    @Test
+    public void testMultiplePemTrustCertificates() throws Exception
+    {
+        doMultiplePemTrustCertificatesTestImpl(SERVER_JKS_KEYSTORE);
+        doMultiplePemTrustCertificatesTestImpl(SERVER_2_JKS_KEYSTORE);
+    }
+
+    private void doMultiplePemTrustCertificatesTestImpl(String serverKeystore) throws Exception {
+        Transport clientTransport = Proton.transport();
+        Transport serverTransport = Proton.transport();
+
+        TransportPumper pumper = new TransportPumper(clientTransport, serverTransport);
+
+        Connection clientConnection = Proton.connection();
+        Connection serverConnection = Proton.connection();
+
+        SslDomain clientSslDomain = SslDomain.Factory.create();
+        clientSslDomain.init(Mode.CLIENT);
+        clientSslDomain.setPeerAuthentication(VerifyMode.VERIFY_PEER);
+        clientSslDomain.setTrustedCaDb(CA_CERTS);
+        clientTransport.ssl(clientSslDomain);
+
+        SslDomain serverSslDomain = SslDomain.Factory.create();
+        serverSslDomain.init(Mode.SERVER);
+        SSLContext serverSslContext = createSslContext(serverKeystore, PASSWORD, SERVER_JKS_TRUSTSTORE, PASSWORD);
+        serverSslDomain.setSslContext(serverSslContext);
+        serverTransport.ssl(serverSslDomain);
+
+        clientConnection.setContainer(CLIENT_CONTAINER);
+        serverConnection.setContainer(SERVER_CONTAINER);
+
+        clientTransport.bind(clientConnection);
+        serverTransport.bind(serverConnection);
+
+        assertConditions(clientTransport);
+        assertConditions(serverTransport);
+
+        clientConnection.open();
+
+        assertEndpointState(clientConnection, ACTIVE, UNINITIALIZED);
+        assertEndpointState(serverConnection, UNINITIALIZED, UNINITIALIZED);
+
+        assertConditions(clientTransport);
+        assertConditions(serverTransport);
+
+        pumper.pumpAll();
+
+        assertEndpointState(clientConnection, ACTIVE, UNINITIALIZED);
+        assertEndpointState(serverConnection, UNINITIALIZED, ACTIVE);
+
+        assertConditions(clientTransport);
+        assertConditions(serverTransport);
+
+        serverConnection.open();
+
+        assertEndpointState(clientConnection, ACTIVE, UNINITIALIZED);
+        assertEndpointState(serverConnection, ACTIVE, ACTIVE);
+
+        assertConditions(clientTransport);
+        assertConditions(serverTransport);
+
+        pumper.pumpAll();
+
+        assertEndpointState(clientConnection, ACTIVE, ACTIVE);
+        assertEndpointState(serverConnection, ACTIVE, ACTIVE);
+
+        assertConditions(clientTransport);
+        assertConditions(serverTransport);
+    }
 }
diff --git a/proton-j/src/test/resources/README.txt b/proton-j/src/test/resources/README.txt
index 91d8cf3..2cf3d9a 100644
--- a/proton-j/src/test/resources/README.txt
+++ b/proton-j/src/test/resources/README.txt
@@ -57,3 +57,24 @@
 # -------------------------------------------------------
 keytool -storetype jks -keystore client-jks.truststore -storepass password -keypass password -importcert -alias ca -file ca.crt -noprompt
 
+
+# Create a key and self-signed certificate for a second CA, to sign certificate requests and use for trust:
+# ---------------------------------------------------------------------------------------------------------
+
+keytool -storetype jks -keystore ca2-jks.keystore -storepass password -keypass password -alias ca2 -genkey -dname "O=My Other Trusted Inc.,CN=my-ca2.org" -validity 9999 -ext bc:c=ca:true
+keytool -storetype jks -keystore ca2-jks.keystore -storepass password -alias ca2 -exportcert -rfc > ca2.crt
+
+# Create a key pair for a second server, and sign it with the second CA:
+# ----------------------------------------------------------------------
+keytool -storetype jks -keystore server2-jks.keystore -storepass password -keypass password -alias server2 -genkey -dname "O=Server2,CN=localhost" -validity 9999 -ext bc=ca:false -ext eku=sA
+
+keytool -storetype jks -keystore server2-jks.keystore -storepass password -alias server2 -certreq -file server2.csr
+keytool -storetype jks -keystore ca2-jks.keystore -storepass password -alias ca2 -gencert -rfc -infile server2.csr -outfile server2.crt -validity 9999 -ext bc=ca:false -ext eku=sA
+
+keytool -storetype jks -keystore server2-jks.keystore -storepass password -keypass password -importcert -alias ca2 -file ca2.crt -noprompt
+keytool -storetype jks -keystore server2-jks.keystore -storepass password -keypass password -importcert -alias server2 -file server2.crt
+
+# Create a file containing both CA certs to use for trusting both:
+# ----------------------------------------------------------------
+cat ca.crt > ca-certs.crt
+cat ca2.crt >> ca-certs.crt
diff --git a/proton-j/src/test/resources/ca-certs.crt b/proton-j/src/test/resources/ca-certs.crt
new file mode 100644
index 0000000..a421a8a
--- /dev/null
+++ b/proton-j/src/test/resources/ca-certs.crt
@@ -0,0 +1,30 @@
+-----BEGIN CERTIFICATE-----
+MIICyjCCAoigAwIBAgIEKyYwuDALBgcqhkjOOAQDBQAwLjESMBAGA1UEAxMJbXktY2Eub3JnMRgw
+FgYDVQQKEw9NeSBUcnVzdGVkIEluYy4wHhcNMTcwMzA2MTI1ODEwWhcNNDQwNzIxMTI1ODEwWjAu
+MRIwEAYDVQQDEwlteS1jYS5vcmcxGDAWBgNVBAoTD015IFRydXN0ZWQgSW5jLjCCAbgwggEsBgcq
+hkjOOAQBMIIBHwKBgQD9f1OBHXUSKVLfSpwu7OTn9hG3UjzvRADDHj+AtlEmaUVdQCJR+1k9jVj6
+v8X1ujD2y5tVbNeBO4AdNG/yZmC3a5lQpaSfn+gEexAiwk+7qdf+t8Yb+DtX58aophUPBPuD9tPF
+HsMCNVQTWhaRMvZ1864rYdcq7/IiAxmd0UgBxwIVAJdgUI8VIwvMspK5gqLrhAvwWBz1AoGBAPfh
+oIXWmz3ey7yrXDa4V7l5lK+7+jrqgvlXTAs9B4JnUVlXjrrUWU/mcQcQgYC0SRZxI+hMKBYTt88J
+MozIpuE8FnqLVHyNKOCjrh4rs6Z1kW6jfwv6ITVi8ftiegEkO8yk8b6oUZCJqIPf4VrlnwaSi2Ze
+gHtVJWQBTDv+z0kqA4GFAAKBgQCPSdkR8LppXQ3JvChf6mOcRB2MJcjqok78JW5OX9qDNS3UnB2P
++1xHX1eZ2LbVg9q5flGoPIHjqyS/523goObyHt6H1/VLzqF+4k7sWuyZUvhsgGbPrBVnbYYaMpw+
+Y4K8QXzTE2Jdwb0pkgXq8SEsokDBD2VlArklEhfp+LkXbaMyMDAwDwYDVR0TAQH/BAUwAwEB/zAd
+BgNVHQ4EFgQUlUQ80rbvt+awTI8tQclL1tjNxG8wCwYHKoZIzjgEAwUAAy8AMCwCFE0zhebu96ZY
+LRD6zSecbolRd4uUAhQhA2M1pVNYie25XDEthBdW99MlaA==
+-----END CERTIFICATE-----
+-----BEGIN CERTIFICATE-----
+MIIC1zCCApWgAwIBAgIEZ4oLWjALBgcqhkjOOAQDBQAwNTETMBEGA1UEAxMKbXktY2EyLm9yZzEe
+MBwGA1UEChMVTXkgT3RoZXIgVHJ1c3RlZCBJbmMuMB4XDTE3MDUwMjExMjg1N1oXDTQ0MDkxNjEx
+Mjg1N1owNTETMBEGA1UEAxMKbXktY2EyLm9yZzEeMBwGA1UEChMVTXkgT3RoZXIgVHJ1c3RlZCBJ
+bmMuMIIBtzCCASwGByqGSM44BAEwggEfAoGBAP1/U4EddRIpUt9KnC7s5Of2EbdSPO9EAMMeP4C2
+USZpRV1AIlH7WT2NWPq/xfW6MPbLm1Vs14E7gB00b/JmYLdrmVClpJ+f6AR7ECLCT7up1/63xhv4
+O1fnxqimFQ8E+4P208UewwI1VBNaFpEy9nXzrith1yrv8iIDGZ3RSAHHAhUAl2BQjxUjC8yykrmC
+ouuEC/BYHPUCgYEA9+GghdabPd7LvKtcNrhXuXmUr7v6OuqC+VdMCz0HgmdRWVeOutRZT+ZxBxCB
+gLRJFnEj6EwoFhO3zwkyjMim4TwWeotUfI0o4KOuHiuzpnWRbqN/C/ohNWLx+2J6ASQ7zKTxvqhR
+kImog9/hWuWfBpKLZl6Ae1UlZAFMO/7PSSoDgYQAAoGALZ8Zvw4G04ppM2AWYqWPmV7/qJy8UpCv
+v2iqWbbfVn5E0fjdv8FoLfpF44ef1b28MAifJu1paIOW1/SvpHFtWuYprEDjKJdc1XiWtAO5HDkJ
+dC6peIhdZPkUG2uUjyUSPHzuYfLz97p3Wmo52F8VDbbM6YzwMKIkmJBHpMchzGSjMjAwMA8GA1Ud
+EwEB/wQFMAMBAf8wHQYDVR0OBBYEFF31qGbKSag94nAG6J5rpsWbOTzxMAsGByqGSM44BAMFAAMv
+ADAsAhQM3QLWpy6ewndppyHioMXr6JrQ+QIUdRHfnJTNGccs+YGYnuVBkI8Ugf4=
+-----END CERTIFICATE-----
diff --git a/proton-j/src/test/resources/ca2-jks.keystore b/proton-j/src/test/resources/ca2-jks.keystore
new file mode 100644
index 0000000..4a508e4
--- /dev/null
+++ b/proton-j/src/test/resources/ca2-jks.keystore
Binary files differ
diff --git a/proton-j/src/test/resources/ca2.crt b/proton-j/src/test/resources/ca2.crt
new file mode 100644
index 0000000..ef95296
--- /dev/null
+++ b/proton-j/src/test/resources/ca2.crt
@@ -0,0 +1,15 @@
+-----BEGIN CERTIFICATE-----
+MIIC1zCCApWgAwIBAgIEZ4oLWjALBgcqhkjOOAQDBQAwNTETMBEGA1UEAxMKbXktY2EyLm9yZzEe
+MBwGA1UEChMVTXkgT3RoZXIgVHJ1c3RlZCBJbmMuMB4XDTE3MDUwMjExMjg1N1oXDTQ0MDkxNjEx
+Mjg1N1owNTETMBEGA1UEAxMKbXktY2EyLm9yZzEeMBwGA1UEChMVTXkgT3RoZXIgVHJ1c3RlZCBJ
+bmMuMIIBtzCCASwGByqGSM44BAEwggEfAoGBAP1/U4EddRIpUt9KnC7s5Of2EbdSPO9EAMMeP4C2
+USZpRV1AIlH7WT2NWPq/xfW6MPbLm1Vs14E7gB00b/JmYLdrmVClpJ+f6AR7ECLCT7up1/63xhv4
+O1fnxqimFQ8E+4P208UewwI1VBNaFpEy9nXzrith1yrv8iIDGZ3RSAHHAhUAl2BQjxUjC8yykrmC
+ouuEC/BYHPUCgYEA9+GghdabPd7LvKtcNrhXuXmUr7v6OuqC+VdMCz0HgmdRWVeOutRZT+ZxBxCB
+gLRJFnEj6EwoFhO3zwkyjMim4TwWeotUfI0o4KOuHiuzpnWRbqN/C/ohNWLx+2J6ASQ7zKTxvqhR
+kImog9/hWuWfBpKLZl6Ae1UlZAFMO/7PSSoDgYQAAoGALZ8Zvw4G04ppM2AWYqWPmV7/qJy8UpCv
+v2iqWbbfVn5E0fjdv8FoLfpF44ef1b28MAifJu1paIOW1/SvpHFtWuYprEDjKJdc1XiWtAO5HDkJ
+dC6peIhdZPkUG2uUjyUSPHzuYfLz97p3Wmo52F8VDbbM6YzwMKIkmJBHpMchzGSjMjAwMA8GA1Ud
+EwEB/wQFMAMBAf8wHQYDVR0OBBYEFF31qGbKSag94nAG6J5rpsWbOTzxMAsGByqGSM44BAMFAAMv
+ADAsAhQM3QLWpy6ewndppyHioMXr6JrQ+QIUdRHfnJTNGccs+YGYnuVBkI8Ugf4=
+-----END CERTIFICATE-----
diff --git a/proton-j/src/test/resources/server2-jks.keystore b/proton-j/src/test/resources/server2-jks.keystore
new file mode 100644
index 0000000..1b2b464
--- /dev/null
+++ b/proton-j/src/test/resources/server2-jks.keystore
Binary files differ
diff --git a/proton-j/src/test/resources/server2.crt b/proton-j/src/test/resources/server2.crt
new file mode 100644
index 0000000..f1e048a
--- /dev/null
+++ b/proton-j/src/test/resources/server2.crt
@@ -0,0 +1,16 @@
+-----BEGIN CERTIFICATE-----
+MIIC+TCCAregAwIBAgIENihwHDALBgcqhkjOOAQDBQAwNTETMBEGA1UEAxMKbXktY2EyLm9yZzEe
+MBwGA1UEChMVTXkgT3RoZXIgVHJ1c3RlZCBJbmMuMB4XDTE3MDUwMjExMjg1N1oXDTQ0MDkxNjEx
+Mjg1N1owJjESMBAGA1UEAxMJbG9jYWxob3N0MRAwDgYDVQQKEwdTZXJ2ZXIyMIIBuDCCASwGByqG
+SM44BAEwggEfAoGBAP1/U4EddRIpUt9KnC7s5Of2EbdSPO9EAMMeP4C2USZpRV1AIlH7WT2NWPq/
+xfW6MPbLm1Vs14E7gB00b/JmYLdrmVClpJ+f6AR7ECLCT7up1/63xhv4O1fnxqimFQ8E+4P208Ue
+wwI1VBNaFpEy9nXzrith1yrv8iIDGZ3RSAHHAhUAl2BQjxUjC8yykrmCouuEC/BYHPUCgYEA9+Gg
+hdabPd7LvKtcNrhXuXmUr7v6OuqC+VdMCz0HgmdRWVeOutRZT+ZxBxCBgLRJFnEj6EwoFhO3zwky
+jMim4TwWeotUfI0o4KOuHiuzpnWRbqN/C/ohNWLx+2J6ASQ7zKTxvqhRkImog9/hWuWfBpKLZl6A
+e1UlZAFMO/7PSSoDgYUAAoGBAL1XjANsZoKVbgOyThbm+ivQD5cO+MNgFy+p9R1g6nh801PZKhy9
+bTGdMVSjdkvLBEGQ/AvojP0XMtZ/Iip1kyMXLmcpIJy6fQqDN8ln9fM/3o7j03PasGL5vT2ZHHmr
+HHr/kCIzMsZtW9tlSC+bV0OieWAJTVOsatXsKOPQNOppo2IwYDAfBgNVHSMEGDAWgBRd9ahmykmo
+PeJwBuiea6bFmzk88TAJBgNVHRMEAjAAMBMGA1UdJQQMMAoGCCsGAQUFBwMBMB0GA1UdDgQWBBT5
+78CwItJ6T2MOMvCzLJyxs1OuPDALBgcqhkjOOAQDBQADLwAwLAIUBXUGqb6d+k+16JJ/8+Uc5Ywg
+RcQCFEK7yMXUh/1qPleBVPD8H7exPQEu
+-----END CERTIFICATE-----
diff --git a/proton-j/src/test/resources/server2.csr b/proton-j/src/test/resources/server2.csr
new file mode 100644
index 0000000..81b7c29
--- /dev/null
+++ b/proton-j/src/test/resources/server2.csr
@@ -0,0 +1,13 @@
+-----BEGIN NEW CERTIFICATE REQUEST-----
+MIICWzCCAhkCAQAwJjESMBAGA1UEAxMJbG9jYWxob3N0MRAwDgYDVQQKEwdTZXJ2ZXIyMIIBuDCC
+ASwGByqGSM44BAEwggEfAoGBAP1/U4EddRIpUt9KnC7s5Of2EbdSPO9EAMMeP4C2USZpRV1AIlH7
+WT2NWPq/xfW6MPbLm1Vs14E7gB00b/JmYLdrmVClpJ+f6AR7ECLCT7up1/63xhv4O1fnxqimFQ8E
++4P208UewwI1VBNaFpEy9nXzrith1yrv8iIDGZ3RSAHHAhUAl2BQjxUjC8yykrmCouuEC/BYHPUC
+gYEA9+GghdabPd7LvKtcNrhXuXmUr7v6OuqC+VdMCz0HgmdRWVeOutRZT+ZxBxCBgLRJFnEj6Ewo
+FhO3zwkyjMim4TwWeotUfI0o4KOuHiuzpnWRbqN/C/ohNWLx+2J6ASQ7zKTxvqhRkImog9/hWuWf
+BpKLZl6Ae1UlZAFMO/7PSSoDgYUAAoGBAL1XjANsZoKVbgOyThbm+ivQD5cO+MNgFy+p9R1g6nh8
+01PZKhy9bTGdMVSjdkvLBEGQ/AvojP0XMtZ/Iip1kyMXLmcpIJy6fQqDN8ln9fM/3o7j03PasGL5
+vT2ZHHmrHHr/kCIzMsZtW9tlSC+bV0OieWAJTVOsatXsKOPQNOppoDAwLgYJKoZIhvcNAQkOMSEw
+HzAdBgNVHQ4EFgQU+e/AsCLSek9jDjLwsyycsbNTrjwwCwYHKoZIzjgEAwUAAy8AMCwCFE/v8hqM
+qfBY4v/lSu7o2L+KQlR7AhQyx/fwp2yi4fCzGaJ7JLYQDgjCyQ==
+-----END NEW CERTIFICATE REQUEST-----
