|
|
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, прошу дать совет какую технологию использовать в моем конкретном случае. У меня есть stand-alone приложение, написанное на NetBeans Platform, в этом приложении ведется подобие истории сделок с ценными бумагами, а также заносятся котировки. Все достаточно просто - пользователь вносит информацию и потом может просмотреть историю в любой другой день. Поступило задание: сделать так чтобы другие пользователи могли видеть, на своих компьютерах, все сделки и котировки сегодняшнего дня, в форме таблицы, при этом, информация об изменении котировок должна отображаться на компьютерах других пользователей с минимальным опозданием, а измененные ячейки таблицы должны поморгать пользователям к.л. цветом. Я решил, написать JSF-приложение, которое будет делать выборку из БД за текущий день и отражать данные в html таблице. JSF приложение будет установлено на GlassFish. Те пользователи, которым понадобится информация будут просто запускать браузер и открывать закладку. Таблица сделок будет авто-обновляться. Таким образом мне удастся решить проблему со сделками за день. Остается проблема - как мне сделать так, чтобы при изменении котировки в приложении на NetBeans Platform, эти котировки моментально отражались в JSF-приложении, т.е. мне надо каким-то образом генерировать событие в ответ на которое html-таблица, в JSF приложении, должна немедленно обновить себя. Вопрос: Как проще реализовать данную схему? Пока мне в голову пришло использовать RMI, но быть может в моем случае стоит использовать к.л. другую схему? В выборе технологий я не ограничен, т.к. приложение пишется только для одного офиса. Заранее благодарю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 11:32:05 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Viktor GrafskiyВ выборе технологий я не ограничен тогда решить, веб приложение будет или толстый клиент клиент-сервер (десктоп) . Потом переписать и сделать Одно приложение для офиса. Так проще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 12:01:39 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Petro123Viktor GrafskiyВ выборе технологий я не ограничен тогда решить, веб приложение будет или толстый клиент клиент-сервер (десктоп) . Потом переписать и сделать Одно приложение для офиса. Так проще. Ну так это слишком круто. Тем более неограничен я в технологиях, а не во времени :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 12:06:32 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Viktor Grafskiy, вы хотите иметь 2 графических интерфейса - standalone приложение и jsf/браузер. Сначала подумайте, нельзя ли обойтись одним, зачем вам сопровождать оба. Если решите, что нужен jsf, почитайте про асинхронные обновления через AJAX . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 13:08:40 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
rfqвы хотите иметь 2 графических интерфейса - standalone приложение и jsf/браузер. Сначала подумайте, нельзя ли обойтись одним, зачем вам сопровождать оба.Одно приложение - на NetBeans Platform установлено у одного пользователя, работа которого заключается именно в вводе данных. Приложение написано и работает, менять его нет ни сил ни желания. Второе приложение должно лишь отражать небольшой кусочек данных из первого приложения, но при этом должно быть доступно любому пользователю(которых не так уж и мало), соответственно во втором случае, я считаю, будет логично выбрать web-based морду.rfqЕсли решите, что нужен jsf, почитайте про асинхронные обновления через AJAX .Спасибо, я посмотрю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 13:52:31 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Viktor Grafskiyrfqвы хотите иметь 2 графических интерфейса - standalone приложение и jsf/браузер. Сначала подумайте, нельзя ли обойтись одним, зачем вам сопровождать оба.Одно приложение - на NetBeans Platform установлено у одного пользователя, работа которого заключается именно в вводе данных. Приложение написано и работает, менять его нет ни сил ни желания. Второе приложение должно лишь отражать небольшой кусочек данных из первого приложения, но при этом должно быть доступно любому пользователю(которых не так уж и мало), соответственно во втором случае, я считаю, будет логично выбрать web-based морду.rfqЕсли решите, что нужен jsf, почитайте про асинхронные обновления через AJAX .Спасибо, я посмотрю.Приложения отображалки - это лишь слушатели события, которые долдны по получению сигнала обновить данные, приложение для внесения данных - поставщик события. Сделайте приложение отображалку подписчиком на событие - как, да хотя-бы через то, что приложение для ввода данных реализует простейший сервер, который будет для подключённых подписчиков рассылать уведомления через сообщения. Механизм уведомления зависит от вашего желания. При этом нужно понимать, что JSF в данном случае подходит мало т.к. HTTP в данном случае мало подходит в силу своей неактивности. Вам нужна своя реализация активного протокола... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 14:12:08 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Viktor Grafskiy, СУБД есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 14:42:35 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Petro123, да, PostgreSQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.12.2013, 20:06:07 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, В этом случае для конечного пользователя явно нужен веб-интерфейс jsp/jsf - от одного дня работы, в зависимости от сложности и владения технологиями. Если менять исходное приложения желания нет, как нет и прямой связи между приложением и возможным веб-интерфейсом, то нужен посредник для передачи, подготовки данных. Для начала на месте автора я кратко описал бы функционал уже имеющегося приложения, что бы не приходилось играть в угадайку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2013, 09:55:32 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Viktor GrafskiyPetro123, да, PostgreSQL. Т.к. у вас один отдел, пусть по таймеру каждые 5 сек лазят в бд за свежаком. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2013, 12:03:25 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Viktor Grafskiy, Я бы взял Vaadin вместо JSF и сделал вот так ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2013, 12:13:41 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
PavelDartДля начала на месте автора я кратко описал бы функционал уже имеющегося приложения, что бы не приходилось играть в угадайку.ОК. Как я уже сказал, есть программа на NB Platform, куда один из наших пользователей заносит след. информацию: 1) Сделки. Сделка представляет собой JPA Entity, с несколькими полями такими как объем, комиссия, продавец, покупатель и другие детали. Сделка набивается в Swing-форме и после нажатия на кнопку Сохранить улетает в БД, а также начинает отображаться в JTable среди других сделок прошедших за сегодняшний день. 2) Колебания стоимости ценных бумаг за текущий день. Представляет собой отдельное окно программы, где можно выбрать ценную бумагу и установить текущую цену, по которой данная бумага котируется на рынке на данный момент, также представляет собой Enitity и сохраняется в БД со всей историей изменений по полю стоимость. Кроме всего в программе существует модуль отчетов, который умеет отображать историю сделок, формировать другие отчеты и экспортировать их в xls, также данный модуль умеет выводить графики рисованные с помощью JavaFX. Есть некоторые доп. модули, которыми пользуется другой отдел. Petro123Т.к. у вас один отдел, пусть по таймеру каждые 5 сек лазят в бд за свежаком.На данный момент я накидал тестовое приложение, которое именно так и работает и использует вот эту штуку для опроса БД. Опрос идет с интервалом 1 сек. Мне не нравится, то что данный механизм постоянно делает выборку из БД в независимости от того есть изменения или нет. GregTkЯ бы взял Vaadin вместо JSF и сделал вот такСпасибо за ссылку. Судя по описанию это как раз то, что мне нужно, попробую прикрутить. Правда с Vaadin не приходилось общаться, только с GWT, но очень давно. Alex KuznetsovПриложения отображалки - это лишь слушатели события, которые долдны по получению сигнала обновить данные, приложение для внесения данных - поставщик события. Сделайте приложение отображалку подписчиком на событие - как, да хотя-бы через то, что приложение для ввода данных реализует простейший сервер, который будет для подключённых подписчиков рассылать уведомления через сообщения. Механизм уведомления зависит от вашего желания. При этом нужно понимать, что JSF в данном случае подходит мало т.к. HTTP в данном случае мало подходит в силу своей неактивности. Вам нужна своя реализация активного протокола...Я думаю, что Вы правы, но хотелось бы найти что нибудь готовенькое или по крайней мере точно знать, что я не изобретаю ещё один велосипед и решения моего вопроса на данный момент нету. В общем мне нужно сделать как нибудь так чтобы BackingBean из отдельного потока принудительно обновлял инерфейс пользователя. Вчера долго ковырялся в гугле, вопросов подобно моему много, а вот ответа мне пока найти не удалось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2013, 14:26:17 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Viktor Grafskiy, Для того чтобы узнать есть ли хлеб в магазине, нужно туда сходить. Т.е. только на той форме и контроле который активный и видимый таймер запустит именно Его запрос. Ты на форуме как узнал о моём посте? )))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2013, 16:21:05 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
авторВ общем мне нужно сделать как нибудь так чтобы BackingBean из отдельного потока принудительно обновлял инерфейс пользователя. Вчера долго ковырялся в гугле, вопросов подобно моему много, а вот ответа мне пока найти не удалось. вообще задача с нынешними технологиями решается очень и очень просто. websockets и всё!! любое изменение данных происходит через обращение клиента к серверу по websockets там изменение в базе, и соответсвенно рассылка на всех заинтересованных клиентов по тому же websocket . и не надо долбить сервер запросами о изменениях в данных для крутизны можно руководству сделать программку на андроиде и пусть отображает всю динамику процессов . всё по тому же протоколу websockets . моментально с реальными изменениями. AJAX чахло курит бамбук в стороне..(и сомет ввместе с ним) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2013, 17:43:17 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
авторHTTP в данном случае мало подходит в силу своей неактивности. Вам нужна своя реализация активного протокола... велосипед уже на скоростном треке, ждет гощиков. его марка websocket я на ём уже катаюсь :) релизация через jsp, на том же NetBeans реализуется на ура. в последних tomcat есть даже демки с этим протоколом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.12.2013, 17:53:18 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Возьмите Atmosphere Framework. Все уже сделано за вас. Push-контролы есть, например, в Primefaces. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.01.2014, 19:40:01 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
GregTkЯ бы взял Vaadin вместо JSF и сделал вот такСпасибо за ссылку. Судя по описанию это как раз то, что мне нужно, попробую прикрутить. Правда с Vaadin не приходилось общаться, только с GWT, но очень давно. [/quot] вот как раз в вадином проще будет.. даже проще чем с gwt и последующим людям, если такие будут, разбираться проще. и ваще посмотрите на событийную модель, должна же как рахз подойти. Всех с НГ!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.01.2014, 20:29:55 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
МужикВозьмите Atmosphere Framework. Все уже сделано за вас. Push-контролы есть, например, в Primefaces.Спасибо большое! Получается, что по сути, это те же websockets, которые посоветовал Вадя . Читаю руководство по websocket'ам. Позже отпишу, что получилось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.01.2014, 20:36:59 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
ferc GregTkЯ бы взял Vaadin вместо JSF и сделал вот такСпасибо за ссылку. Судя по описанию это как раз то, что мне нужно, попробую прикрутить. Правда с Vaadin не приходилось общаться, только с GWT, но очень давно. вот как раз в вадином проще будет.. даже проще чем с gwt и последующим людям, если такие будут, разбираться проще. и ваще посмотрите на событийную модель, должна же как рахз подойти. Всех с НГ!!!! ОК, попробую тоже посмотреть на праздниках. Присоединяюсь к поздравлениям! :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.01.2014, 20:42:39 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
Viktor GrafskiyМужикВозьмите Atmosphere Framework. Все уже сделано за вас. Push-контролы есть, например, в Primefaces.Спасибо большое! Получается, что по сути, это те же websockets, которые посоветовал Вадя . Читаю руководство по websocket'ам. Позже отпишу, что получилось. ну как раз атмосфера в ваадин входит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.01.2014, 21:05:08 |
|
||
|
Нужен совет. Передать данные из одного приложения в другое.
|
|||
|---|---|---|---|
|
#18+
только советую начитнать сразу с wss. просто ws не всегда проходит через прокси можно использовать и простые библиотеки https://github.com/TooTallNate/Java-WebSocket с помощбю их реализовал схему браузер-сервер-андроид вместо/вместе браузера/андроида можно и десктопное приложение, в приведенных библиотеках есть примеры если браузеры то хроми мозилла (говорят ие10, но не проверял) остальные для "нормального приложения" не подходят по многим отстают от html5. да и нафиг в таких случаях кросплатформенность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.01.2014, 22:37:10 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38515887&tid=2127875]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
177ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 482ms |

| 0 / 0 |
