2014-09-27 3 views
0

Мне нужно создать настольное приложение для внутренних пользователей для определенного бизнеса. Он также нуждается в веб-интерфейсе для внешних пользователей. Я знаю, с веб-графическим интерфейсом, который могут получить как внутренние, так и внешние пользователи, но есть определенные факторы, которые находятся вне нашего контроля - из-за чего настольное приложение действительно неизбежно. Для целей этого вопроса я хотел бы остановиться на способе поддержки клиента рабочего стола (Swing) и клиента браузера.Java-приложение с Swing и веб-графикой

Есть ли какие-либо рекомендации, которые следует соблюдать? Я мог думать ниже:

  1. Expose классов обслуживания в качестве веб-служб и использовать их как от клиента свинг и веб-клиента
  2. Expose классов обслуживания, как EJB (бизнес в Java EE санитаров) и использовать клиент Swing, в EJB клиент. Веб-клиент может использовать классы контроллера для взаимодействия с EJB

Есть ли какие-либо известные преимущества использования любого подхода, помимо технологического агностицизма, предлагаемого веб-службами?

Кроме того, для swing-клиента я хочу использовать Java Web Start для легкого распространения. Я никогда не использовал его раньше, но из того, что я понял, он может поддерживать автоматическую проверку версии при запуске и обновлять клиент, когда это необходимо - это правильно?

+2

* «он может поддерживать автоматическую проверку версии при запуске и обновлять клиент при необходимости - это правильно?» * Да, подробнее [здесь] (http://docs.oracle.com/javase/tutorial/deployment/ WebStart /). – user1803551

+1

И [здесь] (http://stackoverflow.com/tags/java-web-start/info). – trashgod

+0

Спасибо за ссылки JWS. Может кто-то, пожалуйста, сообщите информацию об опыте _best вокруг поддержки как Swing, так и веб-клиентов на уровне обслуживания? _ – Pat

ответ

0

Если вам нужно избегать зависимости от Java/JVM в браузере (что, по вашему мнению, вы, по крайней мере, хотите), вам обязательно нужно пойти с смешанным подходом Swing-Vaadin. Создайте внутреннее приложение с Swing или JavaFX и веб-частью с Vaadin. Модель программирования в Vaadin настолько близка к типичной библиотеке пользовательского интерфейса для настольных компьютеров, что очень легко для одних и тех же разработчиков работать с кодовой базой, и, естественно, вы будете использовать точно такой же бэкэнд.

См. the example application Я недавно построил, чтобы продемонстрировать такую ​​установку.