ДонНУ, кафедра КТ, проф.В.К.Толстых Web-службы (Web-сервисы) введение введение Разработка в среде Delphi Из цикла лекций «Internet-технологии разработки.

Презентация:



Advertisements
Похожие презентации
ДонНУ, кафедра КТ, проф.В.К.Толстых WCF-службы Создание и тестирование.dll-библиотеки WCF-служб Из цикла лекций «Internet-технологии разработки приложений»
Advertisements

Проф. В.К.Толстых, Пример Web-службы Калькулятор с валидацией Из цикла лекций «Internet-технологии разработки приложений» для студентов.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – директивы Из цикла лекций «Технологии разработки Internet-приложений»
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET примеры: динамические таблицы, привязка данных к выпадающему списку.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – пользовательские элементы управления Из цикла лекций.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET примеры: обработка данных форм. работа с формами работа с формами.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET примеры: HtmlControls Из цикла лекций «Технологии разработки Internet-приложений»
ДонНУ, кафедра КТ, проф.В.К.Толстых Технологии разработки Internet- приложений ASP.NET приложения: Безопасность – аутентификация Из цикла лекций «Технологии.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – Модули HTTP, фильтры, события приложения - Global.asax.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – локализация ресурсов приложения Из цикла лекций «Технологии.
Проф. В.К.Толстых, Технологии разработки Internet- приложений Delphi for.NET примеры: работа с файлами Из цикла лекций «Технологии разработки.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – ASP.NET-процесс, пул, домен приложения, компиляция,
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – оптимизация скорости работы приложений Из цикла лекций.
Проф. В.К.Толстых, Технологии разработки Internet- приложений Администрирование IIS 5, 6 сайт, виртуальный каталог, приложение, пул, рабочий.
Проф. В.К.Толстых, Технологии разработки Internet- приложений Архитектура IIS 5, IIS 6, исполняющая среда ASP.NET в IIS 7, конфигурирование.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – обработка ошибок страниц и приложения, Global.aspx.
ДонНУ, кафедра КТ, проф.В.К.Толстых Платформа.NET Widows-приложения в среде Delphi for.NET Из цикла лекций «Internet-технологии разработки приложений»
Проф. В.К.Толстых, Web-службы (Web-сервисы) Введение, протоколы, архитектура, создание Web- служб в среде Visual Studio.NET Из цикла лекций.
Проф. В.К.Толстых, Технологии разработки Internet- приложений ASP.NET приложения – валидация, валидационные элементы управления Из цикла.
Транксрипт:

ДонНУ, кафедра КТ, проф.В.К.Толстых Web-службы (Web-сервисы) введение введение Разработка в среде Delphi Из цикла лекций «Internet-технологии разработки приложений» для студентов 4-го курса кафедры Компьютерных технологий физического факультета Донецкого национального университета

Delphi for.NET Получаем файлы: WebService1.asmx, WebService1.pas, WebService1.bdsproj...

Файл WebService1.asmx Файл содержит только одну строку. Директива WebService указывает на реализацию кода в отдельном файле WebService1.pas языка С#. Указанная страница должна быть скомпилирована (CTRL+F9) в сборку WebServiceApplication1.dll и помещена в папку \bin данной Web-службы. - где содержится описание класса для данной страницы Новый класс TWebService1 в пространстве имен WebService1

Файл WebService1.pas

Компиляция и тестирование Web-службы После компиляции в виртуальном каталоге WebServiceApplication1 Web-сервера должны быть два обязательных «рабочих» файла: WebService1.asmx, bin /WebServiceApplication1.dll Тестирование Web- службы WebService1

Добавление описаний к Web-службе Результат тестирования службы: Ваш уникальный логический идентификатор пространства имен Web-службы. Принято – домен компании / имя службы

Использование Web-служб Клиентами Web-служб могут быть любые приложения – Win32,.NET и другие платформы. Создание клиента Win32 (Delphi 6, 7…) – Project1.exe Добавляем на форму компонент THTTPRIO – аналог прокси-класса (посредник общения с Web-службой)

Создание и добавление WSDL Importer – модуля импорта для удаленного вызова объекта Адрес XML-файла описания службы - WSDL: (параметр WSDL запроса позволяет получить XML-файл WSDL)

Добавлен модуль WebService1.pas Был создан тип объекта для доступа к Web-службе и метод этого объекта

Настройки THTTPRIO1 1.Повторно вставить адрес WSD в свойство WSDLLocation 2.Выбрать единственный параметр TWebService1 в Service 3.Выбрать единственный параметр TWebService1Soap в Port

Обработка щелчка на кнопке «Запрос службы» Создаем объект WS для работы со службой (тип объекта взят из модуля WebSeervice1, убедитесь, что этот модуль подключен к главному модулю в uses) Запуск приложения Project1.exe Приводим объект THTTPRIO1 к типу TWebSdervice1Soap Вызываем метод HelloWorld() Web-службы При первом вызове - через 2 секунды, далее - мгновенно...

Web-служба сложения двух вещественных чисел Добавляем новый метод Add() Описываем новый метод Add() Тестируем Web-службу с новым методом

Использование Web-службы сложения двух вещественных чисел Вызываем метод Add() Web-службы Обновляем (удаляем старый и ставим заново) модуль – WSDL Importer импорта для удаленного вызова объекта «видим» новый метод Add() Изменения модуля Unit1.pas:

Создание клиента.NET (Delphi 8, 2005…) Для создания прокси-класса, в инспекторе объектов щелкнуть правой кнопкой мыши на проекте и выбрать Add Web Reference Подготовить и сохранить внешний вид приложения ProjectAdd

Создание прокси-класса Справочная информация WSDL в формате XML о Web-службе на Описание интерфейса Web-службы в формате XML В папке Web References\ua.edu.donnu.www появляется файл WebService1.pas – исходный код прокси-класса Добавить ссылку в проект Выбрать ссылку на WSDL Web-службы

Исходный код прокси-класса (Web References\ua.edu.donnu.www WebService1.pas) Синхронный способ вызова метода HelloWorld() Создание динамического массива

Исходный код прокси-класса (продолжение) Асинхронный способ вызова метода HelloWorld() Синхронный способ вызова метода Add() Создание динамического массива

Исходный код прокси-класса (продолжение) Асинхронный способ вызова метода Add()

Применение Web-службы Обработчик события щелчка на кнопке: Неоходим объект WS для работы со службой (тип объекта взят из модуля donnu.WebService1) Подключение модуля donnu.WebService1 к главному модулю:

Асинхронный вызов метода Начать асинхронную операцию. Здесь возвращается интерфейса IAsyncResult Остановить приложение, если асинхронная операция еще не завершилась. AsyncWaitHandle - это свойство IAsyncResult Возвращает данные метода Add() Определяет состояние асинхронной операции