【发布时间】:2011-10-08 08:52:08
【问题描述】:
我刚开始使用 Spring DM,我想访问 Bundlecontext。我的问题是我有一个 Activator 捆绑包,但它没有 xml 配置文件。我无法触摸此捆绑包,然后我需要访问 BundleContext 和 serviceReference 以获取捆绑包中的服务。我在我的包中使用 Spring DM。那么,我怎样才能得到 BundleContext?
谢谢!
问候!
【问题讨论】:
我刚开始使用 Spring DM,我想访问 Bundlecontext。我的问题是我有一个 Activator 捆绑包,但它没有 xml 配置文件。我无法触摸此捆绑包,然后我需要访问 BundleContext 和 serviceReference 以获取捆绑包中的服务。我在我的包中使用 Spring DM。那么,我怎样才能得到 BundleContext?
谢谢!
问候!
【问题讨论】:
如果您不想依赖 DM 及其机制,一种方法是实现 BundleContextAware 和另一种:
BundleContext bundleContext = FrameworkUtil.getBundle(this.getClass()).getBundleContext();
【讨论】:
Spring DM documentation 说你应该实现BundleContextAware 接口来获取你的包上下文。但是,它也正确地解释了您几乎不应该使用它,如果您需要访问某些服务,最好使用 Spring DMs 注入机制。
【讨论】: