我们已经使用Camel在不同目的地之间使用带有EMS消息的Spring进行路由:
托管在tcp / http协议上的EMS队列/ TOpics工作正常,whereease SSL导致以下异常:
Error: Error occured while reading identity data: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded: url that returned this exceptio= ssl://random.host.com:41943
对于普通的spring tibco EMS SSL连接,我们需要通过覆盖ListenerContainer来设置以下内容:
TibjmsSSL.setPassword(passwordCharArray);
我们如何处理驼峰配置:
<bean id="jmsConfig" class="org.apache.camel.component.jms.JmsConfiguration">
<property name="connectionFactory" ref="userCredentialsConnectionFactory" />
<property name="transacted" value="false" />
<property name="concurrentConsumers" value="1" />
</property>
</bean>
这是我的骆驼jms配置
我尝试通过设置下面的属性来覆盖我自己的自定义实现,它似乎没有覆盖所需的功能:
org.apache.camel.component.jms.JmsConfiguration.messageListenerContainerFactory
答案 0 :(得分:0)
[固定]
覆盖doCreateConnection(String,String)
导入方法org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter
并在TibjmsSSL.setPassword(passwordCharArray)