2017-12-08 7 views
0

enter image description hereMagnolia JCR erhalten LinkedList Property Artikel

Ich versuche, den Knoten 0 Eigentum zurückzuholen - Variablenwerte, die eine LinkedList Objekteigenschaft ist, glaube ich. wie Sie sehen können, ist es [****, ****]

Ich wünsche den Objektwert und speichern in ein List<String> Objekt abzurufen So kann ich für späte Verwendung der einzelnen Werte raus, zB

String idA = "542f74fd-bfaf-4377-854a-8e62082edc6c"; 
string idB = "39aab11f-243f-464c-ae6d-c1f069f17d6c"; 

Mein attampt ist so etwas wie unten:

List<String> tagList = new ArrayList<String>(); 
tagList = componentNode.getProperties(node, "tags"); 

auch schon versucht, diese:

List<String> tagList = new ArrayList<String>(); 
tagList = PropertyUtil.getProperty(node, "tags"); 

aber keiner von ihnen funktioniert.

Bitte schlagen Sie mich mit Codebeispiel vor. Danke

Antwort

2

Ich glaube, sie sind Multi-Wert-Eigenschaften in JCR und wird über Arrays statt Listen unterstützt.

Ich habe den Code nicht selbst getestet, aber ich glaube, es wird funktionieren. Dies sollte den Trick:

Property property = node.getProperty("tags");  
    Value[] tags = property.getValues(); 

und dann können Sie konvertieren/wickeln Sie es zur Liste, wenn Sie wirklich wollen.

Hoffnung, dass

Cheers,

+0

ehrfürchtig, arbeiten gut hilft! – seph

+1

noch besser: 'Liste Tags = info.magnolia.jcr.util.PropertyUtil.getValuesStringList (node.getProperty (" Tags "). GetValues ​​());' – Jan

Verwandte Themen