Для серверной части проблемы создайте свой код так, чтобы он представлял собой сервлет, а затем разверните его в контейнере, таком как Tomcat или Jetty.(Есть и много других, но Tomcat и Jetty работают очень хорошо и довольно просты в использовании.)
Для фреймворка я бы порекомендовал CXF (у меня был хороший успех в моем проекте)поскольку он сохраняет объем конфигурации, который вам нужно написать небольшим (обычно просто добавьте аннотации, чтобы отметить, какие методы должны быть представлены; аннотации стандартизированы как JAX-RS ), но многие другие также являются допустимыми.