powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Как на сервере получать сообщения от БД?
14 сообщений из 39, страница 2 из 2
Как на сервере получать сообщения от БД?
    #39182214
RuslanGab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Usman понял спасибо!

Petro123:
1. отсылку сообщений можно убрать это не проблема. Я правда не понимаю чем это вредит, ведь на сервер они не приходят. По моему разумению это просто на тот случай если кто-то вручную поработать с БД захочет - с целью дать понять в чем дело.
2. "если вся бл триггерах и бд" - нет в БД только триггеры для проверки целостности данных. Основная логика уже на клиенах. Тут в примере просто сам сервер получает сообщение - отправить его клиенту (вместо null) это уже не проблема. Мне просто как раз и не нравится именно то место где я "докапываюсь" до сообщения от триггера...
3. Спасибо что тратите на меня столько времени:)
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39182353
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RuslanGab,
1. Может ты не понял, я как раз говорил зачем эти строки (из за которых сыр бор)
Код: java
1.
2.
            String triggerException = e.getCause().getCause().getLocalizedMessage();    
            System.out.println("GOT TRIGGER EXCEPTION: " + triggerException);


если логи, то они не нужны. Если ошибка пользователю, то надо\ можно по другому
2.
RuslanGabтриггеры для проверки целостности данных. Основная логика уже на клиенах.
тогда выше вам говорили, а вы соменвались: "Ошибка из триггера будет очень редко" - БЛ их не допустит.
RuslanGabТут в примере просто сам сервер получает сообщение - отправить его клиенту (вместо null) это уже не проблема. Мне просто как раз и не нравится именно то место где я "докапываюсь" до сообщения от триггера...
говорите яснее "сам сервер" - это и аппСервер и БД)))
...
С учётом выше сказанного нам непонятно, что вы хотите).
У программиста логика должна быть на 5 (с)
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39182414
RuslanGab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123
1. Это конечно не "рабочее" решение. То что тут кидается на вывод в консоль - чисто для меня увидеть что да мол вот я это получил. Клиенту будет отправляться вместо null например JSON объект, в котором будет лежать сообщение (или его код), но там уже разные варианты как передать и тут как раз вопросов пока вроде нет.
2. Cервер - GlassFish. Я на нем хочу получить сообщение от триггера БД (что и делаю своим корявым способом), чтобы далее донести клиенту почему то что он хочет сохранить мы сохранять нифига не будем - ради этого весь сырбор. Касательно "Ошибка из триггера будет очень редко" я не согласен - будет столько сколько попыток будет сохранить неверные данные. Да хоть бы и редко - я хочу чтобы это работало! :) Как раз интересно иметь триггер который будет делать работу и на клиенте раз оно уже делается триггером не думать снова о проверках при сохранении. Я хочу просто получать ошибки уже из базы для конкретно этих случаев (проверяемых триггерами). Вот и пытаюсь найти универсальное и правильное что-то.
возвращаясь к моему вопросу
авторто что проверять можно на клиенте перед сохранением понятно. Как раз и хотелось бы "из спортивного интереса" попробовать получить универсальное решение со стороны самой базы чтобы потом уже с увеличением количества триггеров (а оно в небольшой степени будет в любом случае) не думать ни о чем.
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39182468
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RuslanGabКасательно "Ошибка из триггера будет очень редко" я не согласен - будет столько сколько попыток будет сохранить неверные данные.
- зависит от БЛ. Приведи БЛ, и мы сможем сказать как ошибку исключить малой кровью. Это закон веба - минимальные пересечения рессурсов.
RuslanGabДа хоть бы и редко - я хочу чтобы это работало! :)
оно работает - наверх идёт райзо до перехвата вами try
RuslanGabКак раз интересно иметь триггер который будет делать работу и на клиенте раз оно уже делается триггером не думать снова о проверках при сохранении.
валидация данных разная бывает. Опять пример нужен.
RuslanGabЯ хочу просто получать ошибки уже из базы для конкретно этих случаев (проверяемых триггерами). Вот и пытаюсь найти универсальное и правильное что-то.
возвращаясь к моему вопросу
Ещё раз!
- триггер выдал ошибку (хотите номер, хотите строку)
- вы её перехватили?
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39182472
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RuslanGabКак раз интересно иметь триггер который будет делать работу и на клиенте раз оно уже делается триггером не думать снова о проверках при сохранении.
у меня проект одни Oracl + APEX тонкий клиент.
Я вообще не перехватываю ошибку из оракла, как приводил пример выше.
У юзверя только 3 буквы впереди непонятные ORA-233434.
А далее понятный текст ошибки.
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39182474
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
окапечатка:
у меня проект одни один ))
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39182490
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ещё совет - не ставь try так дальше и выше по стеку, насколько возможно.
Если линейка\платформа умеет, то на клиенте будет JS - alert(текст ошибки).
Т.к. один поток и одна транзакция.
Удачи!
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39183154
RuslanGab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,

