gpt4 book ai didi

java - JAXB Marshaller - 如何抑制 xmlns namespace 属性?

转载 作者:行者123 更新时间:2023-11-30 11:46:21 28 4
gpt4 key购买 nike

我使用 JAXB2 为使用 maven 3、jaxb2、FIXML 模式和 maven-jaxb2-plugin 的独立 java 应用程序生成 XML。当我编码 XML 时,输出根元素中有 xmlns 属性。我该如何删除它?

来自:

<root ... xmlns="http://www.fixprotocol.org/FIXML-4-4">...</root>

收件人:

<root ... >...</root>

编辑:

包信息.java

@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.fixprotocol.org/FIXML-4-4", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package com.package;

最佳答案

因此,如果您不想包含命名空间信息,您可以从 package-info.java 中删除 @XmlSchema 注释。

虽然正如您所说,这是从 maven 插件自动生成的,但这在某种程度上破坏了您的自动构建。

建议您查看插件选项,看看是否可以从输出中删除它,或者您必须使用一些额外的插件来删除这一行,或者只是将 package-info.java 一起删除。

问题 - 您是否要将此 XML 传递给需要包含命名空间信息的服务?我想我对您为什么要剥离 namespace 信息很感兴趣。

关于java - JAXB Marshaller - 如何抑制 xmlns namespace 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9829277/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com