Details
-
Task
-
Status: Open
-
Normal
-
Resolution: Unresolved
-
12.6.9
-
None
-
None
Description
By accident, I defined a property on a node /a/b/c/d by specifying in YAML:
definition: config: /hippo:configuration/hippo:modules: /autoexport/hippo:moduleconfig: autoexport:modules: operation: add type: string value: [bla]
Specifying multiple path segments at an indented level (like /autoexport/hippo:moduleconfig in above example) is invalid. This produced the hard-to-relate message
WARN localhost-startStop-1 [ConfigurationTreeBuilder.addValues:687] Property '/hippo:configuration/hippo:modules/autoexport/hippo:moduleconfig/autoexport:modules' defined in 'hippo-cms-test/hap/hap-shared-addon-channel-manager [config: main.yaml]' claims to ADD values, but property doesn't exist yet. Applying default behaviour.
followed by
ERROR localhost-startStop-1 [RepositoryServlet.init:233] Error while setting up JCR repository:
[INFO] [talledLocalContainer] javax.jcr.RepositoryException: unchecked exception: java.lang.IllegalStateException: Node '/hippo:configuration/hippo:modules/autoexport/hippo:moduleconfig' defined at 'hippo-cms-test/hap/hap-shared-addon-channel-manager [config: main.yaml]' is missing the required jcr:primaryType property.
It took me quite some time to discover the problem. We should be able to produce a more helpful message, based on detecting the '/' infix in "node name" /autoexport/hippo:moduleconfig.