第 2 章 开始使用 Karaf 上的事务(OSGi)
本节介绍使用事务访问 Artemis JMS 代理的 Camel 应用程序。该信息组织如下:
2.1. 先决条件
此 Camel 应用程序的实现需要满足以下先决条件:
外部 AMQ 7 JMS 消息代理必须正在运行。
以下示例代码运行
amq-broker-7.1.0-bin.zip
的独立(非 Docker)版本。执行创建并运行amq7
实例:$ pwd /data/servers/amq-broker-7.1.0 $ bin/artemis create --user admin --password admin --require-login amq7 Creating ActiveMQ Artemis instance at: /data/servers/amq-broker-7.1.0/amq7 Auto tuning journal ... done! Your system can make 27.78 writes per millisecond, your journal-buffer-timeout will be 36000 You can now start the broker by executing: "/data/servers/amq-broker-7.1.0/amq7/bin/artemis" run Or you can run the broker in the background using: "/data/servers/amq-broker-7.1.0/amq7/bin/artemis-service" start $ amq7/bin/artemis run __ __ ____ ____ _ /\ | \/ |/ __ \ | _ \ | | / \ | \ / | | | | | |_) |_ __ ___ | | _____ _ __ / /\ \ | |\/| | | | | | _ <| '__/ _ \| |/ / _ \ '__| / ____ \| | | | |__| | | |_) | | | (_) | < __/ | /_/ \_\_| |_|\___\_\ |____/|_| \___/|_|\_\___|_| Red Hat JBoss AMQ 7.1.0.GA 018-05-02 16:37:19,294 INFO [org.apache.activemq.artemis.integration.bootstrap] AMQ101000: Starting ActiveMQ Artemis Server ...
客户端库是必需的。Artemis 库在 Maven Central 或红帽存储库中提供。例如,您可以使用:
-
mvn:org.apache.activemq/artemis-core-client/2.4.0.amq-710008-redhat-1
-
mvn:org.apache.activemq/artemis-jms-client/2.4.0.amq-710008-redhat-1
或者,Artemis/AMQ 7 客户端库也可以作为 Karaf 功能安装,例如:
-
Karaf@root ()> 功能:install artemis-jms-client artemis-core-client
-
需要一些提供 Karaf shell 命令或专用 Artemis 支持的功能:
karaf@root()> feature:install jms pax-jms-artemis pax-jms-config
所需的 Camel 功能包括:
karaf@root()> feature:install camel-jms camel-blueprint