2013-05-30 3 views
3

Я использую модуль Mule XML jaxb-object-to-xml-transformer для преобразования моего объекта в XML. Затем этот XML встроен в другой XML с использованием шаблонов.Подавить пролог из XML во время сортировки

Но вопрос здесь объект трансформатор XML дает выход XML с прологом:

<?xml version="1.0" encoding="UTF-8"?> 

Мне нужна XML без этого. Чтобы он мог быть встроен в другой шаблон без проблем.

<flow name="main.flow"> 
    .... 
    .... 
    <mule-xml:jaxb-object-to-xml-transformer name="obj2xml" jaxbContext-ref="myJaxbContext" returnClass="java.lang.String" /> 
    <custom-transformer ..... > 
    .... 
    .... 
</flow> 

В простом JAXB есть способ сделать это. Но в модуле XML Mule я не смог найти какое-либо свойство для этого. Пожалуйста, сообщите, есть ли какое-либо свойство для достижения такого поведения.

ответ

2

Документация указывает, что вы можете перехватывать преобразования JAXB (см.: http://www.mulesoft.org/documentation/display/current/JAXB+Bindings). Следующий пример взят из этой документации.

@Transformer(sourceTypes = {String.class, InputStream.class}) 
public Person toPerson(Document doc, JAXBContext context) throws JAXBException 
{ 
    return (Person) context.createUnmarshaller().unmarshal(doc); 
} 

Предполагая, что есть соответствующая вещь, которую вы можете сделать для сортировочных вы могли бы установить необходимую JAXB недвижимость.

marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true); 
+1

Спасибо за ответ. Я видел, что это настраиваемый трансформатор. Я ищу какой-то вид или атрибут (свойство) в текущих трансформаторах мула, которые могут это сделать. – user1760178

Смежные вопросы