Сериализация GWT и Appengine Channel Api - PullRequest
3 голосов
/ 27 декабря 2010

Я использую API канала Google Appengine для отправки событий с сервера на клиент.

Проблема в том, что Channel API отправляет только сообщения типа java.lang.String. Поэтому мои классы в пакете ~ .shared необходимо преобразовать в строку, прежде чем я смогу передать их в канал!

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

Как я могу получить службу GWT-RPC для сериализации моих объектов нана стороне сервера и отправить их на канал?

Я нашел это , но он использует недокументированный RPC, который уже был изменен.Есть мысли?

Ответы [ 2 ]

4 голосов
/ 28 декабря 2010

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

Посмотрите на этовопрос: Json <-> Java-сериализация, которая работает с gwt .

JSON - это, вероятно, то, что вы хотите отправлять и получать при работе с канальным API.

2 голосов
/ 24 октября 2011

Я смотрю на Channel API как на способ отправки небольших сообщений клиенту, и клиент может ответить соответствующим образом. Это может быть небольшое сообщение, просто чтобы «разбудить» клиента и заставить его перейти на сервер и получить ваши объекты, используя requestfactory или RPC.

...