pax日志记录是否支持标准的osgi日志服务api

时间:2013-12-18 08:14:59

标签: logging osgi pax

我在我的osgi运行时配置了pax日志记录并测试了标准的osgi日志服务,但是没有记录日志记录。无论如何,所有其他日志API似乎都按预期工作[2]。我错过了什么吗?

LogService logService;

public void start(BundleContext bundleContext) throws Exception {

    ServiceReference ref = bundleContext.getServiceReference(LogService.class.getName());
    if (ref != null)
    {
        logService = (LogService) bundleContext.getService(ref);
        logService.log(LogService.LOG_INFO, " -----------  Testing OSGI logging on bundle start  -------------------- ");
}

[1] https://ops4j1.jira.com/wiki/display/paxlogging/Installation

[2] https://ops4j1.jira.com/wiki/display/paxlogging/Pax+Logging

由于

1 个答案:

答案 0 :(得分:1)

OSGi是一个经典错误:您希望LogService在启动时可用。如果延迟,您最终会得到null引用而不记录任何内容。

尝试使用标准的服务注入方法,例如Declarative Services component model

可以找到一个好的教程on the IBM Infocenter