Jboss ESB ловит исключения - PullRequest
1 голос
/ 19 июля 2011

У меня есть сообщение, созданное из почтового запроса через HTTP-шлюз.То, что я действительно хотел бы, - это способ для любого исключения быть пойманным из любого действия в ESB и иметь возможность записать его в базу данных.Я видел некоторую информацию о том, как установить ошибку в заголовке сообщения, но я не могу найти способ установить ее, когда сообщение приходит с шлюза http.Также я не уверен, что ошибка - лучший способ сделать это, поскольку некоторые действия создают другие сообщения, которые, в свою очередь, также должны иметь ошибку, чтобы установить их.

1 Ответ

3 голосов
/ 09 мая 2012

Одним из решений может быть использование глобальной функции перехватчика конвейера действий, доступной начиная с JBoss ESB 4.11, которая позволяет настраивать глобальный перехватчик для всех служб и перехватывать поток при создании экземпляра службы, запуске службы, завершении службы и сбое службы.

Это описано здесь: https://issues.jboss.org/browse/JBESB-3724

В основном вы реализуете интерфейс "org.jboss.soa.esb.listeners.message.PipelineInterceptor" и настраиваете точку перехвата в "jbossesb-properties.xml".

<properties name="interceptors">
   <property name="org.jboss.soa.esb.pipeline.failure.interceptors" 
      value="org.foo.DatabaseLoggingInterceptor"/>
</properties>

Вы можете настроить несколько различных перехватчиков, разделенных запятой.

...