JAMES-3502, move exception catching to top level, use key store password for key password as well
diff --git a/backends-common/rabbitmq/src/main/java/org/apache/james/backends/rabbitmq/RabbitMQConnectionFactory.java b/backends-common/rabbitmq/src/main/java/org/apache/james/backends/rabbitmq/RabbitMQConnectionFactory.java
index 83dee07..80528c2 100644
--- a/backends-common/rabbitmq/src/main/java/org/apache/james/backends/rabbitmq/RabbitMQConnectionFactory.java
+++ b/backends-common/rabbitmq/src/main/java/org/apache/james/backends/rabbitmq/RabbitMQConnectionFactory.java
@@ -77,13 +77,9 @@
         }
     }
 
-    private void setupSslConfiguration(ConnectionFactory connectionFactory) {
-        try {
+    private void setupSslConfiguration(ConnectionFactory connectionFactory) throws CertificateException, UnrecoverableKeyException, NoSuchAlgorithmException, KeyManagementException, KeyStoreException, IOException {
             connectionFactory.useSslProtocol(sslContext(configuration));
             setupHostNameVerification(connectionFactory);
-        } catch (KeyManagementException | NoSuchAlgorithmException | CertificateException | KeyStoreException | IOException | UnrecoverableKeyException e) {
-            throw new RuntimeException("Cannot set SSL options to the connection factory", e);
-        }
     }
 
     private SSLContext sslContext(RabbitMQConfiguration configuration) throws KeyManagementException, NoSuchAlgorithmException, CertificateException, KeyStoreException, IOException, UnrecoverableKeyException {
@@ -105,7 +101,7 @@
         if (keyStore.isPresent()) {
             SSLKeyStore sslKeyStore = keyStore.get();
 
-            sslContextBuilder.loadKeyMaterial(sslKeyStore.getFile(), sslKeyStore.getPassword(), null);
+            sslContextBuilder.loadKeyMaterial(sslKeyStore.getFile(), sslKeyStore.getPassword(), sslKeyStore.getPassword());
         }
     }