В ходе обработки исходящих запросов адаптер с помощью среды
преобразования данных преобразует данные из
бизнес-объектов WebSphere
Adapter в двоичные форматы данных, такие как XML. Данное преобразование необходимо, поскольку внешние приложения и технологии часто понимают только свои внутренние или стандартные промышленные форматы данных.
Применение среды преобразования данных позволяет пользователям исправить
данный пробел в обмене информацией.
В следующей процедуре описано преобразование данных в ходе
обработки исходящих запросов.
- Оболочка бизнес-объекта (CustomerWrapper или FTPFile), входящая в состав
оболочки бизнес-графика (CustomerWrapperBG или FTPFileBG) заполняется
информацией о протоколе из компонента J2EE. Фактический бизнес-объект
(например, Customer) также в оболочке бизнес-объекта. Оболочка бизнес-объекта и
имя исходящей операции отправляются в качестве ввода с помощью вызова SCA.
- В соответствии со связыванием данных, настроенным в ходе выполнения
мастера поиска служб предприятия, вызывается подходящее связывание данных,
которое получает бизнес-объект WrapperBG.
- Адаптер проверяет аннотацию оболочки бизнес-объекта и
бизнес-объекта Customer. В соответствии с типом содержимого, указанным в
аннотации к бизнес-объекта Customer, вызывается подходящее связывание
данных для содержимого. Преобразование между типом содержимого и вызываемым
связыванием данных для содержимого извлекается из аннотации к оболочке
бизнес-объекта. Если значение типа содержимого или имени связывания данных
для содержимого недопустимо, в среде преобразования данных возникает
ошибка. Ниже приведен пример аннотации для CustomerWrapper и Customer:
<complexType name="CustomerWrapper">
<annotation>
<appinfo source="http://www.ibm.com/xmlns/prod/websphere/
j2ca/datatransformation/databindingmapping"><dtm:DataBindingMapping
xsi:type="dtm:DataBindingMapping" xmlns:xsi="http://www.w3.org/2001/
XMLSchema-instance" xmlns:dtm="http://www.ibm.com/xmlns/prod/
websphere/j2ca/datatransformation/databindingmapping">
<DataBindingConfig xsi:type="dtm:XMLBOSerializerDataBindingMetadata">
<ContentType>text/xml</ContentType>
<DataBindingClass>com.ibm.j2ca.extension.emd.runtime.WBIXMLDataBinding
</DataBindingClass>
</DataBindingConfig>
</dtm:DataBindingMapping>
</appinfo>
</annotation>
...
<complexType name="Customer">
<annotation>
<appinfo source="http://www.ibm.com/xmlns/prod/websphere/j2ca/
datatransformation/databindingmapping">
<dtm:DataTransformationMetadata xmlns:dtm="http://www.ibm.com/
xmlns/prod/websphere/j2ca/datatransformation/databindingmapping">
<ContentType>text/xml</ContentType>
<Charset></Charset>
<WrapperName>http://www.ibm.com/xmlns/prod/websphere/j2ca/
ftp/customerwrapperbg/CustomerWrapperBG</WrapperName>
</dtm:DataTransformationMetadata>
</appinfo>
</annotation>
<sequence maxOccurs="1" minOccurs="1">
<element maxOccurs="1" minOccurs="0" name="CustomerName" type="string"/>
<element maxOccurs="1" minOccurs="0" name="Address" type="string"/>
<element maxOccurs="1" minOccurs="0" name="City" type="string"/>
<element maxOccurs="1" minOccurs="0" name="State" type="string"/>
</sequence>
</complexType>
- Запрос отправляется адаптеру и выполняется исходящая операция.
Адаптер возвращает компоненту приложения J2EE бизнес-объект, представляющий результат
операции.
Сквозная обработка
Сквозная обработка выполняется в том
случае, если преобразование данных не требуется. В ходе сквозной обработки
нестандартное связывание данных, расширяющее UnstructuredContentDataBinding, не
вызывает другие связывания данных.
В следующей процедуре описана сквозная
обработка данных для исходящих запросов.
- Оболочка бизнес-объекта FTPFile, входящая в состав
оболочки бизнес-графика FTPFileBG заполняется
информацией о протоколе из компонента J2EE. В атрибут Content
бизнес-объекта FTPFile добавляется бизнес-объект без структуры. Оболочка
бизнес-объекта и имя исходящей операции отправляются в качестве ввода с помощью
вызова SCA.
- В соответствии со связыванием данных (FTPFileDataBinding), настроенным в ходе выполнения мастера
поиска служб предприятия, вызывается подходящее связывание данных, которое
получает оболочку бизнес-объекта FTPFileBG.
- FTPFileDataBinding реорганизует содержимое в формат без структуры
и выполняет сквозную обработку. Оно создает
FTPFileUnstructuredRecord, задает фактическое содержимое и информацию о
протоколе.
- Бизнес-объект отправляется адаптеру и выполняется исходящая операция.
Вывод исходящей операции представляет собой бизнес-объект, который возвращается
связыванию данных WBIDataBindingImpl и отправляется обратно клиенту J2EE.
Диаграмма обработки исходящих запросов