Являются ли серверы приложений (с EJB) единственным способом взаимодействия клиент / сервер Java EE? - PullRequest
1 голос
/ 06 января 2009

Представьте себе Java-клиентское ERP-приложение, обслуживающее до 100 одновременно работающих пользователей, как веб-клиентов, так и клиентов Swing. Для постоянства мы можем использовать Persistence API и Hibernate. Но когда речь идет о взаимодействии клиент / сервер, действительно ли у нас есть альтернатива использованию AS с EJB для снижения затрат на программирование удаленной связи?

Это кажется очень тяжелым решением для добавления EJB и сервера приложений, просто для удаленного взаимодействия. Существует также стандартный способ использования RMI, но кто хочет в наше время кодировать все самостоятельно ...

Я знаю, что вы получите множество функций бесплатно с AS в дополнение к удаленной части. И, может быть, это путь. Но есть ли на самом деле какие-либо другие (с низкими затратами на программирование) альтернативы AS для связи клиента с сервером для корпоративного приложения?

Ответы [ 3 ]

3 голосов
/ 06 января 2009

Лично я считаю, что Seam - окончательное решение проблемы, которой у меня нет, но кроме этого, есть много вариантов, и Spring используется для большинства из них:

Преимущество методов удаленного взаимодействия на основе HTTP заключается в том, что они легко подключаются к моделям безопасности Spring. Кроме того, вы получаете доступ к таким вещам, как перехватчики.

2 голосов
/ 06 января 2009

Сервер приложений является довольно тяжеловесным решением. В зависимости от ваших требований, я постараюсь убедиться, что вы можете работать в простом контейнере сервлетов (например, Tomcat). Я нахожу удаленное взаимодействие намного проще с Spring-remoting вместо полного EJB. Spring-remoting предоставляет абстракцию от используемой техники удаленного взаимодействия. Гессиан имеет хорошую репутацию как легкий протокол.

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

2 голосов
/ 06 января 2009

Вы можете использовать легкие рамки удаленного взаимодействия. У Spring в этом разделе есть несколько опций.

Если вы спросите меня одно слово для обоих, я предложу два. Шов или Весна. Мне самому нравится Seam, но для легкого удаленного взаимодействия Spring имеет более жизнеспособные решения и поддержку. Опять же, если ваша AS - JBoss, подумайте о Шов .

...