0

I am using Groovy console and need to update title components on pages by values from page title

getNode('/content/').recurse { resourceNode ->
        if (resourceNode.hasProperty('sling:resourceType')) {
            final def resourceType = resourceNode.getProperty('sling:resourceType').string
            if (resourceType.equals('components/title')) {
                resourceNode.setProperty('jcr:title', resourceNode.parent().parent().getProperty('jcr:title')) <-problem with this line
                resourceNode.save();
            }
        }
    }

I need value from two nodes up

And i had an exception:

groovy.lang.MissingMethodException: No signature of method: org.apache.jackrabbit.oak.jcr.session.NodeImpl.parent() is applicable for argument types: () values: []

Appreciate for help

alex
  • 1
  • 2

1 Answers1

1

search for javadoc org.apache.jackrabbit.oak.jcr.session.NodeImpl

-> https://jackrabbit.apache.org/oak/docs/apidocs/org/apache/jackrabbit/oak/jcr/session/NodeImpl.html

there is no parent() method in NodeImpl class

however there is getParent() method

daggett
  • 26,404
  • 3
  • 40
  • 56