为什么JMS规范的设计方式使得当创建Sessions的Connection对象是线程安全的(由线程共享)时,并发线程不能使用Session对象?
现在我在 Java EE 7 应用程序上使用 JMS 2.0 和 Artemis 1.2.0,我想用 Camel 做一些集成任务。
现在检查camel-jms 文档,没有提到如何使用通用camel JMS 组件生成和使用任何JMS 2.0 兼容代理的消息。
组件文档中的唯一示例是使用 Spring DSL 为其专用 ActiveMQ 组件配置 ActiveMQ 连接工厂。如何为 Camel JMS 配置连接以连接到我的 Artemis 实例?
考虑到即使 Artemis 与 ActiveMQ 5.x 兼容,我将使用 Camel 路由来发布和订阅共享的持久主题,因此我需要能够配置一个 Artemis 连接并做一个发布者和一个与其共享持久订阅者(仅在 JMS 2.0 中支持,ActiveMQ 仅支持 JMS 1.1)。
谢谢!