Среда преобразования данных

В ходе обработки входящих событий среда преобразования данных преобразует информацию из событий в бизнес-объекты WebSphere Adapter. Такое преобразование необходимо, поскольку компоненты сервера WebSphere Process Server поддерживают только бизнес-объекты WebSphere Adapter.

В следующей процедуре показано, каким образом выполняется преобразование данных в ходе обработки входящих событий.
  1. Из файла событий последовательно выбираются все бизнес-объекты в соответствии со свойством SplitCriteria, которое содержит ограничитель, применяемый для разделения бизнес-объектов в файле.
  2. В свойствах DefaultObjectName и EventContentType из ActivationSpec указываются значения свойств objectName и contentType бизнес-объекта.

    Имя бизнес-объекта может совпадать с именем шаблона оболочки бизнес-графика (например, FTPFileBG) или именем оболочки бизнес-графика содержимого (например, SalesOrderWrapperBG). Для свойства EventContentType должно быть указано допустимое значение.

  3. Информация о протоколе, такая как имя файла событий и имя каталога, задается в бизнес-объекте.
  4. Бизнес-объект отправляется селектору функций, который вызывает указанное связывание данных.
  5. Бизнес-объект содержимого задается в оболочке бизнес-объекта. Информация о протоколе, такая как имя каталога и имя файла, задается в оболочке. Оболочка задается в бизнес-графике и отправляется в конечную точку. Ниже приведен пример аннотации для бизнес-объектов SalesorderWrapper и SalesOrder.
    <complexType name=" SalesorderWrapper ">
    <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="FTPFile">
    <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=" SalesOrder ">
    <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/
    salesorderwrapperbg/SalesOrderWrapperBG</WrapperName>
    </dtm:DataTransformationMetadata>
    </appinfo>
    </annotation>
    	<xs:complexContent>
    		<xs:sequence minOccurs="1" maxOccurs="1">
    			<xs:element name="Id" type="xs:integer"/>
    			<xs:element name="Priority" type="xs:integer" default="3"/>
    			<xs:element name="Item" 
    				xmlns:child="http://... " 
    				type="child:OrderLineItem" minOccurs="0"/>
    		</xs:sequence>
    	</xs:complexContent>
    </xs:complexType>
текст

Диаграмма преобразования данных для входящих событий

Сквозная обработка

Сквозная обработка выполняется в том случае, если преобразование данных не требуется.
В следующей процедуре показано, каким образом выполняется сквозная обработка данных для входящих событий.
  1. Из файла событий последовательно выбираются все бизнес-объекты в соответствии с указанным свойством разбиения. В свойствах DefaultObjectName и EventContentType из ActivationSpec указываются имя записи и тип содержимого из бизнес-объекта без структуры. В качестве имени объекта по умолчанию должно быть указано имя шаблона оболочки бизнес-графика, например, FTPFileBG.
  2. Информация о протоколе, такая как имя файла событий и имя каталога, задается в бизнес-объекте без структуры. Кроме того, указывается способ обработки и наличие файла фрагментации в случае сквозной обработки.
    • В случае обработки FilePassByReference в качестве имени каталога указывается локальный каталог архива, а к имени файла событий добавляется системное время.
    • В случае обработки с фрагментацией в качестве имени каталога указывается локальный каталог архива, а имя файла представляет файл событий. В свойстве ChunkInfo содержится информация о фрагментах.
    • В случае обычной сквозной обработки в качестве имени каталога указывается локальный каталог архива, а имя файла представляет файл событий.
  3. Если свойство EventContentType недопустимо, содержит значение null или не содержит соответствующую запись в аннотации к преобразованию связывания данных оболочки, то для входящего сценария применяется сквозная обработка. Если свойство DefaultObjectName не задано, в нем указывается имя шаблона оболочки бизнес-графика, например, FTPFileBG.
  4. Бизнес-объект FTPFileUnstructuredRecord отправляется селектору функций, который создает экземпляр оболочки и проверяет аннотацию к преобразованию связывания данных для комбинаций свойств contentType и DataBinding. Такой подход позволяет селектору функций выполнить предварительный анализ в соответствии с типом содержимого входящего бизнес-объекта FTPFileUnstructuredRecord. Если подходящее связывание данных отсутствует (например, свойство contentType недопустимо, содержит значение null, не содержит запись в преобразовании связывания данных или вызванному связыванию данных не удалось найти бизнес-объект), создается экземпляр бизнес-объекта без структуры содержимого без вызова связывания данных для содержимого.
  5. Оболочка бизнес-объекта FTPFile задается в соответствии с информацией о протоколе, а бизнес-объект UnstructuredContent задается в бизнес-объекте FTPFile.
  6. Оболочка бизнес-объекта FTPFile задается в бизнес-объекте и отправляется в конечную точку.
текст

Диаграмма сквозной обработки входящих событий


Условия использования |


(c) Copyright IBM Corporation 2005, 2006.
Справочная система Information Center создана с использованием технологии Eclipse (http://www.eclipse.org)