Каков наилучший способ разработки архитектуры сервера Java, которая взаимодействует с клиентским приложением GWT, но также правильно реагирует на различные другие клиентские запросы с других платформ? В частности, я хотел бы использовать один и тот же уровень сервлета для ответа не только на мое приложение GWT, но и на соответствующие приложения для iOS и Android.Каков наилучший способ создания «независимого от платформы» GWT-сервера?
Первый подход, который, как я думал, заключается в реализации клиентского уровня GWT с использованием «RequestBuilder», а не обычных интерфейсов сервиса RPC-метода. Используя этот подход, я мог бы кодировать общие сервлеты, которые отвечают на запросы HTTP в RESTful, обрабатывая переменные, закодированные в чем-то вроде JSON или XML. Хотя это сработает, было бы довольно трудоемким, чтобы кодировать и декодировать мои объекты/параметры в JSON как на клиенте, так и на сервере, особенно когда RPC предоставляет такое элегантное решение.
Другой подход (который, по моему мнению, лучше), заключается в том, чтобы узнать спецификацию, которую Google использует для сериализации и десериализации вызовов метода RPC и реализации некоторой библиотеки, которая делает то же самое для iOS (в Objective-C) и Android. Проблема в том, что я не смог найти хорошую документацию об этом стандарте кодирования и не нашел библиотеки, которые реализуют ее для iOS или Android (хотя я нашел что-то подобное для PHP на www.gwtphp.com).
Может ли кто-нибудь направить меня к спецификации того, как GWT сериализует/десериализует свои объекты или, что еще лучше, библиотеки для iOS и/или Android, реализующие интерфейсы RPC?
Спасибо за рекомендации по сериализации JSON. – depthfirstdesigner