1

我想知道如何在 jabx 中只键入一次命名空间,因为在每个字段中我都需要放置命名空间。

下面的代码显示了它。

@XmlRootElement(name = "nfeProc", namespace = "http://www.portalfiscal.inf.br/nfe")
@XmlAccessorType(XmlAccessType.FIELD)
class NFeProc {

    @XmlElement(name = "NFe", namespace = "http://www.portalfiscal.inf.br/nfe")
    private NFe nfe;

    @XmlAttribute(name = "versao")
    private String versao;

    public NFe getNfe() {
        return nfe;
    }

    public void setNfe(NFe nfe) {
        this.nfe = nfe;
    }

    public String getVersao() {
        return versao;
    }

    public void setVersao(String versao) {
        this.versao = versao;
    }

}

我只想放一次。

谢谢

4

1 回答 1

1

@XmlSchema您可以使用注释在包级别设置它。通过将元素形式默认设置为合格,所有没有通过注释指定命名空间的元素都将属于给定的命名空间。

包信息.java

@XmlSchema(
    namespace = "http://www.portalfiscal.inf.br/nfe",
    elementFormDefault = XmlNsForm.QUALIFIED)
package example;

import javax.xml.bind.annotation.XmlNsForm;
import javax.xml.bind.annotation.XmlSchema;

了解更多信息

于 2013-09-03T18:09:52.037 回答