omo lidar com RPCs no jogo PlayN cliente-servido

Gostaria de usar o PlayN para criar um jogo de cartas cliente / servidor, por exemplo Corações. Enquanto estou focado principalmente na saída HTML5, eu gostaria de ser independente da plataforma de saída, caso decida criar um cliente Android no futuro. Como devo abordar o mecanismo RPC?

Estas são as opções que eu pensei:

Use JSON para RPCs com métodos get () / post () - escreva um servlet que aceite / retorne JSON e faça com que todas as versões do código do cliente o usem. Isso parece factível, mas estou preocupado com a verbosidade do JSON. Depois que o Hearts estiver funcionando, eu gostaria de passar para jogos mais complexos, e estou preocupado que o JSON resulte em muitas mensagens muito maiores do que o necessário sendo transmitidas entre o cliente e o servidor. Na verdade, eu não sei trabalhar com JSON em Java, mas presumo que isso seja possível. Minhas suposições estão alinhadas? Quão bem o Java funciona com JSON? Continue usando o GWT-RPC. Posso fazer isso usando uma interface de serviço assíncrona no meu construtor principal (independente de plataforma) e, no meu HTML main (), passo a interface GWT Async gerada porGWT.create(MyService.class) (ou pelo menos um invólucro). Não tenho idéia de como isso funcionaria para versões não HTML. É possível usar o GWT-RPC diretamente do código Java do cliente?Use outra forma de RPC. Alguma sugestão

questionAnswers(2)

yourAnswerToTheQuestion