Я разрабатываю решение, архитектура которого:
PHP -> JMS -> Camel -> several web services and endpoints.
Согласно: http://activemq.apache.org/php.html
... Я должен использовать клиент PHP STOMP для использования JMS. Это прекрасно работает.
Я также использовал Java-клиент ActiveMQ STOMP для получения данных от JMS.
Но я хочу использовать Camel для маршрутизации сообщений JMS. Кажется, я не могу заставить Camel работать с JMS/Stomp.
Я просмотрел https://github.com/fusesource/stompjms.
... но я не уверен, как заставить это работать с Camel.
Я также попробовал Spring camel-context.xml с BrokerURL, указывающим STOMP:
<bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent">
<property name="connectionFactory">
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="stomp://localhost:61613" />
<property name="userName" value="admin" />
<property name="password" value="AmChamDev" />
</bean>
</property>
</bean>
... но это приводит к:
[ #0 - JmsConsumer[/queue/test]] ultJmsMessageListenerContainer WARN Could not
refresh JMS Connection for destination '/queue/test' - retrying in 5000 ms.
Cause: Could not create Transport.
Reason: java.io.IOException: Transport scheme NOT recognized: [stomp]
Есть идеи, как заставить Camel работать с JMS/Stomp?