2014-10-01 3 views
1

Ниже стратегия исключения часть потокаВыбор исключения Стратегия не работает в Mule

<choice-exception-strategy doc:name="Choice Exception Strategy"> 
      <catch-exception-strategy when="exception.causedBy(java.sql.BatchUpdateException)" doc:name="SQL deadlock error"> 
       <logger message="SQL EXCEPTION - RETRYING BATCH PROCESS" 
        level="ERROR" doc:name="Payload Logger" category="asi_user"/> 
       <set-variable variableName="Exception" value="User" doc:name="Exception Type"/> 
       <flow-ref name="Reload_Batch" doc:name="Retry Batch Results"/> 
      </catch-exception-strategy> 
      <catch-exception-strategy when="exception.causedBy(com.microsoft.sqlserver.jdbc.SQLServerException)" doc:name="SQL error"> 
       <logger message="SQL EXCEPTION - RETRYING BATCH PROCESS" 
        level="ERROR" category="asi_user" doc:name="Payload Logger" /> 
       <set-variable variableName="Exception" value="User" doc:name="Exception Type"/> 
       <flow-ref name="Reload_Batch" doc:name="Retry Batch Results"/> 
      </catch-exception-strategy> 
      <catch-exception-strategy doc:name="Unexpected errors"> 
       <logger message="UNEXPECTED EXCEPTION - SEND EMAIL NOTIFICATION" 
        level="ERROR" category="asi_user" doc:name="Payload Logger" /> 
       <set-payload value="#[exception.cause.message]" doc:name="Set Payload"/> 
       <flow-ref name="Send_Error_Notification" doc:name="Send Email Notification"/> 
      </catch-exception-strategy> 
     </choice-exception-strategy> 

Даже когда java.sql.BatchUpdateException выброшен из потока, управление переходит к окончательной стратегии исключения «Неожиданные ошибки», он не переходит к ошибке SQL-тупика

Я пропустил что-нибудь, чтобы заставить его работать.

Может ли мне помочь с этим, чтобы сделать его work.I'm использует Mule сервер 3.4.0 EE

Спасибо заранее

+1

Попробуйте распечатать exception.getClass() в разделе «непредвиденная ошибка» и проверьте, является ли исключение «java.sql.BatchUpdateException». – user1760178

+0

Было ли решение работать на вас? – user1760178

ответ

0

Это проблема с выражением в когда это

Попробуйте следующее.

<catch-exception-strategy when="#[exception.causedBy(java.sql.BatchUpdateException)]" doc:name="SQL deadlock error"> 

Надеюсь, это поможет.

+0

Извините за поздний ответ, он сработал спасибо – madhu

+0

Пожалуйста, воздайте ответы. Это помогает улучшить результаты поиска, когда эта проблема снова выполняется. – user1760178