Expand my Community achievements bar.

SOLVED

setProperty("Name", String[])

Avatar

Level 3

Hi,

 

When I use the method setProperty("Name", String[]) only the Name and type are added to the JCR. The Value is empty. But if I use setProperty("Name", "Value") everything is fine. 

pageResource = page.adaptTo(Resource.class); Resource jcrContentResource = pageResource.getChild(JcrConstants.JCR_CONTENT); Node pageNode = jcrContentResource.adaptTo(Node.class); try { String[] tempIds = ids.toArray(new String[ids.size()]); pageNode.setProperty("cq:tags", tempIds); LOG.debug("Stuff of tags: "+tempIds[0]); LOG.debug("Tag size: "+tempIds.length); resourceResolver.commit(); } catch (Exception e) { LOG.error(e.getMessage(), e); }

Please see attached image.

What code be the problem?

 

Note: CQ version is 5.6.1

Thank you.

Cheers,

Viren.

1 Accepted Solution

Avatar

Correct answer by
Level 10

Hi Viren,

When you are setting the property cq:tags, the array should contain the existing tags otherwise they are ignored and can/will be removed.

 

You should usually not work with raw cq:tags properties, but use the tagging API [1]

[1] http://docs.adobe.com/docs/en/cq/current/developing/tagging.html

View solution in original post

2 Replies

Avatar

Level 5
Level 5

Hi,

Please refer this https://forums.adobe.com/thread/1105563?tstart=0 for adding a multi valued properties to the Node.

Avatar

Correct answer by
Level 10

Hi Viren,

When you are setting the property cq:tags, the array should contain the existing tags otherwise they are ignored and can/will be removed.

 

You should usually not work with raw cq:tags properties, but use the tagging API [1]

[1] http://docs.adobe.com/docs/en/cq/current/developing/tagging.html