Kai*_*oze 4 xml xpath dom maven-2 hibernate
我正在为我们的开发小组编写一个GWT-Hibernate内部Web应用程序。
以前,我已经编写了用于解析XML文件的工具,这些XML文件表示在现场收集的客户配置以进行分析。现在,我正在尝试为支持小组添加一个UI前端。在将UI合并并将代码解析到同一项目后,XML解析代码使用xpath和org.w3c.dom类消耗配置文件。我遇到了一个依赖问题。Hibernate 3.5.1依赖于使用旧版本xml-apis的dom4j。xml-apis jar具有org.w3c.dom类的旧版本,因此版本太旧以至于我在XML解析中使用的方法之一不可用。
org.w3c.dom.Node.getTextContext方法在旧的xml-apis类中不可用。
Node node = (Node)xpath.evaluate("//probe/configfile[@group=\"daemon.ini\"]/content", data, XPathConstants.NODE);
        if(node != null) {
            String content = node.getTextContent();
                // Do more work...
Maven依赖项:tree显示了问题,休眠,dom4j,xml-apis 1.0.b2。
[INFO] +-org.hibernate:hibernate-core:jar:3.5.1-Final:compile [INFO] | +-antlr:antlr:jar:2.7.6:compile [INFO] | +-dom4j:dom4j:jar:1.6.1:编译 [INFO] | | \-xml-apis:xml-apis:jar:1.0.b2:compile
有关解决此问题的最佳方法的建议?
提前致谢。
我不知道哪种版本适合您,但是可以通过在<dependencyManagement>元素中声明传递依赖项的版本来控制它们:
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>xml-apis</groupId>
        <artifactId>xml-apis</artifactId>
        <version>1.3.04</version>
      </dependency>
    </dependencies>
  </dependencyManagement>
这是您将得到的:
[INFO] +-org.hibernate:hibernate-entitymanager:jar:3.5.4-Final:compile [INFO] | +-org.hibernate:hibernate-core:jar:3.5.4-Final:compile [INFO] | | +-antlr:antlr:jar:2.7.6:compile [INFO] | | +-commons-collections:commons-collections:jar:3.2:compile [INFO] | | +-dom4j:dom4j:jar:1.6.1:编译 [INFO] | | | \-xml-apis:xml-apis:jar:1.3.04:compile(版本从1.0.b2开始管理)
但正如我所写,我不知道哪个版本适合您的需求以及它们是否向后兼容。
| 归档时间: | 
 | 
| 查看次数: | 2121 次 | 
| 最近记录: |