Перейти к тексту

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

При первом входе в developerWorks для Вас будет создан профиль. Выберите информацию отображаемую в Вашем профиле — скрыть или отобразить поля можно в любой момент.

Вся введенная информация защищена.

  • Закрыть [x]

При первом входе в developerWorks для Вас будет создан профиль и Вам нужно будет выбрать Отображаемое имя. Оно будет выводиться рядом с контентом, опубликованным Вами в developerWorks.

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

Вся введенная информация защищена.

  • Закрыть [x]

Интеграция XML Forms Generator и Data Studio: Часть 2. Поддержка DB2 pureXML в XFG

Визуализация pureXML в XHTML/XForm для параметров pureXML в Data Web Services с поддержкой зарегистрированных XML-схем, соответствующих экземплярам pureXML

Сяо Фэн Чжао, штатный инженер-программист, IBM
Фото Сяо Фэн Чжао
Сяо Фэн Чжао (Xiao Feng Zhao) работает инженером-программистом в Китайском институте перспективных технологий (China Emerging Technology Institute) при лаборатории IBM China Software Development. В частности, он занимается проектами IBM Incubator. В круг его интересов входят технологии Web 2.0, SOA, J2EE и Web. В настоящее время он занимается разработкой примеров для проверки концепции стандартов Ajax и SOA.
Цзян Вон, штатный инженер-программист, IBM
Фото Цзян Вона
Цзян Вон (Qiang Wang) работает техническим руководителем в Китайском институте перспективных технологий (China Emerging Technology Institute) при лаборатории IBM China Software Development. Он занимается проектами IBM Incubator и темами, связанными с SOA. В круг его интересов входят J2EE, SOA, MDA/MDD, AOP, RUP, а также управление проектами. В настоящее время он возглавляет разработку ряда промышленных решений SOA.
Сюзан Малайка, старший инженер, IBM
Сюзан Малайка (Susan Malaika) работает старшим инженером в отделе IBM Information Management Group (часть IBM Software Group). Специализируется на XML, Web и базах данных. Разработала стандарты, поддерживающие данные для сетевых сред на Global Grid Forum. Являясь разработчиком программных продуктов IBM, работает также в качестве интернет-специалиста, аналитика данных и разработчика приложений. Соавтор книги о Web и опубликованных статей по обработке транзакций и XML. Член IBM Academy of Technology.

Описание:  Поддержка pureXML® СУБД IBM® DB2® 9 совершила революцию в управлении данными XML —XML поддерживается как новый тип данных, который, в отличие от реляционных данных, хранится в естественной иерархии. IBM Data Studio может создавать приложения Data Web Services с множеством параметров pureXML для манипулирования экземплярами pureXML в базах данных. Благодаря поддержке pureXML в XML Forms Generator (XFG) данные pureXML можно визуализировать для пользователей, отображая их в формах XForm на базе XHTML. Кроме того, XFG может извлекать соответствующие зарегистрированные XML-схемы экземпляров pureXML и генерировать в целевом приложении XHTML/XForm на базе pureXML информацию о типах и правила проверки. Таким образом, поддержка pureXML в XFG облегчает создание интерфейсов форм для экземпляров XML-документов, хранящихся в pureXML.

Больше статей из этой серии

Дата:  23.04.2010
Уровень сложности:  средний PDF:  A4 and Letter (706KB | 17 страница)Загрузить Adobe® Reader®
Активность:  3150 просмотров
Комментарии:  


pureXML и Data Web Services

Другие статьи этой серии

  • Интеграция XML Forms Generator и Data Studio, часть 1: Начинаем интеграцию с создания приложения

Ушли в прошлое те дни, когда данные XML хранились в виде CLOB или «шинковались» в реляционные таблицы. Поддержка pureXML в СУБД IBM DB2 9 совершила революцию в управлении данными XML, которые теперь рассматриваются как новый тип данных, хранящийся не в реляционном виде, а в естественной иерархии. Беспрепятственная интеграция XML с реляционными данными, свойственная pureXML, ускоряет разработку приложений, повышает скорость поиска благодаря высокооптимизированным индексам XML и обеспечивает гибкость, позволяя использовать для запросов XML-данных как SQL, так и XQuery. XML-данные, хранящиеся в pureXML, можно представить в качестве Web-сервисов посредством механизма Data Web Service. (См. часть 1 этой серии.)

