问题标签 [jdom-2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
471 浏览

java - org.jdom2.xpath 不返回来自 html 头元素的查询结果

org.jdom2.xpath用来评估对文档的XPath查询。html尝试从head元素中检索脚本文本,我尝试了以下查询:

此查询在XPath HelperChrome 控制台($x查询)中返回单个结果,但使用org.jdom2.xpath.

尝试更简单(但更重)的查询:

产生相同的结果。

代码示例:

事后思考:查看Document对象,我发现由于脚本文本很长,jdom2因此将其拆分为Texts 数组而不是一个 long Text。这可能是问题吗?

0 投票
2 回答
260 浏览

java - Jdom2 Sharepoint XML Fields

Having some trouble returning certain fields from a SharePoint List SOAP request.

Here is the XML:

I am able to use the following Jdom2 code to grab certain values like this:

However, I can't seem to figure out how to select the Field elements. For example: How would I select the "Title" Field?

UPDATE:

I also able to get the attribute "Name" from the "Field" element, but can only return or set the name of value of the attribute. I need to be able to access the test within the "Field" Element.

I can get the value of the attribute like this: System.out.println(field.getAttribute("Name").getValue()); // Prints Title

And I can get the name like this: System.out.println(field.getAttribute("Name").getName()); // Prints Name

But, I need to be able to return the text value of the element.

UPDATE 2: I didn't mention. The XML really looks like this:

I can submit this via SoapUI to SharePoint and it works. But if there are multiple "Field" elements, with different attributes, how can I select the correct one via Jdom2?

I can do this: String title = field.getText(); //returns New Item

But how would I be able to grab the text from other "Field" elements that use the "Name" attribute?

0 投票
1 回答
988 浏览

java - JDOM2 - 两个命名空间

我正在尝试构建以下 XML 结构:

我使用 JDOM2,但不知道如何添加 2 个命名空间!即使我只设置了一个命名空间,结果也与我希望的不一样。如果我设置命名空间root.setNamespace()并使用带有前缀 i 的第二个命名空间,它看起来像这样:

所以在 EDIOrderPackage 之前有一个 i。

如果我不使用前缀,则如下所示:

如果尝试将其添加为属性,则会引发错误消息,即我不能使用名称为“xmlns”的属性

那么如何使用 JDOM 构建一个类似于上面的 XML 呢?

0 投票
1 回答
30 浏览

java - 如何使用 JDom 检索带前缀的子元素

我有以下 xml 片段,我试图从中检索使用 JDOM 的第一个元素,但我得到空指针异常。如果有人知道,请帮助我。

这就是我正在做的,

print 语句显示为空。

0 投票
2 回答
3896 浏览

java - 防止 JDOM2 创建 xmlns=""

我尝试<class>使用 JDOM2 将新元素添加到 persistence.xml 文件中。

问题是 jdom2 总是添加xmlns=""<class>元素中。

我怎样才能防止这种情况?

removeAttribute("xmlns")不起作用,removeNameSpace(el.getNameSpace())也不起作用。

0 投票
2 回答
2263 浏览

java - 如何防止 JDOM2 中的 XMLOutputter 剪切属性名称(命名空间部分)?

我试图从 JDOM 1.0 更新到 JDOM2。在 JDOM 1.0 中,这段代码:

生成此 XML 文件:

当我使用 JDOM2 时,属性xsi:schemaLocation更改为schemaLocation(并且 XML 看起来像这样):

有没有办法将xsi:零件保留在 JDOM2 中?没有它,处理生成的 XML 的系统就无法读取它(不在我的控制之下)。不确定是否是同一个问题。

0 投票
2 回答
2661 浏览

java - 使用带有 JDOM/JAXEN/SAXON 的 XPath 搜索 XML

我确实有一个正在解析的 XML 文档JDOM-2.0.5。以下代码工作正常,bookNodes列表包含我的 XML 文件中的所有书籍节点:

这是我的 XML 数据的示例:

问题1:

我只想选择包含一些文本的书籍节点。因此,我使用了 XPath 的查询//book[contains(./title, 'The')]jaxen-1.1.6以下代码:

但是bookNodes列表是空的!

我的代码有什么问题?

问题2:

我将需要更高级的功能来搜索我的 xml 字段,例如使用:

然后我正在使用saxon9he它支持 XPath 2.0+,但我不知道如何使它与 JDOM2 和我上面的代码一起工作。

因此,如果您可以根据我的代码向我介绍如何执行此操作(我已经在 Google 上寻求帮助,但找不到任何帮助)

回答Q.1将帮助我了解我做错了什么。但回答Q.2将帮助我继续使用我的小型个人应用程序。

谢谢

0 投票
1 回答
212 浏览

java - 当有多个同名元素时如何删除确切的元素?

伙计们:

我在使用 JDOM 2.5 从 XML 文件中删除元素时遇到问题。问题是:在同一个父元素“ApproachDat”下,有多个与“Notes”同名的元素,我只想根据给定的条件删除其中的一些。我找到了要删除的合格元素,但我注意到 JDOM 2.5 仅提供 removeChild,它删除第一个找到的具有给定名称的子元素;或 removeChildren,它删除所有具有给定名称的子元素。无论如何要删除符合条件的确切子元素吗?

非常感谢!

山姆

0 投票
1 回答
503 浏览

java - 使用 JDOM 解析时处理特殊字符

我在下面有一个 xml,我正在用 JDOM 2.0.5 解析

现在,在尝试使用 node.getValue() 获取标签的值时,其中节点的类型为 Element,它给我的节点值为

知道如何解决这个问题吗?

0 投票
0 回答
221 浏览

xslt-2.0 - 如何使用 jdom2 和 xslt 2.0 样式表转换 xml

有谁知道TransformerFactory我应该使用 jdom2 和 XSLT 2.0 样式表来转换 xml 吗?