第 7 章 使用 JMS 连接工厂
本章论述了如何在 OSGi 中使用 JMS 连接工厂。根本性,您可以使用以下方法实现它:
注册此类服务的方法有两种:
-
使用
jms:createKaraf console 命令发布连接工厂。这是 配置方法。 -
使用 Blueprint、OSGi Declative Services(SCR)或只使用
BundleContext.registerService()API 调用来发布连接工厂。这个方法需要专用的 OSGi 捆绑包,其中包含代码和/或元数据。这是 部署方法。
详情在以下主题中:
7.1. 关于 OSGi JMS 服务 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
处理 JDBC 数据源的 OSGi 方法与两个接口相关:
-
standard
org.osgi.service.jdbc.DataSourceFactory -
proprietary
org.ops4j.pax.jdbc.pool.common.PooledDataSourceFactory
对于 JMS,请参考以下类似:
-
专有
org.ops4j.pax.jms.service.ConnectionFactoryonnectionFactoryy 与标准 OSGi JDBCorg.osgi.service.jdbc.DataSourceFactory相同 -
专有
org.ops4j.pax.jms.service.PooledConnectionFactoryonnectionFactoryy 与 proprietary pax-jdbcorg.ops4j.pax.jdbc.pool.common.PooledDataSourceonnectionFactoryy 相同
对于专用于代理的专用、特定于代理的、org.ops4j.pax.jms.service.ConnectionFactoryonnectionFactory y 实施,有如下捆绑包:
-
mvn:org.ops4j.pax.jms/pax-jms-artemis/1.0.0 -
mvn:org.ops4j.pax.jms/pax-jms-ibmmq/1.0.0 -
mvn:org.ops4j.pax.jms/pax-jms-activemq/1.0.0
这些捆绑包注册了特定于代理的 org.ops4j.pax.jms.service.ConnectionFactoryFactory 服务,这些服务可以返回 JMS 工厂,如 javax.jms.ConnectionFactory 和 javax.jms.XAConnectionFactory。例如: