2016-08-11 2 views
0

Я провожу много времени, чтобы понять, как преобразовать поток bufferInput или Dataweaveoutputhandler других типов данных, таких как строки или объекта или XMLкак запросить bufferInput поток в мул ESB

Я постоянно получать этот тип ошибок, если Я изменил выражение

Выполнение выражения "xpath3 ('/ *', полезная нагрузка, 'NODESET')" не удалось. (Org.mule.api.expression.ExpressionRuntimeException). Полезная нагрузка сообщения имеет тип: BufferInputStream (org.mule.api.transformer.TransformerMessagingException). Полезная нагрузка сообщения имеет тип: BufferInputStream Пожалуйста, помогите мне узнать, разрешил ли кто-либо этот вопрос.

ответ

1

Исключение выбрано неправильным выражением xpath3, а не неправильным типом полезной нагрузки. Вы используете xpath3 в сплиттере? Вставьте некоторый xml, ниже рабочий пример выражения xpath3.

<splitter expression="#[xpath3('//YOUR_NODENAME',payload, 'NODESET')]" doc:name="Splitter"/> 

Если вы хотите, чтобы войти полезную нагрузку просто попробовать:

<logger message="Response := #[message.payloadAs(java.lang.String)]" level="INFO" doc:name="Logger"/> 
+0

Что такое // YOUR_NODENAME здесь? мой вход BufferInputStream –

+0

Вы должны посмотреть здесь http://stackoverflow.com/questions/30544390/mule-esb-3-6-best-way-to-convert-bufferedinputstream-to-xml – KBaluc

0

Apache предоставить нам с большой библиотекой для преобразования между различными типами данных. http://axis.apache.org/axis2/java/core/apidocs/org/apache/axis2/databinding/utils/ConverterUtil.html#convertToDataHandler(java.lang.String)

любезно пойти с этим.

Спасибо!

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