зависит от БЛ. Приведи БЛ, и мы сможем сказать как ошибку исключить малой кровью - да там все просто. Это клиент на JavaFX - данные, представленные в GUI, скажем изменяются и сохраняются (на GlassFish через rest летит сохраняемый объект). В этом месте и показывать особо нечего:( Далее триггер в одной из таблиц при сохранении в ней данных уже смотрит условия (опять же могут быть разные триггеры и условия для разных таблиц) и сохраняет все ЛИБО откатывает транзакцию (т.е. сам откат в JPA делать не надо - я посмотрел про декларативные транзакции по вашему совету, но это не суть моего вопроса). Тут все очевидно и понятно, НО при откате естественно дать клиенту знать что мол "нееее: ты мне фигню послал так что не шали тут". Я могу эту проверку сделать на клиенте еще до попытки сохранения и ничего и не пытаться сохранить это вообще не вопрос, но тогда проверки придется делать в разных местах для разных таблиц и кроме того скажем админ напрямую сможет фигню в базу загнать (коли триггер убрать вообще). Мне подумалось что коли триггер таки с этой работой справляется уже то нефиг дублировать функции а пусть он и дальше это делает, а мы от него получаем сообщения. Причем хотелось чтобы было универсально и в одном месте все ловилось от всех возможных триггеров. Вот и все. В целом сделал так что оно фурычит, но мне просто не понравилось что я поднимаю исключение в БД и ловлю его в итоге через кучу других исключений - оттого пошел на форум за советом мож что рациональнее и проще в природе имеется.

оно работает - наверх идёт райзо до перехвата вами try - таки да! Вопрос и есть в том нормально ли это что я на БД поднимаю исключение и ловлю его через кучу других.

Petro123Ещё раз!
- триггер выдал ошибку (хотите номер, хотите строку)
- вы её перехватили?
да.

Все. Понимаю что задолбал. В итоге наверное пока остановлюсь на том что есть - оно все же работает. Когда будет БЛ с JMS горю желанием попробовать все это задружить глядишь выйдет то что мне таки понравится.

Еще раз всем спасибо!
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39183379
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RuslanGab,
Я не вижу зачем тут jms.
Покажи большую кучу. Про кучу разговора еще не было)))
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39183697
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RuslanGab,

а попробуйте использовать сервер ActiveMQ и JMS
Может получится посылать сообщение из базы на этот сервер.
Ну а дальше дело техники. Вроде так)
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39183711
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

авторесли ты не владеешь темой - не лезь

Да!!!!
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39183712
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

авторon error goto это равносильно try catсh в java, только с фишкой - возарата в точку возникновения этого исключения и продолжения работы с исправленными переменными., а не просто пропуск кода , как в java

Да!
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39183718
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MS Access - гениальный продукт в своём роде.
...
Рейтинг: 0 / 0
Как на сервере получать сообщения от БД?
    #39183729
Nebo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RuslanGab,

ActiveMQ и JMS
SQL Server

Всё можете охватить в рамках одной глобальной транзакции JTA.
...
Рейтинг: 0 / 0
14 сообщений из 39, страница 2 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Как на сервере получать сообщения от БД?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]