我怎么能在Spring DM中获得BundleContext?

时间:2011-07-19 09:27:36

标签: spring osgi spring-dm

我是Spring DM的新成员,我想访问Bundlecontext。我的问题是我有一个与Activator捆绑,但它没有xml配置文件。我无法触摸此捆绑包,然后我需要访问BundleContext和serviceReference以获取我的捆绑包中的服务。我在捆绑中使用Spring DM。那么,我怎么能得到BundleContext?

谢谢!

问候!

2 个答案:

答案 0 :(得分:8)

如果您不想依赖DM及其机制,一种方法是实现BundleContextAware,另一种方法是:

BundleContext bundleContext = FrameworkUtil.getBundle(this.getClass()).getBundleContext();

答案 1 :(得分:0)

Spring DM documentation表示您应该实现BundleContextAware接口以获取捆绑上下文。但是,它也正确地解释了你几乎不应该使用它,如果你需要访问某些服务,最好还是使用Spring DMs注入机制。