Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从xml中提取ApacheJackrabbit中节点的属性?_Java_Jcr_Jackrabbit - Fatal编程技术网

Java 如何从xml中提取ApacheJackrabbit中节点的属性?

Java 如何从xml中提取ApacheJackrabbit中节点的属性?,java,jcr,jackrabbit,Java,Jcr,Jackrabbit,我一直在这里讨论第三个示例,但是对于我来说,如何访问节点的属性仍然不清楚 在第一个截图中 我使用了IDE中的调试器,并计算了这个表达式 session.getNode("/importxml/xhtml:html/xhtml:body/mathml:math/mathml:apply/mathml:apply[2]/mathml:apply[2]/mathml:cn").getProperty("jcr:xmltext/jcr:xmlcharacters").getString().trim(

我一直在这里讨论第三个示例,但是对于我来说,如何访问节点的属性仍然不清楚

在第一个截图中

我使用了IDE中的调试器,并计算了这个表达式

session.getNode("/importxml/xhtml:html/xhtml:body/mathml:math/mathml:apply/mathml:apply[2]/mathml:apply[2]/mathml:cn").getProperty("jcr:xmltext/jcr:xmlcharacters").getString().trim();
您可以看到我如何获得对“jcr:xmltest/jcr:xmlcharacters”的访问权,并因此获得2个字符。 但是,当我尝试获取此信息,从节点中获取此属性时,我无法执行此屏幕截图中的操作。

这是上面截图中的代码片段:

var node = session.getNode("/importxml/xhtml:html/xhtml:body/mathml:math/mathml:apply/mathml:apply[2]/mathml:apply[2]/mathml:cn");
var properties = node.getProperties();
List<string> result = new ArrayList<>();
while(properties.hasNext()) {
    Property property = properties.nextProperty();
    result.add(property.getString().trim());
}
return result;
var node=session.getNode(“/importxml/xhtml:html/xhtml:body/mathml:math/mathml:apply/mathml:apply[2]/mathml:apply[2]/mathml:cn”);
var properties=node.getProperties();
列表结果=新建ArrayList();
while(properties.hasNext()){
Property=properties.nextProperty();
add(property.getString().trim());
}
返回结果;
您可以看到我如何得到一个只包含“nt:unstructured”的值作为响应

不幸的是,我在Github等网站上找不到很多代码示例。很多代码都过时了,而且也没有像Scrapy或其他库/框架那样的书籍

先谢谢你

祝你今天愉快


Davide

在第一种情况下,您看到的是:

/importxml/xhtml:html/xhtml:body/mathml:math/mathml:apply/mathml:apply[2]/mathml:apply[2]/mathml:cn/jcr:xmltext
在第二种情况下:

/importxml/xhtml:html/xhtml:body/mathml:math/mathml:apply/mathml:apply[2]/mathml:apply[2]/mathml:cn

注意不同的路径。

如果你以不需要看截图的方式重新表述,我愿意提供帮助。我在帖子中添加了代码片段。