Я разместил полный набор демонстраций для SOAP на CodeCentral как элемент 28789 .
Они содержат все демоверсии SOAP эпохи Delphi 2007 из WebServices
папки, которая теперь обновлена для Delphi XE и XE2, включая преобразование старых серверов WAD в новые серверы INDY VCL. Вы могли бы подумать, что это было впечатляюще, но это не так. Это действительно легко. Просто используйте мастер для создания нового проекта, а затем добавьте в проект интерфейс веб-службы и модули реализации, а также любые другие модули, принадлежащие старой демоверсии. Как только они добавлены в проект, они просто работают. Базовые демонстрационные SOAP-серверы действительно легко построить в Delphi, когда у вас будет работающая демоверсия, вы обнаружите, что ее довольно легко модифицировать и расширять.
Демонстрация, которая лучше всего отвечает на вопрос, который я задал выше, находится в SOAPDataModule
подпапке.
Основные проблемы с демо с эры 2007 года:
WAD (отладчик веб-приложений) исчез. Вы должны создать новый сервер, используя сервер Indy, для оптимальных демонстрационных целей, избавляя вас от использования WAD (который ушел) или настройки среды ISAPI под IIS, что вряд ли идеально для демонстрационных целей. Новый демонстрационный проект, который я сделал, называется SoapDMServerINDY и состоит из модуля данных (datamod_u.pas), модуля пользовательского интерфейса в форме VCL ( IndyServerVCLFormUnit.pas
) и веб-модуля Indy Server, который называется IndyServerWebModule.pas
.
Демо-версия Delphi 2007 прервалась благодаря новой практике использования подпапки Debug / Win32, в которой находится исполняемый файл демо-версии, вам нужно идти дальше. Я исправил демонстрационный сервер так, что он предупреждает вас сообщением об ошибке, если файлы данных не могут быть найдены, избавляя вас от загадочной «ошибки синтаксического анализа XML». Я также добавил некоторые проверки ошибок в некоторых демо-версиях, чтобы сообщить вам, что вам нужно установить interbase, чтобы эта демоверсия работала, поскольку для некоторых демоверсий требуется, чтобы Interbase был установлен и запущен, а для другого необходим псевдоним IBLOCAL, и предпочтительно стол, призванный EMPLOYEE
существовать.
Элементами этой демонстрации являются сервер ( SoapDMServerINDY , основанный на коде из SOAPDMServerWAD) и клиент SOAPDMClient, который подключается к демонстрационной версии и имеет две страницы, на одной странице будет показан доступ к основным данным через удаленное взаимодействие DBGrid +, а вторая На странице показано, как вызвать пользовательский метод SOAP.
Чтобы использовать демо: Вам нужно запустить сервер, нажать кнопку «Пуск», затем запустить клиент и нажать «Подключиться».