Как интегрировать smartGWT (уровень представления) с сервисом Spring? - PullRequest
2 голосов
/ 07 января 2011

Я реализовал сервисный уровень, который взаимодействует с уровнем доступа к данным для данных.Так что в основном бизнес-логика реализована на уровне сервиса.Услуги реализуются на весенних рамках.Таким образом, в основном каждый сервис может работать на JBoss независимо (как SAR).Теперь я хочу реализовать презентационный слой в SmartGWT.Таким образом, в основном код уровня представления должен вызывать открытые методы служб для доступа к данным.Я хочу знать, насколько хорошо DataSource SmartGWT может интегрироваться со службой и как это сделать?

1 Ответ

4 голосов
/ 08 января 2011

Мы сделали нечто подобное.Мы помещаем веб-слой поверх сервисного слоя.Веб-слой содержит Spring-контроллеры, которые взаимодействуют с SmartGWT (LGPL) RESTDataSources.

У нас все отлично работает, но это не тривиальная задача.Источники данных SmartGWT предназначены для интеграции с библиотеками SmartGWT Pro, что может осложнить жизнь, если вы их не используете.Убедитесь, что вы понимаете формат запросов / ответов, ожидаемых источниками данных, см. Здесь:

SmartGWT RestDataSource

Возможно, вам придется настроить transformRequest () метод источника данных, см. этот вопрос:

Руководство по настройке источника данных SmartGWT

Мы столкнулись с множеством проблем с поддержкой XPath;в основном это было хорошо для извлечения данных из сложных объектов, отправленных на источник данных, но это был кошмар, пытавшийся вернуть сложные объекты в правильном формате.Для этого нам пришлось проделать большую работу в transformRequest ().

Если вы хотите использовать фильтрацию, вы обнаружите, что пишете код сервера для интерпретации объектов Basic / Advanced Criteria, отправляемых SmartGWT.

Вы также можете рассмотреть вопрос об использовании Restlet, как упомянуто в этом вопросе:

SmartGWT RestDataSource

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

...