我正在尝试创建与activemq的SSL连接(使用Spring 3.1,ActiveMQ 5.5和Camel 10.0)。我遇到了可怕的SSL握手异常。我可以使用jks中的证书连接openssl s_client。因此,我试图弄清楚我的密钥库是否存在问题(这似乎在其他情况下有效 - 例如使用tomcat)或者我的XML配置存在问题。有没有人有一个很好的例子,关于其他测试方法的想法,或者看到我做错了什么?
请注意,我的配置通过验证(如果您看到拼写错误)。
由于 -J
<bean id="myJmsRedeliverPolicy" class="org.apache.activemq.RedeliverPolicy">
<property name="maximumRedeliveries" value="500"/>
</bean>
<bean id="jmsSecureConnectionFactory" class="org.apache.activemq.ActiveMQSslConnectionFactory">
<property name="brokerURL" value="ssl://test.com:8100"/>
<property name="redeliverPolicy" ref="myJmsRedeliverPolicy"/>
<property name="keyStore" value="/usr/lib/mykeystore.jks"/>
<property name="keyStorePassword" value="mypass"/>
<property name="trustStore" value="/usr/lib/mycacerts"/>
<property name="trustStorePassword" value="changeit"/>
</bean>
<bean id="pooledSecureConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory">
<property name="maxConnections" value="10"/>
<property name="connectionFactory" ref="jmsSecureConnectionFactory"/>
</bean>
<bean id="txSecureManager" class="org.springframework.jms.connection.JmsTransactionManager">
<property name="connectionFactory" ref="pooledSecureConnectionFactory" />
</bean>
<bean id="jmsSecureConfig" class="org.apache.camel.component.jms.JmsConfiguration">
<property name="connectionFactory" ref="pooledSecureConnectionFactory" />
<property name="testConnectionOnStartup" value="true"/>
<property name="transacted" value="true"/>
<property name="transactionManager" ref="txSecureManager"/>
</bean>
<bean id="activemqs" class="org.apache.activemq.camel.component.ActiveMQComponent">
<property name="configuration" ref="jmsSecureConfig" />
</bean>
答案 0 :(得分:1)
启动您的申请:
-Djavax.net.debug=ssl
进一步了解您的问题。通常,该命令提供的打印输出几乎完全是错误的。