Клиентская архитектура для вызова веб-службы на основе Spring - PullRequest
0 голосов
/ 10 марта 2012

Я написал веб-сервис на основе SOAP, который отлично работает на сервере Tomcat.Сама служба веб-службы - это веб-служба на основе Spring MVC, которая работает на сервере приложений Tomcat.

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

В чем я не уверен, так это в архитектуре и среде, которые я должен использовать для клиента.Клиентское приложение будет основано на Swing, но возможно ли использовать Spring вместе с Swing?

В веб-сервисе у меня есть следующая настройка

view -> Service -> Model

Клиентское приложение - это в основном инструмент конфигурации.Он использует веб-сервис для настройки учетных записей пользователей.Это означает, что клиентское приложение фактически ничего не записывает в какую-либо базу данных.Он просто использует сервисы веб-службы для внесения изменений в «учетную запись пользователя» и, возможно, просмотра списка учетных записей.

Мой вопрос на самом деле таков: подходит ли дизайн MVC для такого случая использования? Обычно Spring используется для веб-приложений.Есть ли польза от использования Spring с клиентом на базе Swing?- Есть ли какие-либо альтернативные или лучшие решения / дизайн / архитектура, которые бы достигли того же самого?

Пример, показывающий Spring, используемый в сочетании с приложением Swing, был бы очень полезным.

Заранее спасибо.

Ответы [ 3 ]

3 голосов
/ 10 марта 2012

Spring MVC не подходит для клиента на основе Swing.Используйте базовую среду Spring и реализацию JAX-RS, такую ​​как Jersey, чтобы предоставлять простые веб-службы REST в tomcat.Джерси также предоставляет соответствующий клиентский API, который можно использовать в приложении Swing для вызова служб REST.

2 голосов
/ 10 марта 2012

Если вы выбрали Swing в качестве платформы, вы можете посмотреть на два варианта:

(1) Клиентская платформа Net Beans Rich

http://netbeans.org/kb/trails/platform.html

(2) Вы можете закатать рукава и написать собственное приложение, используя низкоуровневую, но чрезвычайно гибкую среду под названием Swixml

http://www.swixml.org/

Дайте Swixml хорошую попытку, прежде чем пробовать другие, это может вас удивить.

1 голос
/ 10 марта 2012

Вы можете реализовать приложение тонкого клиента на основе Swing с Spring Integration бэкэндом, служащим уровнем интеграции.Он может предоставлять шлюзы, принимающие простые типы Java или DTO.Ваши презентаторы / контроллеры Swing взаимодействуют с этими компонентами для вызова удаленных веб-сервисов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...