我正在使用Adobe CQ5。我制作了两个彼此独立的组件。然而,
我想使用另一组件中一个组件的数据。
我该如何实现?如何使两个组件相互交互?

提前致谢。

最佳答案

您可以使用javax.jcr.Nodejavax.jcr.Property界面获取另一个组件的属性。例如,您已将component1和component2添加到page1。在存储库中,您应具有类似于以下的结构:

/content
    /project
        /page1
            /jcr:content
                /parsys
                    /component1
                        /...some properties
                    /component2
                        /...some properties


如果要在component1中获取component2的属性,可以使用类似以下内容的方法:

Node parsys = currentNode.getParent();
if(parsys.hasNode("component2")) {
    Node component2 = parsys.getNode("component2");
    if(component2.hasProperty("someProperty"))
      Property someProperty = component2.getProperty("someProperty");
}

07-24 09:50