Struktura transformacji danych

Podczas przetwarzania danych przychodzących struktura transformacji danych przekształca dane zdarzenia w obiekt biznesowy produktu WebSphere Adapter. Jest to konieczne, ponieważ komponenty serwera WebSphere Process Server używają tylko obiektów biznesowych produktu WebSphere Adapter.

W poniższych krokach opisano transformację danych wykonywaną podczas przetwarzania danych przychodzących:
  1. Każdy obiekt biznesowy jest wybierany z pliku zdarzeń na podstawie właściwości SplitCriteria, która zawiera separator używany do oddzielania obiektów biznesowych znajdujących się w pliku zdarzeń.
  2. Właściwości DefaultObjectName i EventContentType specyfikacji aktywowania ActivationSpec są ustawiane zgodnie z odpowiednimi wartościami objectName i contentType w obiekcie biznesowym.

    Nazwą obiektu biznesowego może być nazwa ogólnego opakowującego wykresu biznesowego (na przykład FTPFileBG) lub nazwa opakowującego wykresu biznesowego specyficznego dla treści (na przykład SalesOrderWrapperBG). Właściwość EventContentType musi mieć ustawioną poprawną wartość.

  3. Informacje specyficzne dla protokołu, takie jak nazwa pliku zdarzeń i nazwa katalogu, są ustawiane w obiekcie biznesowym.
  4. Obiekt biznesowy jest wysyłany do selektora funkcji, który wywołuje określone wiązanie danych.
  5. Obiekt biznesowy specyficzny dla treści jest ustawiany na opakowujący obiekt biznesowy. Informacje specyficzne dla protokołu, takie jak nazwa katalogu i nazwa pliku, są ustawiane w opakowaniu. Opakowanie jest ustawiane w wykresie biznesowym i wysyłane do punktu końcowego. Przykład adnotacji dla obiektów biznesowych SalesorderWrapper i SalesOrder znajduje się poniżej.
    <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>
Opis tego obrazu można znaleźć w tekście otaczającym.

Diagram przetwarzania transformacji danych przychodzących

Przetwarzanie tranzytowe

Przetwarzanie tranzytowe ma miejsce wtedy, gdy nie jest wykonywana transformacja danych.
W poniższych krokach opisano tranzyt danych wykonywany podczas przetwarzania danych przychodzących:
  1. Każdy obiekt biznesowy jest pobierany z pliku zdarzeń na podstawie określonych kryteriów podziału. Właściwości DefaultObjectName i EventContentType zawarte w specyfikacji aktywowania ActivationSpec są ustawiane zgodnie z odpowiednią nazwą rekordu i typem treści zawartymi w nieustrukturyzowanym obiekcie biznesowym. Domyślna nazwa obiektu musi być ustawiona na nazwę ogólnego opakowującego wykresu biznesowego (na przykład: FTPFileBG).
  2. Informacje specyficzne dla protokołu, takie jak nazwa pliku zdarzeń i nazwa katalogu, są ustawiane w nieustrukturyzowanym obiekcie biznesowym. Jest także wskazane, czy funkcja tranzytu dzieli plik na porcje, przekazuje plik przez referencję (ma ustawiony atrybut FilePassByReference) lub ma ustawioną domyślną wartość 1.
    • W przypadku przetwarzania z przekazywaniem pliku przez referencję (atrybut FilePassByReference) nazwa katalogu jest zgodna z nazwą lokalnego katalogu archiwum, a do nazwy pliku zdarzeń jest dodawany znacznik czasu.
    • W przypadku przetwarzania z dzieleniem pliku na porcje nazwa katalogu jest zgodna z nazwą lokalnego katalogu archiwum, a nazwa pliku reprezentuje plik zdarzeń. Właściwość ChunkInfo reprezentuje szczegóły dotyczące porcji.
    • W przypadku normalnego przetwarzania tranzytowego nazwa katalogu jest zgodna z nazwą lokalnego katalogu archiwum, a nazwa pliku reprezentuje plik zdarzeń.
  3. Jeśli właściwość EventContentType jest ustawiona na wartość NULL lub jest niepoprawna albo nie zawiera zgodnego wpisu w adnotacji odwzorowania wiązania danych opakowania, to dane przychodzące są przetwarzane przy użyciu funkcji tranzytu. W podobnym przypadku właściwość DefaultObjectName jest ustawiana na nazwę ogólnego opakowującego wykresu biznesowego (na przykład FTPFileBG).
  4. Obiekt biznesowy FTPFileUnstructuredRecord jest wysyłany do selektora funkcji, który tworzy instancję opakowania i sprawdza adnotację odwzorowania wiązania danych dla kombinacji właściwości contentType i DataBinding. Dzięki temu w selektorze funkcji może zostać wykonana wstępna analiza na podstawie typu treści przychodzącego obiektu biznesowego FTPFileUnstructuredRecord. Jeśli nie jest zdefiniowane żadne zgodne wiązanie danych (na przykład właściwość contentType ma wartość NULL, ma wartość niepoprawną lub nie zawiera wpisu w odwzorowaniu wiązania danych) albo nie można przetłumaczyć wywołanego wiązania danych na obiekt biznesowy, to nie jest wywoływane żadne specyficzne dla treści wiązanie danych i jest tworzona instancja nieustrukturyzowanego obiektu biznesowego treści.
  5. W opakowującym obiekcie biznesowym FTPFile są ustawiane informacje specyficzne dla protokołu, a obiekt biznesowy UnstructuredContent jest ustawiany w obiekcie biznesowym FTPFile.
  6. Opakowujący obiekt biznesowy FTPFile jest ustawiany w obiekcie biznesowym FTPFileBG, a następnie jest wysyłany do punktu końcowego.
Opis tego obrazu można znaleźć w tekście otaczającym.

Diagram tranzytowego przetwarzania danych przychodzących


Warunki używania |


(c) Copyright IBM Corporation 2005, 2006.
To Centrum informacyjne jest oparte na technologii Eclipse (http://www.eclipse.org)