Как работает поддержка pureXML в XFG

Сокращения

  • CLOB: Character Large Object
  • SOAP: Simple Object Access Protocol
  • UI: User interface
  • WSDL: Web Services Description Language
  • XHTML: Extensible Hypertext Markup Language
  • XML: Extensible Markup Language

Первое, что мы сделаем, - создадим мини-приложение pureXML на базе таблицы, определенной в DB2, чтобы шаг за шагом проиллюстрировать поддержку pureXML в XFG. Структура таблицы показана в табл.1 Предварительно вставим пример записи в виде эталонных экземпляров pureXML, в которых столбец XML1 не связан ни с какой схемой, а столбец XML2 связан с зарегистрированной схемой Express, как показано в листинге 1. Примечание: Эталонный экземпляр pureXML - это шаблон XML, используемый для генерации XHTML/XForm в XFG; как мы знаем, XFG может генерировать формы как из XML, так и из WSDL.


Таблица 1. Обзор структуры таблицы
Пример таблицы DB2 со столбцами, связанными с зарегистрированной схемой Express и не связанными ни с какой схемой

Листинг 1. Схема Express
Схема Express

Создание Data Web Services

Создав таблицу в базе данных DB2, воспользуемся Data Studio, чтобы создать файл SQL с оператором SQL:

INSERT INTO XFGDEMO (ID, NAME, XML1, XML2) VALUES (:id, :name, :purexml1, :purexml2)

Теперь создадим Data Web Services. За описанием процесса создания Data Web Services из файла SQL обращайтесь к разделу Ресурсы. Создав пример Web-сервиса, сгенерируйте файл WSDL с именем insertRecord.wsdl, который будет выглядеть как файл в листинге 2. В сгенерированном файле WSDL видны два параметра pureXML: PUREXML1 и PUREXML1. Эти два поля pureXML связаны с xsd:anyType, и на следующих шагах мы воспользуемся XFG для их визуализации в фрагменты формы XHTML/XForm.


Листинг 2. Параметры pureXML в файле WSDL
Параметры pureXML в файле WSDL

Генерация приложения XHTML/XForms

Создав и установив Data Web Services из Data Studio, можно воспользоваться XFG для генерации XHTML/XForms и соответствующих файлов XML для связи с сервисами.

Выберите файл insertPatient.wsdl, щелкните правой кнопкой на файле WSDL и выберите мастер Generate XHTML/XForms из меню XForms Generator. На рисунке 1 показан первый шаг мастера:


Рисунок 1. Первый шаг с использованием мастера XFG
Конфигурирование генератора на первом шаге мастера XFG

Генерирование информации валидации

В XFG можно наложить на поля pureXML дополнительные ограничения валидации. Выбрав опцию Generate validation information (сгенерировать информацию валидации), вы увидите страницу мастера редактора валидации для настройки дополнительных правил валидации на следующих шагах.

Извлечение экземпляра pureXML из базы данных

XFG поддерживает два способа визуализации полей pureXML в WSDL. Один состоит в использовании экземпляра pureXML в локальной файловой системе и чтении схемы связывания из локальной файловой системы. Другой заключается в использовании экземпляра pureXML в базе данных и извлечении зарегистрированной схемы из XML Schema Repository (XSR). Если установить флажок Retrieve PureXML instance from Database, можно использовать обе опции; в противном случае можно использовать только схему из файловой системы. Установите флажок. Нажмите кнопку Next.

На следующем экране выберите операцию insertRecord и нажмите Next. Вы увидите страницу мастера Configure PureXML, как на рисунке 2. Здесь XFG распознает все параметры pureXML. Нужно указать экземпляры pureXML в качестве эталонных, чтобы сгенерировать визуализированную форму XHTML/XForm, а затем извлечь экземпляры pureXML из базы данных. Заметьте, что эталонный экземпляр pureXML PUREXML1 не связан ни с одной схемой, а PUREXML2 связан с зарегистрированной схемой, как в листинге 1.


Рисунок 2. Страница мастера настройки PureXML
Страница мастера настройки PureXML

