Форум программистов, компьютерный форум, киберфорум
Java EE (J2EE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 9

Управление Java приложением через Web-интерфейс

23.03.2016, 22:46. Показов 2119. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!

Я работаю над Java программой, которая загружает данные с необходимых сайтов, выполняет необходимые операции с этими данными и тому подобное. Передо мной поставили задачу реализовать управление всеми этими процессами, средствами Web-интерфейса в реальном времени. Говоря простыми словами: например, заходим на сайт, видим список активных процессов, выбираем какой-то и нажимаем "остановить" и в запущенном консольном приложении этот процесс останавливается (допустим, какой-то поток). Конечно, кроме отключения потоков необходимо много разных функций, например выгрузка каких-то данных или изменение конфигурации и так далее.

Подскажите, как лучше реализовать эту задачу? У меня из вариантов только использование сокетов по которым можно посылать некие команды, которые будут выполняться, благодаря Reflection. Но как мне кажется этот способ какой-то костыльный. Это же придется разработать что-то вроде своего языка, что бы это работало.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.03.2016, 22:46
Ответы с готовыми решениями:

Получение Модели DOM (Web ресурса), загруженной JAVA приложением на компе
Всем здравствуйте! Описание проблемы: Есть информационная система работа с которой осуществляется через браузер(IE). Я не являюсь...

Управление Linux через собственный web-интерфейс
Ребят мне нужна рекомендация и принцип работы, опыт с php есть с Linux`сом в процессе изучаю, вот хочу реализовать веб - интерфейс для...

Управление Java приложением средствами VBA
Доброго времени суток, форумчане! Требуется автоматизировать повторяющиеся действия: копирование данных из документа Word и их вставка...

14
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
23.03.2016, 22:51
Fahrenheit57, для ваших целей подойдет Vaadin. На нем достаточно быстро можно написать админку не обладая знаниями клиентских технологий.
0
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 9
23.03.2016, 23:36  [ТС]
KEKCoGEN, сейчас я немного почитал про эту штуку и хочу спросить, а вы уверены, что мне это может подойти?
Ведь сама программа не должна быть в виде Web-интерфейса, программа работает на сервере в режиме 24\7 и к ней нужно сделать только систему управления.

Добавлено через 21 минуту
То есть мне нужен способ связи Web приложения и Java приложения, а не способ написать Web приложение с помощью Java фреймворков.
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
23.03.2016, 23:52
Fahrenheit57, если вам обязательно запускать ваши процессы на другой JVM, тогда дописывайте им какой-нибудь API (rest, RMI, EJB etc) и вызывайте его из веб аппликации, однако проще всего интегрировать код ваших существующих приложений в веб приложение.
0
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 9
24.03.2016, 03:51  [ТС]
KEKCoGEN, система должна работать полностью автономно, а не только, когда кто-то открывает браузер, по крайней мере я понял, что этот фреймворк дает возможность работать только так.

с RMI работать у меня не получилось. Пытался сделать по этому примеру: https://javatalks.ru/topics/8059. Возникает ошибка: error unmarshalling return; nested exception is
Вот на этой строке:
Java
1
RemoteHelloService service = (RemoteHelloService) registry.lookup("sample/HelloService");
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
24.03.2016, 09:12
Цитата Сообщение от Fahrenheit57 Посмотреть сообщение
система должна работать полностью автономно, а не только, когда кто-то открывает браузер, по крайней мере я понял, что этот фреймворк дает возможность работать только так.
почитайте как работают веб-аппликации. Вы все неверно поняли.
Сайт банка например работает только когда вы браузер открываете?
0
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 9
24.03.2016, 18:36  [ТС]
KEKCoGEN, в перспективе программа будет работать на нескольких серверах, что тогда? По этому мне похоже все-таки важно, что бы это было два отдельных приложения (админка и сама программа).
0
149 / 162 / 48
Регистрация: 19.10.2012
Сообщений: 530
24.03.2016, 20:00
Цитата Сообщение от Fahrenheit57 Посмотреть сообщение
KEKCoGEN, в перспективе программа будет работать на нескольких серверах, что тогда? По этому мне похоже все-таки важно, что бы это было два отдельных приложения (админка и сама программа).
Цитата Сообщение от KEKCoGEN Посмотреть сообщение
Fahrenheit57, если вам обязательно запускать ваши процессы на другой JVM, тогда дописывайте им какой-нибудь API
Решение на поверхности. Просто откройте интерфейс для команд от "админки" в вашем приложении, реализуйте простой REST.
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
24.03.2016, 20:08
Цитата Сообщение от Fahrenheit57 Посмотреть сообщение
, в перспективе программа будет работать на нескольких серверах, что тогда
вы похоже понятия не имеете как работают энтерпрайз приложения. Вам нужно либо основательно это выучить чтобы написать что-то приличное, либо дать написать это котому-то кто знает что делает.
0
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 9
24.03.2016, 20:13  [ТС]
KEKCoGEN, да вы права с энтерпрайз я никогда не имел дела, сейчас как раз пытаюсь втянуться в этот вопрос.
И я пытаюсь убедиться, не зря ли я потрачу время, смогу ли я переделать свое приложение таким образом, что бы оно соответствовало требованиям ТЗ. Насколько я понимаю, вы утверждаете, что это так. Буду дальше стараться разобраться, спасибо вам. Буду рад любым подсказкам и советам.
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
24.03.2016, 20:16
Цитата Сообщение от Fahrenheit57 Посмотреть сообщение
оно соответствовало требованиям ТЗ
оно будет соответствовать если вы правильно построите архитектуру вашего приложения. На чем писать интерфейс значения не имеет. Я предложил Vaadin т.к на нем можно быстро и не зная html\js создать многофункциональную админку. Как вы реализуете бекенд вашего приложения зависит от вас.
0
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 9
28.03.2016, 16:48  [ТС]
KEKCoGEN, я немного изучил Java EE и Vaadin, это и правда очень интересные штуки.
Насколько я понял, вы предлагайте не разделять основное приложение на два (админку и основное приложение), а сделать все в одном. Теперь я знаю, благодаря Vaadin это, действительно, возможно и будет хорошо работать.
Но я до сих пор не понимаю, как масштабировать приложение на несколько серверов, ведь мне в любом случае придется сделать админку отдельно, пусть и на Vaadin?
В теории я себе вижу это так: допустим, имеем два физических сервера, на каждом запущено два сервера приложений, в каждом из которых работает приложение (две копии того, что я щас называю основным приложением), так же на одном из серверов приложений будет запущена админка и это будет все как-то связано между собой, например благодаря RESTfull технологии. Если я не прав в чем-то, надеюсь меня поправят.

Но я совершенно не могу понять, как это реализовать, у меня не получается найти ничего в гугле, а даже если найду я не знаю, как это все проверить, как мне попробовать запустить все вышеописанное на своем компьютере и имитировать рабочие условия. Хотя по последней проблеме, я надеюсь, у меня получится что-то найти или сразу сделать, когда разберусь с первой проблемой.

Прошу объяснить мне или хотя бы дать какие-то ключевые слова или фразы для гугла, что бы я смог что-то изучить самостоятельно. Желательно, конечно, на русском, если это возможно.
0
149 / 162 / 48
Регистрация: 19.10.2012
Сообщений: 530
28.03.2016, 17:03
Цитата Сообщение от Fahrenheit57 Посмотреть сообщение
В теории я себе вижу это так: допустим, имеем два физических сервера, на каждом запущено два сервера приложений, в каждом из которых работает приложение (две копии того, что я щас называю основным приложением)
Зачем Вам на двух серверах поднимать 2 экземпляра одного приложения?
0
0 / 0 / 0
Регистрация: 07.09.2015
Сообщений: 9
28.03.2016, 18:55  [ТС]
Любопытный, на каждом сервере по одному экземпляру.
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
28.03.2016, 20:44
Цитата Сообщение от Fahrenheit57 Посмотреть сообщение
В теории я себе вижу это так: допустим, имеем два физических сервера, на каждом запущено два сервера приложений, в каждом из которых работает приложение (две копии того, что я щас называю основным приложением), так же на одном из серверов приложений будет запущена админка и это будет все как-то связано между собой, например благодаря RESTfull технологии.
Да. вполне можно так и сделать.

Цитата Сообщение от Fahrenheit57 Посмотреть сообщение
Но я совершенно не могу понять, как это реализовать
быстро поднять контеинер с рестом можно используя Spring Boot.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.03.2016, 20:44
Помогаю со студенческими работами здесь

Управление приложением через VBA
Здравствуйте! Имеется приложение на C#, VS2010. Существует ли способ добавить в него поддержку VBA, чтобы при помощи макросов управлять...

Управление приложением через веб-форму
В общем есть у меня одна программа на C# (WinForms), которая висит на сервере и выполняет определенные действия. Появилась необходимость...

Управление приложением на андроиде через интернет
Здравствуйте,подскажите пожайлуйста как реализовать такой вот алгоритм: Пользователь нажимает на кнопку в программе под Windows,через...

Управление чужим приложением через SendMessage
Итак, суть проблемы: Есть приложение для работы с реле по USB. Исходники приложения поставщик отказался предоставить, а управлять реле...

Управление приложением блокнот через код C#
Всем привет! Подскажите как мне сделать так, чтоб моя программа открыла в стандартном блокноте винды файл, и сохранила его с другой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru