|
|
|
JMS обработка исключительных ситуации
|
|||
|---|---|---|---|
|
#18+
Обрабатываю сообщение с JMS broker. У меня сейчас два кейса: не смог обработать по внутренним причинам(например кончилось место на диске) то вызываю session.rollback(). Если всё хорошо то session.commit(). А что нужно вызывать чтобы сказать что мне пришло не верное сообщение? Ну то есть взяли что-то напортачили и мне пришло не то что я ожидаю как-то можно об этом сказать брокеру? Или я не правильно мыслю. Получаю сообщение в листенере, который реализует интерфейс SessionAwareMessageListener<BytesMessage>. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2015, 09:09 |
|
||
|
JMS обработка исключительных ситуации
|
|||
|---|---|---|---|
|
#18+
GregTk, Мы, как правило, в таких случаях заводим очередь ошибок и туда перекладываются такие сообщения (что бы не стопорить очередь). Заодно отправив, например email, с описанием ошибки и MessageId сообщения в очереди ошибок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2015, 10:54 |
|
||
|
JMS обработка исключительных ситуации
|
|||
|---|---|---|---|
|
#18+
GregTk, А брокеру эта информация зачем? Он же брокер. Ему сказали - он доставил. А валидное оно или нет, это не его дело. Как правильно советуют выше нужен новый канал информирования отправителя об ошибках в получателе. Это может быть как отдельная очередь, так и любой другой удобный способ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2015, 11:11 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38878712&tid=2125809]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
15ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 306ms |

| 0 / 0 |