Нажмите Next; появится экран Validation Editor. Здесь нможно добавить правила валидации для PUREXML1, который не связан ни с какой схемой.


Рисунок 3. Редактор валидации
Редактор валидации с правилами

Пройдите мастер и в конце нажмите кнопку Finish, чтобы сгенерировать XHTML/XForms. Будет сгенерирован XHTML-файл insertRecord.xhtml. На рисунке 4 показана сгенерированная форма. (См. увеличенную версию рис.4):


Рисунок 4. Сгенерированная форма XHTML/XForm, отображаемая в Firefox
Сгенерированная форма XHTML/XForm, отображаемая в Firefox

Анализ

В фрагментах XHTML сгенерированной формы (Листинг 3) видны два тега fieldset. Каждый тег сгенерирован из указанного экземпляра базы данных и соответствует параметру pureXML из файла WSDL (листинг 2).


Листинг 3. Фрагменты pureXML XForm
Фрагменты pureXML XForm

XFG генерирует информацию связывания (листинг 4) для зарегистрированной схемы (схема представлена в листинге 1).


Листинг 4. Информация связывания pureXML, сгенерированная из зарегистрированной схемы
Информация связывания pureXML, сгенерированная из зарегистрированной схемы

В свою очередь XFG тоже генерирует информацию связывания (листинг 5) для правил валидации PUREXML1, которые вы установили в мастере.


Листинг 5. Информация связывания pureXML, сгенерированная из правил валидации
Информация связывания pureXML, сгенерированная из правил валидации

Объединение нескольких моделей для передачи

В сгенерированной форме XHTML/XForm присутствуют три модели XForm:

  • Первая - это глобальная модель, соответствующая операции WSDL insertRecord. Эта модель содержит всего четыре элемента: ID, NAME, PUREXML1, PUREXML2. Элементы соответствуют четырем именам параметров из Data Web Services.
  • Вторая и третья модели – это модели pureXML для параметров PUREXML1 и PUREXML2, извлеченных из базы данных или локальной файловой системы. Все изменения данных в двух наборах полей pureXML из XHTML/XForm применяются к этим двум моделям.

Перед передачей в Data Web Services XFG объединяет эти две модели pureXML в первую глобальную модель XForm с использованием сгенерированного клиентского сценария в XHTML, как в листинге 6. Этот сценарий выполняется на стороне клиента как часть формы XHTML при передаче формы.


Листинг 6. Сценарий слияния XHTML
Сценарий слияния моделей XHTML

Объединенная модель данных (Листинг 7) - это полное сообщение SOAP, которое клиент передает непосредственно Web-сервису для вставки в таблицу новой записи с использованием данных из формы.


Листинг 7. Объединенная модель
Объединенная модель

Заключение

В этой статье мы кратко описали поддержку DB2 pureXML в XFG. Благодаря поддержке pureXML в XML Forms Generator (XFG) можно визуализировать pureXML для пользователей в формах XForm на базе XHTML. Кроме того, средствами XFG можно извлекать соответствующие зарегистрированные XML-схемы из экземпляров pureXML и генерировать информацию о типах. Можно также извлекать условия валидации и добавлять их к целевым формам pureXML XHTML/XForms. Очевидно, что поддержка pureXML в XFG облегчает создание интерфейсов форм для экземпляров XML, хранящихся в pureXML. В этой серии статей мы рассказали об XForms, XFG, Data Studio, Web-сервисах и поддержке функции pureXML. Благодаря этим двум статьям вы сможете легко приступить к использованию XFG для генерации работающих XHTML/XForms-интерфейсов пользователя для серверных служб Data Services, создавая тем самым законченные информационные решения.



Загрузка

ОписаниеИмяРазмерМетод загрузки
Пример кода для листинга 1 из статьиListing1.zip1 КБHTTP

Информация о методах загрузки


Ресурсы

Научиться

