Вам необходимо установить для свойства / атрибута xmlType
значение XmlType.NONE
в конфигурации потока.
Ответ содержится в Приложение А. Ссылка на файл сопоставления XML документации.
xmlType - тип узла XML, сопоставленный с потоком.Если он не указан или не установлен в элемент, поток сопоставляется с корневым элементом документа XML, который маршалируется или демаршалируется.Если установлено значение none, входной поток XML будет полностью прочитан и сопоставлен с дочерней группой или записью.
Теперь уловка заключается в том, чтобы преобразовать эту часть информации в API StreamBuilder, а именно:
xmlType(XmlType.NONE)
Ваш пример становится следующим:
StreamBuilder builder = new StreamBuilder("builder_name")
.format("xml")
.xmlType(XmlType.NONE)
.parser(new XmlParserBuilder())
.addRecord(Test.class);
, который производит этот неотформатированный / незагруженный вывод:
<?xml version="1.0" encoding="utf-8"?><test><field1>ABC</field1></test>
Для форматирования XML (довольно печати) / с отступомиспользуйте:
StreamBuilder builder = new StreamBuilder("builder_name")
.format("xml")
.xmlType(XmlType.NONE)
.parser(new XmlParserBuilder()
.indent()
)
.addRecord(Test.class);
Обратите внимание на изменение XmlParserBuilder
, чтобы получить этот вывод:
<?xml version="1.0" encoding="utf-8"?>
<test>
<field1>ABC</field1>
</test>