Я генерирую файлы Java из XSD с использованием пространств имен. Когда соответствующие объекты Java упорядочиваются в XML-пространства имен префиксов ns1
, ns2
... Там, кажется, три способа to control the prefixes:Настройка префикса пространства имен в файле привязок JAXB
- При использовании Oracle, Java можно добавить implementation of the internal class
com.sun.xml.internal.bind.marshaller.NamespacePrefixMapper
к ИАС. - Если файл
package-info.java
находится на вашем подставке, вы можете добавить the annotationjavax.xml.bind.annotation.XmlNs
. Это не работает, когда файлы Java генерируются из XSD. - Вы можете добавить third party tool и настроить аннотацию
javax.xml.bind.annotation.XmlNs
в файле привязки JAXB.
3-й вариант является нестандартным, а его последняя версия - с 2012 года. Существует ли эквивалентная стандартная опция, доступная в то же время, например. элемент или атрибут в стандартных пространствах имен http://java.sun.com/xml/ns/jaxb
или http://java.sun.com/xml/ns/jaxb/xjc
?
Благодарим за информацию. Этот вариант по-прежнему зависит от Maven. Тем не менее, я ищу элемент или атрибут в стандартных пространствах имен http: // java.sun.com/xml/ns/jaxb' или 'http://java.sun.com/xml/ns/jaxb/ xjc'. Кроме того, плагин Maven по-прежнему зависит от расширения 'org.jvnet.jaxb2_commons.jaxb2-namespace-prefix', который с 2012 года. – Claude
https://dzone.com/articles/applying-namespace-during-jaxb может помочь –
сериализованный xml уже имеет пространства имен. Это префикс ** пространства имен **, который я хочу настроить. – Claude