Я занимаюсь разработкой библиотеки, которую вы можете использовать в коде клиента или сервера. В частности, вы создаете экземпляр некоторого класса для библиотеки и указываете, что он является сервером или клиентом.
Клиент должен отправить около 5 атрибутов на сервер без какой-либо иерархической структуры, сервер должен ответить одним атрибутом или описанием ошибки.
Клиент и сервер не должны совместно использовать какое-либо состояние, поэтому, если сервер изменяет информацию, предоставленную клиентом, клиенту не нужно знать об этих изменениях.
В данный момент я декодирую все в строку специальным разделительным символом и отправляю его через TCP-сокет. Я хотел бы иметь немного больше безопасности типов здесь и думал об использовании RMI, но, поскольку мое короткое исследование пошло, RMI навязал общее состояние объекта, что не является моей целью. Поэтому мне может понадобиться какое-то решение для веб-сервиса? Должен ли я использовать JAXB для описания сообщений и отправки XML-сообщений через сокет? Есть ли какая-нибудь хорошая библиотека для отправки аннотированного объекта JAXB через Интернет, и все же есть некоторый контроль над сбоями связи, сети, сервера?
Программное обеспечение всегда должно работать на базовой установке JRE.
Спасибо за совет.