【问题标题】:Canonicalization xml in java 1.8java 1.8中的规范化xml
【发布时间】:2017-02-03 13:43:33
【问题描述】:

我正在尝试对 xml 进行规范化部分。 但是,我不知道如何连接到 apache。我已经下载了包: http://www.apache.org/dyn/closer.lua/santuario/java-library/2_0_8/xmlsec-2.0.8-source-release.zip

但是将其添加到项目中不起作用。谁能给我解释一下怎么做?

这不起作用:

    public byte[] canonicalize(byte[] data) throws Exception {
    byte[] result = null;
    try {
        org.apache.xml.security.Init.init();
        Canonicalizer c14n = Canonicalizer.getInstance("http://www.w3.org/TR/2001/REC-xml-c14n-20010315");
        result = c14n.canonicalize(data);
    } catch (Exception e) {
        System.out.println("False");
    }
    return result;
}

my settings

【问题讨论】:

  • 您能解释一下“这不起作用”是什么意思吗?你得到一个编译错误?运行时异常?请发布您收到的任何消息/堆栈跟踪。
  • 只是 Eclipse 看不到“org.apache.xml.security.Init.init()”和“Canonicalizer”类。我不知道我必须在哪里添加包 apache。

标签: java xml apache canonicalization


【解决方案1】:

该库仅作为“源”版本提供,这意味着您必须自己构建它。

如果你检查它的内容,你会注意到一个pom.xml 文件,这意味着它的构建过程是由Maven 处理的。如果您还没有该工具,请安装该工具,并在库目录中使用命令 mvn install 构建项目。

完成此操作后,您将能够使用在此过程中生成的 .jar 文件,或者将库作为 maven 依赖项引用。

【讨论】:

  • 对不起,我写了一个错误的链接。我有 Java 库。
  • 我从来没有做过maven的项目。是否有可能以不同的方式进行规范化?
  • @Mafika 看起来您可以使用 XOM 代替 Apache Santuario。它确实有一个二进制版本。
  • @Mafika,我看到你正在使用 Eclipse。使用 eclipse-mvn 插件可以让 maven 构建的体验变得不那么痛苦(安装插件,左键单击源项目,maven->mvn install)
  • 是的,我使用的是 Eclipse,但现在我将使用 IntelliJ。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-03-24
  • 2016-02-27
  • 1970-01-01
  • 2013-09-03
  • 1970-01-01
  • 2011-02-28
  • 2014-05-10
相关资源
最近更新 更多