我想知道如何在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;
}
}
我只想放一次。
由于
答案 0 :(得分:1)
您可以使用@XmlSchema
注释在包级别设置它。通过将element form default设置为qualified,所有没有通过注释指定的命名空间的元素都将属于给定的命名空间。
<强> package-info.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;
了解更多信息