Надо заиспользовать в одном unmanaged C++ проекте протокол WSDL.
В C# (т.е. в .NET фреймворке) Я видел поддержка для этого протокола сделана очень хорошо.
Для unmanaged C++ не знаю куда копать... похоже MS не позаботилась библиотекой для поддержки.
На счет удобства этой тулзы спорить не буду. Других достойных библиотек на си++ для работы с soap я не видел. Наилучший выбор — перейти на c# или java и для критических частей кода использовать модули на си/си++.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, bnk, Вы писали:
А>На счет удобства этой тулзы спорить не буду. Других достойных библиотек на си++ для работы с soap я не видел. Наилучший выбор — перейти на c# или java и для критических частей кода использовать модули на си/си++.
Проект уже написан, переписывать его на новом языке бессмысленно да и собственно мне абсолютно не нужно.
Так что буду разбираться с gSOAP что тут поделать. Вроде либа не плохая на первый взгляд.
nen777w wrote:
> Проект уже написан, переписывать его на новом языке бессмысленно да и > собственно мне абсолютно не нужно. > Так что буду разбираться с gSOAP что тут поделать. Вроде либа не плохая > на первый взгляд.
Здравствуйте, nen777w, Вы писали:
N>Куда копать, что можно сделать?
Прототип можно сделать при помощи gsoap, как сказали чуть выше по ветке.
Но, если предполагается сервер чуть серьезнее, чем тривиальный, категорически рекомендую от gsoap-a отказаться, несмотря на все его привлекательные стороны.
Из моей практики: gsoap развивается крайне медленно, и в нем имеется достаточное количество мелких, но гадостных багов. Их XML парсер крайне ублюдочен и безобразно работает с юникодом.
Куда проще и удобнее взять библиотеку транспорта (например curl) и какой-нибудь серьезный XML парсер (libxml2 или MSXML). Запросы и ответы парсить/формировать при помощи XML-ного парсера. При некотором знакомстве с SOAP-протоколом — абсолютно ничего сложного.
__________
16.There is no cause so right that one cannot find a fool following it.
Здравствуйте, 0xDEADBEEF, Вы писали:
DEA>Здравствуйте, nen777w, Вы писали:
N>>Куда копать, что можно сделать? DEA>Прототип можно сделать при помощи gsoap, как сказали чуть выше по ветке. DEA>Но, если предполагается сервер чуть серьезнее, чем тривиальный, категорически рекомендую от gsoap-a отказаться, несмотря на все его привлекательные стороны. DEA>Из моей практики: gsoap развивается крайне медленно, и в нем имеется достаточное количество мелких, но гадостных багов. Их XML парсер крайне ублюдочен и безобразно работает с юникодом.
DEA>Куда проще и удобнее взять библиотеку транспорта (например curl) и какой-нибудь серьезный XML парсер (libxml2 или MSXML). Запросы и ответы парсить/формировать при помощи XML-ного парсера. При некотором знакомстве с SOAP-протоколом — абсолютно ничего сложного.
Спасибо.
Но мне не сервер нужно делать. А клиент который будет работать с веб интерфейсом за которым БД.
Здравствуйте, nen777w, Вы писали:
N>Но мне не сервер нужно делать. А клиент который будет работать с веб интерфейсом за которым БД.
Если БД, то будут вопросы с интернационализацией (читай Юникодом). А еще, короткие запросы и длинные ответы.
Поэтому, совет остается прежним:
— для отправки/приема используем библиотеку транспорта (хоть curl, хоть WinInet или еще что)
— для формирования запроса используем DOM-парсер
— для парсинга ответа используем потоковый SAX-парсер, чтобы не хранить DOM неизвестного размера в памяти.
__________
16.There is no cause so right that one cannot find a fool following it.