По сути, вы пишете свой собственный движок WS. Очевидно, выполнимо, но довольно много работы, чтобы получить право с нуля. Я предполагаю, что если вы найдете какую-то реализацию с открытым исходным кодом, то адаптация должна быть возможной.
Более грязная альтернатива, но я видел применение в другом контексте - использовать интерфейс WSG
String call( String workkFlowName, String payload)
Полезная нагрузка и ответ - это строки, содержащие любой XML. Таким образом, вызывающая сторона должна понимать схемы для этих XML. С точки зрения клиента количество усилий по написанию кода не сильно отличается. Я думаю, что ваши усилия по написанию кода будут значительно сокращены.