Ничто не мешает вам отправить POST, заполненный XML, чтобы получить результаты, заполненные XML обратно.
Самое простое, что нужно сделать, это каким-то образом перехватить запросы SOAP, идущие туда-сюда, и просто превратить запрос в шаблон с пробелами, являющимися вашими параметрами, а затем использовать XPath в полученном XML для вывода ваших результатов.
Единственное, что вам может понадобиться - заголовок SOAPAction в вашем POST, но, скорее всего, нет.
Это действительно ничего страшного. Если у вас есть десятки методов, это больше боли. Кроме того, если вы используете какую-либо часть шифрования SOAP, то это больше проблем. Но если их всего несколько, то в конце концов это всего лишь XML, и большая часть этого XML является шаблонной, так что если смотреть с точки зрения, это довольно просто.
Addenda:
Если у вас есть внутренняя логика, которую вы хотите использовать с более дружественным HTTP-сервисом, то JAX-RS может сделать это довольно легко, но для этого потребуется кодирование на стороне сервера.
Если у вас есть существующая веб-служба SOAP, которую вы хотите использовать, то забудьте всю часть уравнения SOAP и просто относитесь к ней как к веб-службе HTTP, которая использует полезные нагрузки XML. Это все еще SOAP, но вы не используете никаких инструментов SOAP на стороне клиента. Вы просто собираете полезные нагрузки XML по клиентским запросам (из шаблонов было бы проще всего, ИМХО) и в результате потребляете полезные нагрузки XML и торгуете ими по HTTP.
В зависимости от того, сколько различных методов в существующем веб-сервисе вы намереваетесь вызывать, вы получите представление о масштабах выполняемой работы. Это простая работа (как только вы можете легко просматривать полезные данные), но она все еще работает. Если у вас есть только несколько методов, особенно если интерфейс стабилен и не меняется, гораздо проще просто работать с необработанным XML, чем изучать и бороться с какой-то новой незнакомой средой.