У меня есть стратегия выбора исключений, где у меня есть стратегия исключений с несколькими уловами, где я применяю условие, основанное на ошибке.
Ошибка 1:
org.mule.api.MessagingException: столбец подразделения_id не может быть пустым (java.sql.SQLIntegrityConstraintViolationException).
Ошибка 2:
org.mule.api.MessagingException: org.mule.module.db.internal.domain.connection.ConnectionCreationException: Невозможно получить соединение для URL. Jdbc: mysql: // localhost: 3306 / mulesoft: доступ запрещен для пользователя 'root1212 '@' localhost '(используя пароль: YES) (java.sql.SQLException) (org.mule.module.db.internal.processor.DbConnectionException).
Как можно различить обе ошибки, используя выражение в стратегии исключения исключений?
Первый улов - выполняется, когда:
[exception.causeMatches ("org.mule.api.MessagingException: столбец отдела_id 'не может быть пустым *")]
Второй улов - выполняется, когда:
[exception.causeMatches ("org.mule.api.MessagingException: org.mule.module.db.internal.domain.connection.ConnectionCreationException *")]
С помощью этой опции невозможно активировать стратегию исключения улова.
[exception.causeMatches ( "org.mule.api.MessagingException *")]
Это работает, но для обеих ошибок получается одна и та же начальная строка. Как я могу дифференцировать оба?