在Karaf下使用Felix fileinstall键入的服务属性

时间:2012-07-13 19:27:05

标签: osgi apache-felix apache-karaf

在我的Karaf容器中,我通常使用etc / * .cfg文件来配置我的服务。但是,我继承了一个使用元类型的服务,并期望其中一个属性是Long而不是String(它在字符串上崩溃)。我应该采取什么技术来提供这些属性?

我发现了一个可能的解决方案,但我遇到了困难。 Felix有.config文件的替代语法,其语法如下:

key = type "value"

其中“type”是该类型的单字符代码(例如Long的“L”)。我将过滤器更改为:

felix.fileinstall.filter = .*\\.(cfg|config)

到目前为止一切顺利。通过调试器,我可以看到Felix正在读取文件,但结果字典返回空,没有错误。 (我无法轻松调试,因为org.apache.felix.fileinstall-3.2.2-sources.jar缺少ConfigurationHandler.java,它是从另一个jar中着色的...)

我是否走正确的道路,我应该尝试修复我的.config语法?或者这是我应该避免的遗留语法,而是使用其他技术?

更新:我通过修复.config文件中的语法错误(它比我预期的更挑剔)部分解决了我的“空字典”问题。我的另一个问题仍然存在:这是一个好方法,还是有更好的方法?

0 个答案:

没有答案