Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java EE (J2EE) и Spring > GWT: RPC or XML/JSON? |
Автор: AndrewMormysh 13.10.2010, 17:08 |
Обращаюсь к разработчикам GWT-приложений - нужен ваш умудренный опытом совет =) Как известно существует довольно стандартная проблема для тех кто использует бесплатные версии http://www.smartclient.com/product/index.jsp - это реализация взаимодействия клиента и сервера по передаче пользовательских объектов. Сам гугл нам предлагает использовать RPC подход, но в этом случае придется создавать сериализуемые объекты типа DTO которые будут передаваться по сети и конвертеры из/в их серверные и клиентские представления. Второй подход предлагает передавать объекты в формате XML, испоьзуя, например, формат json. В общем, дальше углубляться в реализации думаю не стоит, поэтому ближе к сути вопроса - что используете в своих проектах ВЫ, и почему остановились именно на том или ином варианте (возможно [и весьма вероятно] есть и другие подходы)? |
Автор: Nofate 13.10.2010, 17:19 |
Используем GWT RPC, потому что просто и хорошо работает с компонентами ExtGWT. Хотя нюансы с сериализацией некоторые, конечно, есть. |
Автор: AndrewMormysh 15.10.2010, 11:07 |
Nofate, спасибо за ответ! А можете вкратце описать каким образом у вас происходит обмен сложными объектами(я имею ввиду бизнес-энтити, которая может содержать сложные зависимости на другие объекты, листы объектов, и т.п.)? И с какими трудностями вы сталкивались (те самые "нюансы")? |
Автор: COVD 17.10.2010, 13:35 | ||
Избавляться от "сложных" обьектов. XML сериализация более гибкая. Это облегчает модификации систем, которые online 7\24. Если в обьект на серверной стороне, например, добавляется поле, то уже соединенный клиент, который использует старое описание обьекта, нормально загрузит такой обьект (без нового поля). А в обычной сериализации это невозможно. В java сериализации это можно обойти, если использовать только базовые классы. Например, вместо класса Company с полями Name, Address использовать List<String>, а сервер и клиент знают, что 0 - Name, 1 - Address. Квази xml получается. |