Да, мы использовали ActiveMQ, на самом деле у нас сейчас есть проект для использования данных через шлюз событий ColdFusion с использованием ActiveMQ.
Примечание. Мы работаем с ColdFusion 9.0.1 и принимаем только сообщения.
Первое место, с которого стоит начать поиск, - это ваша собственная установка ColdFusion, которая поставляется сПример ActiveMQ!Посмотри в {cf_root}\gateway\docs
.
Таким образом, чтобы получить настройки, вам необходимо:
Добавить файл jar ActiveMQ (activemq-all-5.5.0.jar
) (доступен здесь ) в каталог CF {cf_root}/lib
Переместите файл examples.jar
в {cf_root}\gateway\lib
в {cf_root}/lib
Проверьте {cf_install}/gateway/docs/ActiveMQ_DeveloperGuide.pdf
, который расскажет вам, как создать файл конфигурации.Это должно выглядеть примерно так: heartbeat.cfg
пример:
debug=yes
topic=yes
# the line below needs to be changed
providerURL=tcp://xxx.yyy.com:61616
initialContextFactory=org.apache.activemq.jndi.ActiveMQInitialContextFactory
connectionFactory=ConnectionFactory
# ActiveMQ requires fake JNDI entries to lookup topic names
contextProperties=topic.heartbeatTopic
topic.heartbeatTopic=com.xxx.yyy.public.heart_beat
destinationName=heartbeatTopic
Далее настройте шлюз событий:
- GatewayID: MyTestActiveMQGateway
- Тип шлюза: ActiveMQ(это опция для CF9)
- Путь CFC:
c:\foo\MyCFC.cfc
(это CFC, который будет обрабатывать входящие данные) - Файл конфигурации:
c:\foo\heartbeat.cfg
Ваш CFC должен выглядеть так:
<cfcomponent output="false">
<cffunction name="onIncomingMessage" access="public" output="true">
<cfargument name="data" type="struct" />
<cflog log="application" text="message arrived!" />
</cffunction>
</cfcomponent>
Запустите ваш шлюз событий, и вот, вы должны получать входящие сообщения или какую-то ошибку.
Надеюсь, это поможет!