/ / Como dizer ao JAXB para adicionar o atributo noNameSpaceSchemaLocation - java, xml, jaxb, xsd

Como dizer ao JAXB para adicionar o atributo noNameSpaceSchemaLocation - java, xml, jaxb, xsd

Eu tenho uma certa classe hierárquica que étransformado em XML usando JAXB. Eu quero que o XML criado tenha os atributos xsi: noNamespaceSchemaLocation e xmls: xsi no elemento head (xsi: noNamespaceSchemaLocation = "Something.xsd" xmls: xsi = "http://www.w3.org/2001/XMLSchema-instance "). Eu não quero que o JAXB use o esquema de forma alguma - apenas armazene esses atributos e os valores.

Existe uma anotação específica para isso? Eu poderia criar apenas um XmlAttribute constante, mas parece errado ...

obrigado

Respostas:

2 para resposta № 1

Você pode definir o JAXB_NO_NAMESPACE_SCHEMA_LOCATION no Marshaller como o seguinte:

marshaller.setProperty(Marshaller.JAXB_NO_NAMESPACE_SCHEMA_LOCATION, "address.xsd");