回答
假設你需要的節點是Page/jcr:content/yournode
:
的Page
對象有一個方法getContentResource()
它默認返回你的jcr:content
資源節點。您還可以使用page.getContentResource("yournode")
獲取低於jcr:content
的特定節點。
如果你的節點由於某種原因是兄弟jcr:content
(它不應該btw),你可以使用resource.listChildren()
來迭代資源的孩子。
請記住,這是所有Sling API,因此您正在管理資源,而不是節點。你可以使用一個資源從一個資源獲得一個JCR節點resource.adaptTo(Node.class)
我想補充說,這可以通過將請求委託給一個servlet來解決,只要解決的問題需要分離關注點 - 將視圖從控制器邏輯。 LINK EXPLAINING IN DETAIL HOW VALIDATION IS DONE USING SLING SERVLETS
添加驗證器使用以下邏輯調用託管吊索的servlet
var url = CQ.HTTP.addParameter(dialog.path + '.validator.json', 'value', value);
var result = CQ.HTTP.eval(url);
and in the servlet we access the node and its parents using below logic
final Node currentNode = request.getResource().adaptTo(Node.class);
try {
final Node par = currentNode.getParent();
final NodeIterator nodes = par.getNodes();
// get all form names for the current paragraph system
while (nodes.hasNext()) { //and the business logic
如果你找到這個幫助,請提高解決方案 – user2019339
一般每一頁類有用於檢索的節點的方法在jcr:content
這是一個小清潔:
Node node = CurrentPage.getContentResource("COMPONENTNAME").adaptTo(Node.class);
開發人員在將其調整到節點之前應檢查資源的存在。
既然我們有一個節點,我們可以從該節點提取屬性。
String title = node.getProperty("jcr:title").getString();
這樣您就可以獲取組件的任何屬性。
- 1. CQ5獲取父節點屬性
- 2. 在節點中獲取表單變量
- 3. PathNotFoundException {}訪問cq5中的節點時
- 4. 獲取節點列表中的邊緣
- 5. drupal獲取節點列表
- 6. 如何從節點列表中的節點獲取屬性?
- 7. AEM/CQ5:從sidekick菜單中隱藏節點
- 8. C++獲得單節點鏈表中匹配節點的前一個節點
- 9. 獲取CQ5表單文本組件的輸入值
- 10. 獲取節點
- 11. 獲取節點內的單個節點值PLSQL
- 12. 的XDocument - 獲取節點的值列表
- 13. Vis.js - 獲取節點的子節點
- 14. 獲取節點的JSON父節點
- 15. 獲取節點的子節點
- 16. 從Umbraco的子節點獲取所有根節點的列表
- 17. CQ5 CRX JCR - 節點迭代 - 如何重命名節點?
- 18. c#獲取TreeView父節點的列表
- 19. 獲取用戶的節點列表
- 20. 從xml中獲取節點
- 21. 在JTree中獲取節點
- 22. 從節點獲取id屬性的節點列表
- 23. 從xml文檔獲取單節點c#
- 24. 使用javascript獲取單個XML節點
- 25. 節點獲取JSON_PARSING_ERROR
- 26. 獲取父節點
- 27. 獲取XML節點
- 28. 獲取DOM節點
- 29. HIERARCHYID - 獲取節點
- 30. 獲取XML節點
謝謝......它的工作! –