/ / Jak powiedzieć JAXB, aby dodał atrybut noNameSpaceSchemaLocation - java, xml, jaxb, xsd

Jak powiedzieć JAXB, aby dodał atrybut noNameSpaceSchemaLocation - java, xml, jaxb, xsd

Mam pewną hierarchię klas, która jestprzekształcony do XML przy użyciu JAXB. Chcę, aby utworzony XML miał atrybuty xsi: noNamespaceSchemaLocation i xmls: xsi w elemencie head (xsi: noNamespaceSchemaLocation = "Something.xsd" xmls: xsi = "http://www.w3.org/2001/XMLSchema-instance „). nie chcę, aby JAXB używał schematu w jakikolwiek sposób - po prostu przechowuj te atrybuty i wartości.

czy jest na to specjalna adnotacja? Mógłbym stworzyć tylko stały XmlAttribute, ale wydaje się niewłaściwy ...

dzięki

Odpowiedzi:

2 dla odpowiedzi № 1

Możesz ustawić JAXB_NO_NAMESPACE_SCHEMA_LOCATION na Marshaller jak poniżej:

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