GWT разделяет сервисы между несколькими модулями - PullRequest
0 голосов
/ 16 сентября 2011

У меня есть проект, в котором в зависимости от роли пользователя он перенаправляется на совершенно разные пользовательские интерфейсы сразу после входа в систему. Я планирую разделить структуру проекта на несколько модулей GWT, например:

1. Base module 
2. Login module 
3. Module for role1 
4. Module for role2 
...

У меня будут все модули, кроме Login module, расширяющего Base module, где я буду хранить общие компоненты пользовательского интерфейса, которые будут нужны мне везде. (например, редактирование профиля и тому подобное). Login module будет действовать как загрузчик, и его задача будет состоять в том, чтобы просто загрузить правильный модуль сразу после того, как пользователь будет подключен.

Проблема в том, что все мои серверные службы, которые вызывают модули GWT, практически одинаковы для всех модулей. У меня есть много сервисов по поиску информации, и во многих других случаях один пользователь просто заполняет информацию, а другой модерирует ее, так что это тоже сервис.

Как я понимаю, GWT выполняет вызовы к серверу, используя шаблон URL-адреса, подобный следующему: gwtModuleName/myServiceUrl, таким образом, службы зависят от модуля gwt. Как я могу "разделить" один сервис между несколькими модулями GWT?

1 Ответ

1 голос
/ 16 сентября 2011

Очень просто, просто поместите все свои сервисные файлы на стороне клиента в базовый модуль:

com.proj.client.base com.proj.client.base.request --- MyService ---MyServiceAsync com.proj.client.modA com.proj.client.modB

com.proj.server.request - MyServiceImpl

Я использую похожую структуру для одного приложения с 10+ модулямивсе используют одни и те же сервисы.

Просто импортируйте сервис из разных модулей

...