1

我正在尝试从部署为 Apache Service Mix 上的 OSGI 包的骆驼路由连接到 websphere MQ 队列管理器。

我已经部署了 Websphere MQ 附带的 IBM OSGI 捆绑包,并按照以下方式配置了 Spring 配置:-

<route>
    ....
    <to uri="websphere-mq:queue:TOMTEST" />
</route>

<bean id="websphere-mq" class="org.apache.camel.component.jms.JmsComponent">
    <property name="connectionFactory">
        <bean class="com.ibm.mq.jms.MQQueueConnectionFactory">
            <property name="transportType">
                <util:constant static-field="com.ibm.mq.jms.JMSC.MQJMS_TP_CLIENT_MQ_TCPIP" />
            </property>
            <property name="hostName" value="...hostname..." />
            <property name="port" value="...port..." />
            <property name="queueManager" value="...qm..." />
            <property name="channel" value="...channel..." />
            <property name="useConnectionPooling" value="true" />
        </bean>
    </property>
</bean>

在运行时我收到此错误 => java.lang.ClassNotFoundException: javax.net.ssl.HandshakeCompletedListener not found by com.ibm.msg.client.osgi.wmq

IBM 捆绑包都没有导入 javax.net.ssl,我真的不能重新捆绑它们吗?

有没有人设法从 servicemix/fuse - 4 连接到 WMQ?

任何帮助深表感谢。

非常感谢,汤姆

4

1 回答 1

2

在这里得到了回答http://fusesource.com/forums/message.jspa?messageID=13274。粘贴在下面:

汤姆,

好的,可以尝试其他方法……有时在处理奇怪的类加载问题时,尝试另一个 OSGi 框架会有所帮助。Felix 和 Equinox 都实现了规范,但在底层处理方式不同。因此,要尝试使用 Equinox 而不是 Felix,请打开 etc/config.properties 并进行以下更改:

karaf.framework=春分

确保在再次启动 ESB 之前也删除“数据”目录。

于 2012-02-22T17:02:20.683 回答