Issue in connecting jms RMI client to ssl enabled hornetq jboss server instance
raghavev Oct 28, 2013 3:14 AMChanges done:
-------------------------
Modified hornetq-configuration.xml file with the below:
hornetq-configuration.xml:
------------------------------------------------
for all connectors and acceptors:added the below params:
------------------------------------------------------------------------------------------------------
<connectors>
<connector name="netty">
<factory-class>org.hornetq.core.remoting.impl.netty.NettyConnectorFactory</factory-class>
<param key="host" value="${hornetq_server_ip:135.xxx}"/>
<param key="port" value="${hornetq.remoting.netty.port:5445}"/>
<param key="ssl-enabled" value="true"/>
<param key="key-store-path" value="${jboss.server.home.dir}/conf/keystore"/>
<param key="key-store-password" value="changeit"/>
<param key="use-nio" value="true" />
</connector>
<connector name="netty-throughput">
<factory-class>org.hornetq.core.remoting.impl.netty.NettyConnectorFactory</factory-class>
<param key="host" value="${hornetq_server_ip:135.xx}"/>
<param key="port" value="${hornetq.remoting.netty.batch.port:5455}"/>
<param key="ssl-enabled" value="true"/>
<param key="key-store-path" value="${jboss.server.home.dir}/conf/keystore"/>
<param key="key-store-password" value="changeit"/>
<param key="batch-delay" value="50"/>
<param key="use-nio" value="true" />
</connector>
<connector name="in-vm">
<factory-class>org.hornetq.core.remoting.impl.invm.InVMConnectorFactory</factory-class>
<param key="server-id" value="${hornetq.server-id:0}"/>
</connector>
</connectors>
<acceptors>
<acceptor name="netty">
<factory-class>org.hornetq.core.remoting.impl.netty.NettyAcceptorFactory</factory-class>
<param key="host" value="${hornetq_server_ip:135.xx}"/>
<param key="port" value="${hornetq.remoting.netty.port:5445}"/>
<param key="ssl-enabled" value="true"/>
<param key="key-store-path" value="${jboss.server.home.dir}/conf/keystore"/>
<param key="key-store-password" value="changeit"/>
<param key="trust-store-path" value="${jboss.server.home.dir}/conf/keystore"/>
<param key="trust-store-password" value="changeit"/>
</acceptor>
<acceptor name="netty-throughput">
<factory-class>org.hornetq.core.remoting.impl.netty.NettyAcceptorFactory</factory-class>
<param key="host" value="${hornetq_server_ip:135.xx}"/>
<param key="port" value="${hornetq.remoting.netty.batch.port:5455}"/>
<param key="ssl-enabled" value="true"/>
<param key="key-store-path" value="${jboss.server.home.dir}/conf/keystore"/>
<param key="key-store-password" value="changeit"/>
<param key="trust-store-path" value="${jboss.server.home.dir}/conf/keystore"/>
<param key="trust-store-password" value="changeit"/>
<param key="batch-delay" value="50"/>
<param key="direct-deliver" value="false"/>
</acceptor>
<acceptor name="in-vm">
<factory-class>org.hornetq.core.remoting.impl.invm.InVMAcceptorFactory</factory-class>
<param key="server-id" value="0"/>
</acceptor>
---------------------------------------------------------------------------------------------------------------------------------------------------
Exception:when I try to connect a remote JMS RMI client to above ssl enabled hornetq service:
----------------------------------------------------------------------------------------------------------------------------------------------------
com.management.remote.RemoteJMXDispatcher logged : "could not register to event queue:
javax.jms.JMSException: Failed to create session factory
at org.hornetq.jms.client.HornetQConnectionFactory.createConnectionInternal(HornetQConnectionFactory.java:605)
at org.hornetq.jms.client.HornetQConnectionFactory.createConnection(HornetQConnectionFactory.java:119)
at org.hornetq.jms.client.HornetQConnectionFactory.createConnection(HornetQConnectionFactory.java:114)
....
....
....
Caused by: HornetQException[errorCode=2 message=Cannot connect to server(s). Tried with all available servers.]
at org.hornetq.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:784)
at org.hornetq.jms.client.HornetQConnectionFactory.createConnectionInternal(HornetQConnectionFactory.java:601)
... 11 more"
com.platform.model.connection.ServerLink logged : "could not connect:
java.lang.RuntimeException: javax.jms.JMSException: Failed to create session factory
...
...
...
Caused by: javax.jms.JMSException: Failed to create session factory
at org.hornetq.jms.client.HornetQConnectionFactory.createConnectionInternal(HornetQConnectionFactory.java:605)
at org.hornetq.jms.client.HornetQConnectionFactory.createConnection(HornetQConnectionFactory.java:119)
at org.hornetq.jms.client.HornetQConnectionFactory.createConnection(HornetQConnectionFactory.java:114)
...
...
... 7 more
Caused by: HornetQException[errorCode=2 message=Cannot connect to server(s). Tried with all available servers.]
at org.hornetq.core.client.impl.ServerLocatorImpl.createSessionFactory(ServerLocatorImpl.java:784)
at org.hornetq.jms.client.HornetQConnectionFactory.createConnectionInternal(HornetQConnectionFactory.java:601)
... 11 more"
----------------------------------------------------------------------------------------------------------------------------------------------------------
hornetq:versions:
<hornetq.version>2.2.20.EAP.GA</hornetq.version>
<netty.version>3.2.3.Final</netty.version>
<hornetq.integration.version>2.2.21.Final</hornetq.integration.version>
------------------------------------------------------------------------------------------------------------------------------------------------------
Can anyone let me know how shall I resolve this and connect my remote jms client to ssl enabled hornetq jboss server?
Is any version upgrade required to resolve the above?
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Thanks.