Я новичок в Mule и испытываю трудности с использованием элементов элементов-перехватчиков.Проблемы с Mule ESB с пакетом-перехватчиком
Следующая кажется, что берется прямо из их документации здесь: http://www.mulesoft.org/documentation/display/33X/Using+Interceptors
<interceptor-stack name="default">
<logging-interceptor/>
<timer-interceptor/>
</interceptor-stack>
<flow name="MyFlowFlow1" doc:name="MyFlowFlow1">
<interceptor-stack ref="default"/> <!--this is line 15 -->
<logger level="INFO" message="Got here"/>
</flow>
, но я получаю исключение сказать, что это недопустимо.
Может ли кто-нибудь сказать мне, что я делаю неправильно?
org.xml.sax.SAXParseException; lineNumber: 15; columnNumber: 43; cvc-complex-type.2.4.a: Invalid content was found starting with element 'interceptor-stack'. One of '{"http://www.mulesoft.org/schema/mule/core":annotations, "http://www.mulesoft.org/schema/mule/core":description, "http://www.mulesoft.org/schema/mule/core":abstract-message-source, "http://www.mulesoft.org/schema/mule/core":abstract-inbound-endpoint, "http://www.mulesoft.org/schema/mule/core":abstract-message-processor, "http://www.mulesoft.org/schema/mule/core":abstract-outbound-endpoint, "http://www.mulesoft.org/schema/mule/core":abstract-mixed-content-message-processor, "http://www.mulesoft.org/schema/mule/core":response}' is expected.
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
...etc...
EDIT - Здесь приведены ответы на вопросы ниже.
Этот первый частный поток отлично работает при вызове из другого потока через поток-ref. Я вижу сообщение «получил здесь» и время.
<flow name="test2Flow1" doc:name="test2Flow1">
<timer-interceptor/>
<logger level="INFO" message="got here" doc:name="Logger"/>
</flow>
Однако этот второй частный поток не работает при вызове из другого потока ... на самом деле, это даже не разобрать. Единственное различие заключается в том, что явное использование таймера-перехватчика изменяется, чтобы быть ссылкой на стек перехватчика, содержащий таймер-перехватчик.
<interceptor-stack name="default">
<timer-interceptor/>
</interceptor-stack>
<flow name="test2Flow1" doc:name="test2Flow1">
<interceptor-stack ref="default"/>
<logger level="INFO" message="got here" doc:name="Logger"/>
</flow>
Там есть регистратор, который является процессор. Кроме того, это всего лишь сокращенная версия реальной вещи, которая выполняет довольно много работы. Если я поместил два перехватчика в поток напрямую, он отлично работает. Если я пытаюсь использовать стек перехватчика, он терпит неудачу с ошибкой синтаксического анализа SAX. – TomD
, в этом случае я могу только думать, что вы не можете использовать перехватчик-стек прямо в потоке, попробуйте приблизить Seba – jonfornari