Вниз
Скачать: CL | DM;

Использование сложных типов данных в XML Web Services? Как?   Найти похожие ветки 

 
IInvokable ©   (2003-01-05 17:36) [0]

Детские примеры Веб-сервисов с простейшими типами данных Integer, string и т.д. работают нормально. К детским я отношу примеры написания Веб-сервиса типа "конверталка рублей в доллары и обратно", однако возникает вполне законный и мотивированный вопрос: как написать на D6 веб-сервис, с методами, принимающими в качестве параметров сложные типы данных и возвращающих сложнотипизированные результаты? Живой пример: у меня в интранете есть сервис - "Директория внутренних телефонов сотрудников компании". Он реализован как клиент/серверное приложение, общающийся через порт, например 5289. Ессно, доступ в интранет извне закрыт фаерволом. Я хочу написать веб-сервис, который работает под корпоративным веб-сервером и принимает запросы типа (буду использовать псевдоязык):


function GetEmployeeInfoByLastname( кусок фамилии сотрудника): сложная структура информации о сотруднике;


Сервер должен кьюерить SQL-сервер командой типа


SELECT EmpID, EmpLocalPhone, EmpPosition FROM Employees WHERE EmpLastname LIKE "Пет%"


Естественно, такой запрос может возвратить более одной записи (Петров, Петренко, Петухов). Все это на стороне сервера я хочу запихнуть в


type TEmpInfo = record
eid: Integer;
eLPhone: string;
ePos: string;
end;


...и отдать этот сложный DataSet обратно клиенту в SOAP-сообщении.

ВОПРОС: Как мне это реализовать?

Порождение собственных типов от класса TRemotable у меня не получается. Может я что не так делаю? В D6 \Demos\WebServices есть пара примеров, но они все завязаны на InterBase, которую я в принципе не использую.

Заранее благодарен за ответы.


 
Mike_Goblin ©   (2003-01-05 18:05) [1]

Для начала прочесть в help раздел
Using complex types in invokable interfaces
потом все же разобраться с примерами



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
1-75924
Vadim840
2003-02-12 13:03
2003.02.24
Индексы элементов


3-75765
Zhenka
2003-02-05 20:02
2003.02.24
Помогите!! как проиграть звук из blob поля


3-75802
Sour
2003-02-06 13:19
2003.02.24
Как уменьшить рамер БД (Interbase).


14-76162
nick-from
2003-02-08 01:47
2003.02.24
Как скопировать директорию со всеми


3-75814
UnderSun
2003-02-05 00:27
2003.02.24
Проблемы с обновлением запроса из др потока (IB 6.5)




   Наверх