当前,我们可以使用@Property(unbounded=PropertyUnbounded.ARRAY)
在OSGi Configuration中使用多值创建属性。
是否可以在OSGi Configuration中创建与AEM创作对话框的多字段功能相同的属性?单击添加按钮后,带有其所有子字段的属性字段将增加。这样我们就可以添加键/值对的多个条目。
[
{
"path":"/content/demo/page1",
"date":"20-12-2018",
"language":"english"
},
{
"path":"/content/demo/page2",
"date":"23-10-2019",
"language":"french"
}
]
要使用OSGi配置进行配置并根据需要提取的相同键/值对。
答案 0 :(得分:3)
felix控制台允许您添加多值属性。但是,它们通常是单个字段值。意思是,您不能在问题中创建复杂的数据结构。但是,我看到了允许您输入有序CSV的实现。例如,您可能有一个多值String OSGI属性,其中每个属性的格式为:
<path>,<date>,<language>
您的第一个条目将变为:
/content/demo/page1,20-12-2018,english
或者,您甚至可以将整个JSON作为字符串值输入,然后在需要时进行解析。但这很难迅速进入。
您可以将以上内容与任何可序列化的数据结构一起使用,但是它变得越复杂,就越难在单个输入字段中输入。
另一种选择是使用包含多字段的组件创建页面,然后将OSGI配置指向该页面/组件的路径,然后在OSGI服务中查找该路径并提取配置。