Серверная часть на java, необходимо оповестить пользователя о событии на сервере и поменять кое-что на странице. В модели запрос ответ кажется нет такой возможности? У меня много пользователей (5-100) подключены к jsp
странице при этом только один из них делает какие-то изменения (немного js
) и остальные должны это увидеть в своих браузерах на той-же странице. Я могу средствами Java Servlet API
решить эту задачу учитывая что объем обновляемых данных очень маленький строка из 2-ух символов. Или есть какие-то некостыльные способы решать эту задачу?
Да, это возможно. Вам следует использовать механизм веб-сокетов, он позволяет отправлять данные на клиентскую часть без запроса с неё на сервер. Попробуйте для начала запустить этот пример, а затем приспособить его под свои задачи. Я вижу решение примерно таким:
Готового решения с кодом дать не могу, т.к. у меня его нет, но Вы можете задавать на SO новые вопросы по возникающим проблемам.
Другими словами вам нужен "триггер".
Если вы используете Spring в качестве фреймворка аннотация @Schedule(cron = "* * * * * *")
поможет. Отправляете пачку данных джейсоном и со стороны js
изменяете страницу с помощью ajax
или можете к примеру использовать angularJS
.
Сама JSP
не может изменяться динамически так как это страница которая формируется на сервере.
Но вы можете добавить ajax
запросы к JSP
и тогда парсить вручную джейсон который приходит и вставлять в уже сгенерированный html
(jsp
).
Но так же, если вам нужно переодически как-то изменять UI
взависимости от действий на сервере и отправлять запрос, можете использовать JavaRX
.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Нашёл в google не десяток аналогичных вопросов, и везде (практически) советуют одно и тоже - добавить код ниже в pomxml:
Пишу программку подключения и выполнения команды в linux на Java с библиотекой jsch в ходе, которой она просит нажать Enter с клавиатурыКак можно выполнить...
Я не уверен, что мой подход правильный может есть другая идея?
Покажется глупым, но я не понимаю как это сделать в данном случае, чтобы из одного класса передать в другой информацию, а потом начать с ней...