Почему Sling Configuration имеет два разных формата

в Sling конфигурация может быть развернута либо через узел sling:osgiConfig, либо через узел nt:file со значениями конфигурации.
Когда я делаю некоторые изменения в Felix Консоль в некоторой конфигурации, развернутой через узел sling:osgiConfig, преобразуется в формат nt:file.

Почему в Sling существуют эти два разных формата конфигураций. есть ли существенная разница между ними?


person Shashi    schedule 03.02.2016    source источник


Ответы (2)


Я бы сказал, что это в основном по историческим причинам, в некоторых случаях удобнее предоставлять конфигурации в виде иерархических ресурсов (sling:OsgiConfig), и если конфигурация поступает, например, из файловой системы, файлы более удобны.

person Bertrand Delacretaz    schedule 09.02.2016

@Shashi sling: osgiConfig меняется на nt:file, когда вы вносите изменения в консоль felix, — это ожидаемое поведение. Это не вызовет никаких проблем, когда вы попытаетесь прочитать значение конфигурации из класса java. Вы просто не сможете редактировать конфигурацию режима запуска через crxde, когда она будет изменена на nt:file, поскольку она хранит данные в виде двоичного содержимого.

Однако есть способ отключить это поведение, вам нужно будет снять флажок «Включить обратную запись» в /system/console/configMgr/org.apache.sling.installer.provider.jcr.impl.JcrInstaller, как указано в этом тема.

Конфигурация OSGi рекомендации

person SubSul    schedule 05.02.2016
comment
Спасибо за информацию. Мне также интересно узнать, есть ли какая-либо конкретная причина (техническая или историческая), чтобы иметь два разных представления одних и тех же конфигураций в стропе. - person Shashi; 05.02.2016