Я пытался запустить мыльный сервер, который реализует (это правильный термин?) Спецификацию wsdl, сделанную третьей стороной. Я использовал импортер Delphi wsdl. (Часть) сгенерированный код выглядит так:
miniPortType = interface(IInvokable)
['{824D172A-9C1F-D202-5B21-4C324553BCF0}']
// Cannot unwrap:
// - Input element wrapper name does not match operation's name
function miniService(const aMessage: MiniMessageType): MiniAnswerType; stdcall;
end;
При вызове сервер сообщает, что « Ни один метод с именем MiniMessageType не поддерживается интерфейсом miniPortType ».
Я могу заставить это работать, только сделав имя функции и имя основного элемента сообщения одинаковыми.
Я думаю, что должно быть возможно иметь разные имена. По крайней мере мыло не жалуется. И у меня фактически нет другого выбора, кроме как реализовать wsdl как есть. Кто-нибудь знает, как я могу обойти это?
Я использую Delphi 2007.
Спасибо, Миэль.