JAVA — как организовать протокол общения клиента  и сервера?
Обратите внимание на данный фреймворк resteasy.jboss.org
Работа с ним довольна проста и решит большинство ваших потребностей.   Вот простейший пример www.mkyong.com/webservices/jax-rs/resteasy-hello-w...  Мы делаем так - есть расшаренный проект , содержащий DTO классы. И клиент и сервер знают эти классы.  Клиент шлет запрос на сервер . DTO заворачиваются в JSON RestyGWT(мы на GWT пишем). Сервер парсит с помощью RestEasy.   Также вот неплохая библиотека для работы с JSON https://code.google.com/p/google-gson/  , может пригодится.
Сквозь рябь букв RPC вижу я.