Получить продукты и технологии

  • DB2 Express-C: загрузите бесплатную ознакомительную версию сервера баз данных DB2 Express 9.(EN)

  • DB2 for Linux™, UNIX™ и Windows.: загрузите бесплатную ознакомительную версию интерактивного сервера данных, который сочетает высокую производительность и простоту эксплуатации DB2 с преимуществами самоописания XML. (EN)

  • XML Forms Generator/Data Studio на alphaWorks: загрузите основанный на стандартах, управляемый данными плагин Eclipse, который генерирует работоспособные формы со встроенной разметкой XForms внутри документа XHTML из экземпляра XML-данных или документа WSDL.(EN)

  • IBM Data Studio: загрузите бесплатную пробную версию интегрированной среды разработки баз данных, которая ускоряет создание приложений, их разработку и развертывание, повышая эффективность и производительность доступа к данным.(EN)

  • Ознакомительные версии продуктов IBM: используйте в своей следующей разработке ознакомительные версии программных продуктов IBM, которые можно загрузить непосредственно с developerWorks, включая инструменты разработки приложений и промежуточное ПО от DB2®, Lotus®, Rational®, Tivoli® и WebSphere®

Обсудить

Об авторах

Фото Сяо Фэн Чжао

Сяо Фэн Чжао (Xiao Feng Zhao) работает инженером-программистом в Китайском институте перспективных технологий (China Emerging Technology Institute) при лаборатории IBM China Software Development. В частности, он занимается проектами IBM Incubator. В круг его интересов входят технологии Web 2.0, SOA, J2EE и Web. В настоящее время он занимается разработкой примеров для проверки концепции стандартов Ajax и SOA.

Фото Цзян Вона

Цзян Вон (Qiang Wang) работает техническим руководителем в Китайском институте перспективных технологий (China Emerging Technology Institute) при лаборатории IBM China Software Development. Он занимается проектами IBM Incubator и темами, связанными с SOA. В круг его интересов входят J2EE, SOA, MDA/MDD, AOP, RUP, а также управление проектами. В настоящее время он возглавляет разработку ряда промышленных решений SOA.

Сюзан Малайка (Susan Malaika) работает старшим инженером в отделе IBM Information Management Group (часть IBM Software Group). Специализируется на XML, Web и базах данных. Разработала стандарты, поддерживающие данные для сетевых сред на Global Grid Forum. Являясь разработчиком программных продуктов IBM, работает также в качестве интернет-специалиста, аналитика данных и разработчика приложений. Соавтор книги о Web и опубликованных статей по обработке транзакций и XML. Член IBM Academy of Technology.

Помощь по сообщениям о нарушениях

Сообщение о нарушениях

Спасибо. Эта запись была помечена для модератора.


Помощь по сообщениям о нарушениях

Сообщение о нарушениях

Сообщение о нарушении не было отправлено. Попробуйте, пожалуйста, позже.


developerWorks: вход


Нужен IBM ID?
Забыли Ваш IBM ID?


Забыли Ваш пароль?
Изменить пароль

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


При первом входе в developerWorks для Вас будет создан профиль. Выберите информацию отображаемую в Вашем профиле — скрыть или отобразить поля можно в любой момент.

Выберите ваше отображаемое имя

При первом входе в developerWorks для Вас будет создан профиль и Вам нужно будет выбрать Отображаемое имя. Оно будет выводиться рядом с контентом, опубликованным Вами в developerWorks.

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

(Должно содержать от 3 до 31 символа.)


Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Оценить эту статью

Комментарии

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=XML, Information Management
ArticleID=485216
ArticleTitle=Интеграция XML Forms Generator и Data Studio: Часть 2. Поддержка DB2 pureXML в XFG
publish-date=04232010
author1-email=zhaoxfbj@cn.ibm.com
author1-email-cc=dwxed@us.ibm.com
author2-email=wangq@cn.ibm.com
author2-email-cc=
author3-email=malaika@us.ibm.com
author3-email-cc=

Теги

Help
Используйте форму поиска, чтобы найти любой контент с данным тегом в My developerWorks. Используйте ползунок, чтобы отразить больше или меньше тегов.

КнопкаПопулярные теги отображает самые распространенные теги для данной области контента (например: Java, Linux, WebSphere).

Кнопка Мои теги отображает Ваши теги для данной области контента (например: Java, Linux, WebSphere).

Используйте форму поиска, чтобы найти любой контент с данным тегом в My developerWorks. Кнопка Популярные теги отображает самые распространенные теги для данной области контента (например: Java, Linux, WebSphere). Кнопка Мои теги отображает Ваши теги для данной области контента (например: Java, Linux, WebSphere).