ページの先頭行へ戻る
Interstage Service Integrator V9.5.0 アプリケーション開発ガイド
FUJITSU Software

C.2.1 シーケンス定義の構成

シーケンス定義の構成と指定例は、以下のとおりです。
なお、定義する項目についての詳細は、定義する情報に応じて以下を参照してください。

構成

シーケンス定義の構成を以下に示します。

指定例

<?xml version="1.0" encoding="UTF-8" ?>
<Sequence name="sequence01" logging="false" history="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-sequence.xsd">
    <PropertyList>
        <Property name="com.fujitsu.esi.formatmanager.transSeqID">GYOUMU01</Property>
        <Property name="com.fujitsu.esi.endpoint.outbound2">endpointB</Property>
    </PropertyList>
    <Block>
        <Step name="checkXML" cancel="false" history="false"></Step>
        <ConditionBranch name="ConditionBranchBlock1">
            <Condition name="ConditionBranch1">
                <Step name="formatConversion1" cancel="false" history="false"></Step>
            </Condition>
            <Condition name="ConditionBranch2">
                <Step name="formatConversion2" cancel="false" history="false"></Step>
            </Condition>
            <DefaultCondition>
            </DefaultCondition>
        </ConditionBranch>
        <Step name="SyncServiceCall1" cancel="false" history="false"></Step>
    </Block>
    <StepInformation stepname="checkXML" monitoring="false">
        <MediatorFunction name="XMLValidation">
            <Method type="execute" name="checkXML">
                <ParameterList>
                    <Parameter name="esi.XmlValidation.ESIMessageID" valuetype="esi.header">com.fujitsu.esi.message.id</Parameter>
                    <Parameter name="esi.XmlValidation.in" valuetype="esi.payload">@current</Parameter>
                </ParameterList>
            </Method>
        </MediatorFunction>
    </StepInformation>
    <StepInformation stepname="formatConversion1" monitoring="false">
        <MediatorFunction name="Formatmanager">
            <Method type="execute" name="convertbyTransformationSequenceID">
                <ParameterList>
                    <Parameter name="esi.FormatManager.esiMessageID" valuetype="esi.header">com.fujitsu.esi.message.id</Parameter>
                    <Parameter name="esi.FormatManager.transSeqID" valuetype="direct">GYOUMU01_CNV01</Parameter>
                    <Parameter name="esi.FormatManager.inputData" valuetype="esi.payload">@current</Parameter>
                </ParameterList>
                <Return valuetype="esi.payload"></Return>
            </Method>
        </MediatorFunction>
    </StepInformation>
    <StepInformation stepname="formatConversion2" monitoring="false">
        <MediatorFunction name="Formatmanager">
            <Method type="execute" name="convertbyTransformationSequenceID">
                <ParameterList>
                    <Parameter name="esi.FormatManager.esiMessageID" valuetype="esi.header">com.fujitsu.esi.message.id</Parameter>
                    <Parameter name="esi.FormatManager.transSeqID" valuetype="direct">GYOUMU01_CONV2</Parameter>
                    <Parameter name="esi.FormatManager.inputData" valuetype="esi.payload">@current</Parameter>
                </ParameterList>
                <Return valuetype="esi.payload"></Return>
            </Method>
        </MediatorFunction>
    </StepInformation>
    <StepInformation stepname="SyncServiceCall1" monitoring="false">
        <MediatorFunction name="SyncServiceCall">
            <Method type="execute" name="send">
                <ParameterList>
                    <Parameter name="message" valuetype="esi.esimessage"></Parameter>
                    <Parameter name="endpoint" valuetype="direct">mq_snd_out</Parameter>
                    <Parameter name="use_fault_message">false</Parameter>
                </ParameterList>
                <Return valuetype="esi.header">com.fujitsu.esi.endpoint.outbound</Return>
            </Method>
        </MediatorFunction>
    </StepInformation>
    <ConditionBranchInformation name="ConditionBranchBlock1">
        <DataType>xml</DataType>
        <PositionList>
            <Position name="point">/info/user/@point</Position>
        </PositionList>
        <ConditionInformation name="ConditionBranch1">
            <Description>ゴールド会員の場合</Description>
            <Condition>?point? &gt;= 10000</Condition>
        </ConditionInformation>
        <ConditionInformation name="ConditionBranch2">
            <Description>シルバー会員の場合</Description>
            <Condition>?point? &lt; 10000 AND ?point? &gt;= 5000</Condition>
        </ConditionInformation>
    </ConditionBranchInformation>
</Sequence>

C.2.1.1 プロパティ情報

シーケンスで利用するプロパティを定義します。共通メッセージのヘッダパラメタに独自のプロパティを追加したいときに、プロパティ名(キー名)を指定します。また定数(ダイレクト値)も指定できます。指定したプロパティ情報は、シーケンス上を流れる共通メッセージのヘッダパラメタに設定されます。

C.2.1.2 シーケンスブロック

シーケンスブロックには、メディエータファンクションおよび条件分岐の呼出し順を定義します。エラー時のキャンセル処理の有無も定義します。

呼出し順は、実行ステップ情報のステップ名、条件分岐ブロック名および分岐経路名で指定します。シーケンスブロックと実行ステップ情報、条件分岐ブロックおよび分岐経路の対応関係を以下に示します。