如何解决在OSGi的JAX-RS Whiteboard的参考实现中,如何调用createWhiteboard..?
Osgi的JAX-RS白板的参考实现称为Aries JAX-RS Whiteboard。
我的问题是,whiteboard.class
的工厂方法如何以及何时被调用?
public static whiteboard createwhiteboard(
Dictionary<String,?> configuration) {
return new whiteboard(configuration);
}
例如,如果我将罐子放到Apache Felix实例中?
我在整个项目中搜索了createwhiteboard
符号,但没有找到任何调用它的符号。我知道是Osgi运行时执行此操作,但是如何,在哪里?
解决方法
好,所以我回答了我自己的问题。
Whiteboard.class
由单独的“激活器”类调用,该类实现了标准化的OSGi回调接口BundleActivator
:CxfJaxrsBundleActivator
在line 76处。这类似于程序的entry point。然后,在line 105处,调用runWhiteboard
方法,该方法使用一种可能比在line 198开始的方法更为复杂的方法来抽象出对createWhiteboard
的调用
按自下而上的顺序在堆栈中的主要调用将是:
createWhiteboard(configuration)
runWhiteboard(bundleContext,configuration)
start(BundleContext bundleContext) throws Exception
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。