Допустимы ли типы узлов вложенных массивов в Jackrabbit JCR?

Я новичок в пространстве JCR и унаследовал проект, использующий Jackrabbit / Apache Oak в качестве реализации JCR.

У меня есть модель данных, которую я пытаюсь перевести в структуру узла JCR, как показано ниже:

{
    "someProperty": [
        [ "some-property-1", "some-property-2" ],
        [ "some-property-3", "some-property-4" ]
    ]
}

Это возможно?

Причина, по которой я спрашиваю, заключается в том, что кажется, что все методы добавления узлов типа javax.jcr.Node имеют имя.

Например:

addNode(String relPath)

Я предполагаю, что было бы лучше смоделировать подмассивы (например, [ "some-property-1", "some-property-2" ]) как их собственные узлы, но не уверен, возможно ли это с имеющимися средствами.

Извините, пожалуйста, за незнание JCR!

В идеальном мире я бы сделал что-то вроде:

parentNode.addNode("someProperty")
    .addNode().setProperty(["some-property-1", "some-property-2"])
    .addNode().setProperty(["some-property-3", "some-property-4"])

person carbon_ghost    schedule 14.08.2019    source источник


Ответы (1)


Нет, такого вложения в JCR нет.

Вы могли:

  • преобразовать их во вложенные узлы или
  • перегрузить имя свойства или
  • просто используйте строковые значения и проанализируйте / сериализуйте себя ...
person Julian Reschke    schedule 14.08.2019