是否可以通过 SLING 查询通过 GUID 访问整个节点?
我知道可以通过 GUID 进行搜索,但这意味着在进行搜索之后,我们必须执行其他查询才能获取节点。
我想获得一个只有一个查询的节点。
是否可以通过 SLING 查询通过 GUID 访问整个节点?
我知道可以通过 GUID 进行搜索,但这意味着在进行搜索之后,我们必须执行其他查询才能获取节点。
我想获得一个只有一个查询的节点。
您可以使用 java.jcr.Session.getNodeByIdentifier 以编程方式通过标识符访问节点
如果您希望能够通过 HTTP 请求访问它,请创建一个 servlet 来公开此功能。
您可以使用 XPATH 查询通过 UUID 获取节点,例如
/jcr:root//*[@jcr:uuid='b1e1d3c3-983c-33d6-811c-18d2a8824e03']
或者
node = Session.getNodeByIdentifier(String id);
这里有一个很好的代码示例: Jackrabbit Running Queries against UUID
你也可以试试
propertyIterator = node.getReferences();
这似乎依赖于 mix:referenceable,而您的节点可能并非如此。
Javadoc:http://www.day.com/maven/javax.jcr/javadocs/jcr-2.0/javax/jcr/Node.html#getReferences()
相关问题:Jackrabbit - node.getReferences() 不返回任何内容