问题标签 [dom4j]

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 回答
738 浏览

java - Dom4j:包装所有元素标签

基本上,我想使用//*xpath 来选择所有元素,并将<any>元素标签包装在每个元素周围。

0 投票
1 回答
740 浏览

java - 刷新 JtreeModel 不起作用,但 Jtree 会相应更新

我正在使用 org.dom4j.swing.DocumentTreeModel 从解析的 DOM 文档构造一个 Swing Jtree。当我编辑构建 treeModel 的文档时,我希望 Jtree 通过 treeModel.reload(); 立即反映这一点。

问题是,当 Jtree 先完全折叠然后通过单击树展开时,它会显示 3 个“测试”元素。但是,此时,当我添加更多的测试元素时,这种变化就不再体现了!为什么当 Jtree swing 处于折叠状态时,它能够反映通过向树添加额外的“测试”元素所做的更改,而不是在 Jtree swing 展开时。

我完全期望更多的“测试”元素被实时附加,无论摇摆 JTree 是否打开。

0 投票
3 回答
4903 浏览

java - 在 dom 树的第一个子节点之前添加一个新节点

这可能是最容易处理的事情之一,但由于某种原因对我不起作用。我正在尝试在 dom 树的根之后添加一个新节点。
这是原始字符串:

我正在尝试添加一个新节点,该节点以字符串的形式出现在 . 最终版本应如下所示:

如您所见,新的Test Val是在根 div 类之后立即添加的。我使用了几种方法将节点放置在正确的位置,但它在最后被附加。

这是我从之前的一篇文章中提到的示例:

这导致节点在最后被添加。我尝试使用 insertBefore(),但没有成功。

任何指针将不胜感激。

谢谢

0 投票
3 回答
15645 浏览

java - 如何将 dom4j 文档对象转换为字符串

只是想找到一种将 Dom4J 文档内容转换为字符串的方法。它有一个asXML() API,可以将内容转换为 XML。就我而言,我正在使用 Dom4J 编辑非 xml DOM 结构并尝试将内容转换为字符串。我知道在 w3c 文档的情况下它是可能的。

任何指针将不胜感激。

谢谢

0 投票
2 回答
385 浏览

java - 在最后修改区域扩展 Jtree?

我正在使用 dom4j 从 dom4j 文档创建 DocumentTreeModel。

我在里面显示这个 DocumentTreeModel JScrollPane

我有一个向 dom4j 文档添加新节点并重新创建 DocumentTreeModel 的按钮

我正在使用 getPathForRow 但这似乎非常有限。我需要能够处理多个树深度。基本上在寻找类似的东西tree.getPathOfLastModifiedChildrensParent()

基本上,我试图在Jtree每次编辑文档时重新绘制文档。

0 投票
3 回答
3269 浏览

java - 文档中的 dom4j XML 声明

我需要从 dom4j 文档类型中删除 XML 声明

我正在创建文档

由 DocumenHelper 解析为 Document doc 的字符串不包含 XML 声明(它来自 XML => XSL => XML 转换)我认为 DocumentHelper 正在向文档正文添加声明?

有没有办法从正文中删除 XML 声明

0 投票
1 回答
877 浏览

java - 在 JTree 上的单击节点上获取底层节点数据?

基本上我正在使用 dom4j 库将 DefaultTreeModel 渲染到 JTree 中。DefaultTreeModel 解析 XML 文档。每个 XML 节点都包含属性、名称、id 等信息。

基本上,我向这个 Jtree 添加了一个动作监听器。我想访问包含节点信息(如属性、名称等)的底层 DefaultTreeModel 节点。

0 投票
2 回答
1110 浏览

java - Java:当 Jtree 具有展开节点或折叠节点时,getRowForLocation() 返回不同的行 int

JTree jtree有一个鼠标监听器附加到它。当用户点击一个 Jtree 组件节点时,我通过它得到它的行整数

问题是当有展开的jtree节点和折叠的jtree节点时,返回的行整数是不同的。

我需要一种方法来以某种方式获取每个单击的 jtree 节点的唯一且绝对 ID,以免造成混淆。

有没有办法向 Jtree 组件添加数据?

否则,我需要一种方法来监听节点何时展开并重新计算从上述函数返回的行......

0 投票
1 回答
228 浏览

dom4j - DOM4J createQuery 不急于获取

我有一个包含 OneToMany 关系的实体,具有急切的获取,以及第二个实体。这第二个实体有两个 OneToOne 关系,也急切地获取到第三和第四类。OneToOne 关系是单向的。

我从 DOM4J 会话中调用 createQuery(),以“从实体”作为 HQL 发送。在返回中,我得到了第二个实体,但它只包含第三个和第四个实体的 ID,而不是完整的内容。在我看来,那些第三和第四实体似乎并没有被急切地获取。我无法准确重现代码,但这是最相关的部分。

最后,这是我用于查询的代码:

正如我所提到的,从这个查询中,我得到了 info 和 results 的值的整数,它是 info 和 results 表的键,而不是从 info 和 results 表中检索的实际数据。

相关信息:

  • 春天 2.5.4
  • 休眠 3.2.6
  • 休眠注释 3.3.1.GA
  • dom4JSessionFactory 的类型为 org.springframework.orm.hibernate3.LocalSessionFactoryBean
  • 实体“事件”实际上是类层次结构中的第 7 个类(不知道这是否重要)

我确实遗漏了很多信息,希望没有必要。如果还有其他事情您需要冒险猜测它为什么不起作用,请告诉我。

0 投票
1 回答
2024 浏览

soap - 如何在java中解析来自SOAP响应消息的数据

我正在使用 Dom4j 解析 SOAP 消息。我遇到了一个问题:
Node node = document.selectSingleNode( "/*/soapenv:Envelope/soapenv:Body/ns:addResponse" );
当我使用上面的 XPath 时,我得到了以下异常:
异常:XPath 表达式使用未绑定的命名空间前缀 ns1
我找到了执行此操作的方法:删除命名空间,这是不推荐的。
任何帮助将不胜感激。谢谢
顺便说一句,这项工作有更好的方法或工具包吗?