мы решаем подобную проблему здесь.Однако наше решение проблемы может быть не тем, что вы ищете.
У нас есть довольно сложный набор веб-сервисов, который мы должны использовать, и нам потребуется некоторое количество настроек и настроек.Чтобы не влиять на развитие Delphi-стороны нашей системы (очень долгие циклы выпуска), мы создали серию хуков, которые перенаправляют вызовы в DLL, также в Delphi.
Эта DLL имеет оченьпростая задача пересылки информации, полученной от вызова функции, немного отформатировать ее и протолкнуть через почти пустой TCP-сокет.
Оттуда информация поступает в интерфейсный движок, где мы можем поиграть в сопоставления и прочее.преобразования, которые должны быть выполнены до вызова услуг.Фактическая упаковка и вызов веб-службы выполняются в собственной среде движка (Java).
Наличие сокетного соединения для вызова движка позволяет значительно упростить и облегчить среду развертывания, в которой нам не нужно беспокоиться о ком /dcom или jni.
Звучит довольно сложно, но оказывается, что все сильно упростили.
Альтернативой было бы разработать COM DLL на C #, чтобы выполнить тяжелую работу на стороне сети и подключить ее к delphi.Это также было бы возможно, и в зависимости от среды развертывания может быть более простым решением.Мы решили не идти по этому пути, потому что наша установка довольно сложна: в ее состав входят толстый клиент, удаленный рабочий стол различной природы и очень тесная ИТ-структура для работы.Проще попросить открыть веб-доступ к одной машине и получить внутренний сокет к этому серверу от разных клиентов, чем просить открыть всех клиентов в интернет.
Иначе в чистом Delphi 5 доступ к веб-сервису не является чем-тоЯ бы назвал веселье, поэтому мой первый рефлекс здесь - использовать более дружественную для WS платформу и попытаться интегрировать их через какой-то мост (COM, JNI, stdcall DLL и т. Д.).
В любом случае, я надеюсь, что этопомогает.