Читайте из Weblogic, пишите в ActiveMQ - PullRequest
1 голос
/ 13 сентября 2011

У меня есть следующий сценарий:

Чтение сообщения из очереди Weblogic, и мне нужно записать его в очередь ActiveMQ (для транзакций)

(я не могу использовать JMS Bridge, Foreign JNDI по разным причинам, которые не зависят от меня)

Есть ли способ сделать это? используя Spring? или JCA?

Спасибо

Ответы [ 2 ]

3 голосов
/ 14 января 2013

См. http://skaetech.webs.com/WeblogicToActiveMQ.pdf ИЛИ http://skaetech.webs.com/weblogic.htm Он содержит подробное описание того, как настроить Мост между Weblogic-ActiveMQ-Weblogic

1 голос
/ 15 сентября 2011

Apache Camel является хорошим вариантом здесь - он поставляется с ActiveMQ и может быть встроен непосредственно в конфигурацию вашего брокера (просто обычный Spring, в activemq.xml, который используется для запуска брокера); или вы можете использовать его независимо от брокера в автономном процессе.

Чтобы использовать его, вы должны настроить соединения для двух брокеров и получить маршрут от очереди в Weblogic до эквивалента ActiveMQ. Вот быстрая и грязная версия:

<bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent">
    <property name="connectionFactory">
        <bean class="org.apache.activemq.ActiveMQConnectionFactory">
            <property name="brokerURL" value="vm://localhost"/>
        </bean>
    </property>
</bean>

<bean id="weblogic" class="org.apache.camel.component.jms.JmsComponent">
    <!-- depends on a factory defined elsewhere -->
    <property name="connectionFactory" ref="myWeblogicConnectionFactory"/>
</bean>

<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
    <route>
        <from uri="weblogic:myInputQueue"/>
        <to uri="activemq:myOutputQueue"/>
    </route>
</camelContext>

Проверьте http://camel.apache.org/jms.html для более подробной информации. Надеюсь, это поможет.

...