Как получить код ошибки от SOAPClient: JBOSS ESB

Я использую org.jboss.soa.esb.actions.soap.SOAPClient в моем ESB. И я пытаюсь получить код состояния HTTP или любое исключение, если SOAPClient не удается отправить запрос. Здесь может быть множество причин для неудачной доставки, например: -404 500 и т. Д..... Мое требование - перехватить любую ошибку или исключение (может быть исключение мыльной ошибки) или код состояния http в ESB, чтобы я мог выполнить некоторую бизнес-логику на основе исключения. Я пытался использовать приведенный ниже код, но не смог получить никаких исключений.

<action  class="com.xxx.esb.yyy.A228ProducerInquiry.ProducerInquiryTransactionHandler" name="RequestMapper" process="mapRequestPath">
     <property name="OGNLPath" value="AgentValidation.strXMLIN"/>
    </action>

    <action class="org.jboss.soa.esb.actions.soap.SOAPClient" name="FasatPost">
     <property name="responseAsOgnlMap" value="true" />
     <property name="wsdl" value="http://example.org?wsdl"/>
     <property name="SOAPAction" value="mySoapAction"/>
      </action>

    <action name="response-mapper"  class="com.foresters.esb.acord.A228ProducerInquiry.MyResponseAction">
     </action>

Я вижу исключение в консоли и интерфейсе SOAP, но не могу получить в ESB

Спасибо, Мадху CM

1 ответ

Я не пробовал эту логику, но "Руководство программистов" упоминает что-то вроде этого:

  1. Если при обработке сообщения возникает ошибка, вы можете вызвать предопределенную службу или отправить сообщение в службу очереди недоставленных сообщений.
  2. Если ничего из вышеперечисленного не настроено, ошибка будет перенаправлена ​​на консоль, что вы и видите.

Вы можете попробовать установить в поле FaultTo для сообщения службу обработки исключений. В этой службе обработки исключений вы можете выполнить необходимые шаги по восстановлению.

Другие вопросы по тегам