我有一个OSGi Bundle和一个servlet。现在我想从servlet访问bundle。为此,我在servlet中使用以下内容:
@Resource
BundleContext context
...
ServiceReference ref = context.getServiceReference("package.MyOSGiServiceInterface");
MyOSGiServiceInterface service = context.getService(ref);
问题是我的servlet不知道MyOSGiServiceInterface'因为它是在OSGiBundle中定义的。在Eclipse中,我在Build Path中添加了对Project Project的引用。但在运行时它显然无法找到它。
要解决我用
玩的问题(in bundle manifest)
Export-Package: package-of-osgi-service-interface
(in servlet manifest)
Import-Package: package-of-osgi-service-Interface
Dependencies: ...,deployment.MyBundle
但我无法解决。
错过了什么?如何告诉JBoss将包含OSGiBundle中的MyOSGiServiceInterface的包添加到类路径中?
谢谢你的回答!
(JBoss AS 7.1.1)
答案 0 :(得分:0)
最终我解决了它。我必须将正确的设置组合放在一起才能实现我的目标: