Ивлева В.А.

Уфимский государственный авиационный технический университет

Технология генерации web-сервисов на основе HTML-шаблонов

Одной из перспективных идей создания кроссплатформенного реентерабельного программного обеспечения (ПО), поддерживающего индустриальные стандарты открытых систем, является разработка приложений на основе сервис-ориентированной архитектуры. С помощью данного подхода создаются интерактивные web-ориентированные приложения, статические и динамические Интернет-ресурсы, ПО промежуточного уровня для интеграции прежде созданных (унаследованных) программных систем. Один из подходов к созданию web-сервисов предлагает сервер Sybase SQL Anywhere. Web-сервисы создаются как хранимые процедуры средствами языка СУБД WATCOM SQL, что упрощает как разработку приложений, так и администрирование системы в целом.

Для повышения эффективности создания web-сервисов, генерирующих html-страницы, используется технология генерации сервисов на основе html-шаблонов. Данная технология очень похожа на популярные подходы MS Active Server Pages (ASP), Sun Java Script Pages (JSP) и Personal Home Page (PHP). В данных подходах шаблон представляет собой текст web-страницы на html, в который включены специальные теги, распознаваемые web-сервером. Прежде чем отправить html-страницу на клиентский компьютер Web-сервер обрабатывает специальные теги, вызывая при этом соответствующие скрипты, которые могут быть связаны с базами данных (БД) и осуществлять запросы, выбирают информацию, необходимую для отображения html-страницы. Для реализации данный технологии необходим специальный web-сервер, поддерживающий данную технологию (например, MS Internet Information Server (IIS) для ASP, Apachi для PHP), шаблон html-страницы, скрипт, часто содержащий обращение к БД, как на странице, так и нет, библиотека доступа к данным (например, MS ADO) и БД (сервер данных).

Рассмотрим принцип работы данной технологии на примере ASP. Браузер клиента обращается к ресурсу, расположенному на сервере, посылая соответствующий HTTP-запрос. Если запрос был адресован ASP-странице, IIS передает ее на обработку ISAPI-фильтру, который выполняет включенный в состав страницы скрипт и возвращает серверу HTML-страницу. Если скрипт содержит обращение к БД, то происходит связь с сервером БД и извлечение необходимых данных.  Из ASP можно работать с любыми БД, созданными в различных СУБД, например: Access, Excel, FoxPro, Oracle, Microsoft и др. Для этого используют интерфейс ODBC (Open DataBase Connectivity, открытый интерфейс доступа к базам данных) и объектная модель ADO (Active Data Objects), позволяющая обращаться к источнику данных ODBC. Использование интерфейса ODBC предполагает наличие соответствующего драйвера и назначение источника данных. После того, как страница полностью готова, она пересылается запросившему ее клиенту.

На рисунке 1 изображен принцип работы технологии ASP.

 

Рисунок 1

 

Рассмотрим принцип работы технологии генерации сервисов на основе html-шаблонов. Данная технология предполагает, что шаблон html-страницы предварительно обрабатывается процедурой-генератором web-сервисов, которая в качестве результата своей работы выдает текст хранимой процедуры, генерирующей в качестве web-сервиса html-страницу с нужными данными, извлеченными из таблиц БД. Таким образом, для создания подобных систем с сервис-ориентированной  архитектурой требуется всего лишь сервер БД СУБД Sybase Adaptive Server Anywhere и сгенерированная хранимая процедура. Данная СУБД может работать в качестве web-сервера, для которого не требуется никакого промежуточного ПО для генерации html-страниц.

На рисунке 2 изображен принцип работы технологии генерации сервисов на основе html-шаблонов.

 

Рисунок 2

 

Подход к созданию web-приложений на основе html-шаблонов позволяет отделить работу по написанию html-текста шаблона (дизайнерскую часть разработки) от программного кода, связанного с обработкой данных. Таким образом, появляется возможность разделить и распараллелить работу команды разработчиков, привлекая к совместному творчеству дизайнеров и программистов. Дизайнеры и программисты при создании html-шаблонов будут пользоваться различными инструментами разработки html-страниц: дизайнеры используют визуальные html-редакторы с обязательным просмотром создаваемых страниц (растровые и векторные графические редакторы, библиотеки изображений, пиктограмм стилей текста и т.п.); программистам помимо редакторов кода приложения требуется html-редактор, позволяющий быстро и удобно встроить фрагменты программного кода в текст шаблона html-страницы. Обычно для этих целей использует текстовые html-редакторы.