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

C.1.9 キュー間転送の定義

キュー間転送機能を利用した非同期メッセージの送信/受信を行う場合、サービスエンドポイント定義に、キュー間転送で必要な情報を定義します。

キュー間転送の定義には、以下の種類があります。

C.1.9.1 受信

インバウンドサービスエンドポイント定義の指定例は、以下のとおりです。

指定例

サービスエンドポイント定義

サービスエンドポイント定義:endpoint.xml(ペイロードを受信する場合)
<?xml version="1.0" encoding="UTF-8" ?>
<EndpointList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-endpoint.xsd">
    <Endpoint name="endpoint01" sync="false">
        <ServiceName>quecntsndservice01</ServiceName>
        <QueueName>OutboundQueue01</QueueName>
    </Endpoint>
</EndpointList>
表C.33 定義項目

キー名

説明

指定例

Endpoint

name

サービスエンドポイント名を指定します。

endpoint01

sync

サービスエンドポイントの同期タイプ“false”(非同期通信)を指定します。

false

ServiceName

サービス名を指定します。サービス情報に指定したサービス名を指定してください。

quecntsndservice01

QueueName

キュー名を指定します。ISIシステム内のキュー名を指定してください。

OutboundQueue01

サービスエンドポイント定義:endpoint.xml(共通メッセージを受信する場合)
<?xml version="1.0" encoding="UTF-8" ?>
<EndpointList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-endpoint.xsd">
    <Endpoint name="endpoint01" sync="false">
        <ServiceName>quecntsndservice02</ServiceName>
        <QueueName>OutboundQueue01</QueueName>
        <ApisideQueueName>InboundQueue02</ApisideQueueName>
    </Endpoint>
</EndpointList>
表C.34 定義項目

キー名

説明

指定例

Endpoint

name

サービスエンドポイント名を指定します。

endpoint01

sync

サービスエンドポイントの同期タイプ“false”(非同期通信)を指定します。

false

ServiceName

サービス名を指定します。サービス情報に指定したサービス名を指定してください。

quecntsndservice02

QueueName

キュー名を指定します。ISIシステム内のキュー名を指定してください。

OutboundQueue02

ApisideQueueName

キュー名を指定します。サービス提供側のアプリケーションにあるキュー名を指定してください。

InboundQueue02

注意

キュー間転送機能を利用して接続する2つのキュー名を統一してください。
キュー名を統一した場合は、統一したキュー名を、“QueueName”に指定してください。キュー名を統一できない場合は、ISIサーバ側にあるキュー名を“QueueName”に、サービス提供側のアプリケーションにあるキュー名を“ApisideQueueName”に指定してください。

サービス情報

サービス情報:quecntsndservice01.xml(ペイロードのサービス情報)
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="quecntsndservice01" type="QUECONNECTED" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="quecnt.messageType">payload</Property>
        <Property name="jmsr.messageAccumulate">true</Property>
    </PropertyList>
</Service>
表C.35 定義項目

キー名

説明

指定例

Service

name

サービス名を指定します。

quecntsndservice01

type

サービスのタイプ“QUECONNECTED”を指定します。

QUECONNECTED

Property

quecnt.messageType

メッセージの種別“payload”を指定します。

payload

jmsr.messageAccumulate

メッセージを蓄積するかどうかを指定します。

  • true:蓄積する(デフォルト)

  • false:蓄積しない

true

サービス情報:quecntsndservice02.xml(共通メッセージのサービス情報)
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="quecntrcvservice02" type="QUECONNECTED" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="quecnt.messageType">common</Property>
        <Property name="quecnt.queueType">JMS-R</Property>
        <Property name="jmsr.messageAccumulate">true</Property>
        <Property name="jmsr.wait.time">1000</Property>
    </PropertyList>
</Service>
表C.36 定義項目

キー名

説明

指定例

Service

name

サービス名を指定します。

quecntsndservice02

type

サービスのタイプ“QUECONNECTED”を指定します。

QUECONNECTED

Property

quecnt.messageType

メッセージの種別“common”を指定します。

common

quecnt.queueType

サービス利用側のアプリケーション、またはサービス提供側のアプリケーションにあるキューの種別を指定します。
以下のどちらかを指定してください。

  • JMS-R(デフォルト)

  • JMS

JMS-R

jmsr.messageAccumulate

メッセージを蓄積するかどうかを指定します。

  • true:蓄積する(デフォルト)

  • false:蓄積しない

true

jmsr.wait.time

キューにメッセージが格納されるまで待機する時間をミリ秒で指定します。
0~65535の範囲の整数を指定してください。
デフォルトは、“0”です。

1000

C.1.9.2 送信

アウトバウンドサービスエンドポイント定義の指定例は、以下のとおりです。

指定例

サービスエンドポイント定義

サービスエンドポイント定義:endpoint.xml(ペイロードを送信する場合)
<?xml version="1.0" encoding="UTF-8" ?>
<EndpointList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-endpoint.xsd">
    <Endpoint name="endpoint01" sync="false">
        <SequenceName>sequence01</SequenceName>
        <ServiceName>quecntrcvservice01</ServiceName>
        <QueueName>InboundQueue01</QueueName>
    </Endpoint>
</EndpointList>
表C.37 定義項目

キー名

説明

指定例

Endpoint

name

サービスエンドポイント名を指定します。

endpoint01

sync

サービスエンドポイントの同期タイプ“false”(非同期通信)を指定します。

false

SequenceName

シーケンス名を指定します。シーケンス定義に指定したシーケンス名を指定してください。

sequence01

ServiceName

サービス名を指定します。サービス情報に指定したサービス名を指定してください。

quecntrcvservice01

QueueName

キュー名を指定します。ISIシステム内のキュー名を指定してください。

InboundQueue01

サービスエンドポイント定義:endpoint.xml(共通メッセージを送信する場合)
<?xml version="1.0" encoding="UTF-8" ?>
<EndpointList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-endpoint.xsd">
    <Endpoint name="endpoint01" sync="false">
        <SequenceName>sequence01</SequenceName>
        <ServiceName>quecntrcvservice02</ServiceName>
        <QueueName>InboundQueue02</QueueName>
        <ApisideQueueName>OutboundQueue02</ApisideQueueName>
    </Endpoint>
</EndpointList>
表C.38 定義項目

キー名

説明

指定例

Endpoint

name

サービスエンドポイント名を指定します。

endpoint01

sync

サービスエンドポイントの同期タイプ“false”(非同期通信)を指定します。

false

SequenceName

シーケンス名を指定します。シーケンス定義に指定したシーケンス名を指定してください。

sequence01

ServiceName

サービス名を指定します。サービス情報に指定したサービス名を指定してください。

quecntrcvservice02

QueueName

キュー名を指定します。ISIシステム内のキュー名を指定してください。

InboundQueue02

ApisideQueueName

キュー名を指定します。サービス利用側のアプリケーションにあるキュー名を指定してください。

OutboundQueue02

注意

キュー間転送機能を利用して接続する2つのキュー名を統一してください。
キュー名を統一した場合は、統一したキュー名を、“QueueName”に指定してください。キュー名を統一できない場合は、ISIサーバ側にあるキュー名を“QueueName”に、サービス利用側のアプリケーションにあるキュー名を“ApisideQueueName”に指定してください。

サービス情報

サービス情報:quecntrcvservice01.xml(ペイロードのサービス情報)
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="quecntrcvservice01" type="QUECONNECTED" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="quecnt.messageType">payload</Property>
        <Property name="jmsr.messageAccumulate">true</Property>
    </PropertyList>
</Service>
表C.39 定義項目

キー名

説明

指定例

Service

name

サービス名を指定します。

quecntrcvservice01

type

サービスのタイプ“QUECONNECTED”を指定します。

QUECONNECTED

Property

quecnt.messageType

メッセージの種別“payload”を指定します。

payload

jmsr.messageAccumulate

メッセージを蓄積するかどうかを指定します。

  • true:蓄積する(デフォルト)

  • false:蓄積しない

true

サービス情報:quecntrcvservice02.xml(共通メッセージのサービス情報)
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="quecntrcvservice02" type="QUECONNECTED" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="quecnt.messageType">common</Property>
        <Property name="quecnt.queueType">JMS-R</Property>
        <Property name="jmsr.messageAccumulate">true</Property>
    </PropertyList>
</Service>
表C.40 定義項目

キー名

説明

指定例

Service

name

サービス名を指定します。

quecntrcvservice02

type

サービスのタイプ“QUECONNECTED”を指定します。

QUECONNECTED

Property

quecnt.messageType

メッセージの種別“common”を指定します。

common

quecnt.queueType

サービス利用側のアプリケーション、またはサービス提供側のアプリケーションにあるキューの種別を指定します。
以下のどちらかを指定してください。

  • JMS-R(デフォルト)

  • JMS

JMS-R

jmsr.messageAccumulate

メッセージを蓄積するかどうかを指定します。

  • true:蓄積する(デフォルト)

  • false:蓄積しない

true

C.1.9.3 ISI同士のキュー間転送

ISIサーバ間のサービスエンドポイント定義の指定例は、以下のとおりです。

指定例

サービスエンドポイント定義

サービスエンドポイント定義:endpoint.xml
<?xml version="1.0" encoding="UTF-8" ?>
<EndpointList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-endpoint.xsd">
    <Endpoint name="endpoint01" sync="false">
        <SequenceName>sequence01</SequenceName>
        <ServiceName>quecntisiservice01</ServiceName>
        <QueueName>OutboundQueue01</QueueName>
        <ApisideQueueName>InboundQueue01</ApisideQueueName>
    </Endpoint>
</EndpointList>
表C.41 定義項目

キー名

説明

指定例

Endpoint

name

サービスエンドポイント名を指定します。

endpoint01

sync

サービスエンドポイントの同期タイプ“false”(非同期通信)を指定します。

false

SequenceName

メッセージ送信先のISIサーバで動作させるシーケンス名を指定します。シーケンス定義に指定したシーケンス名を指定してください。

sequence01

ServiceName

サービス名を指定します。サービス情報に指定したサービス名を指定してください。

quecntisiservice01

QueueName

キュー名を指定します。メッセージ送信元ISIサーバ内のキュー名を指定してください。

OutboundQueue01

ApisideQueueName

キュー名を指定します。メッセージ送信先ISIサーバ内のキュー名を指定してください。

InboundQueue01

注意

キュー間転送機能を利用して接続する2つのキュー名を統一してください。
キュー名を統一した場合は、統一したキュー名を、“QueueName”に指定してください。キュー名を統一できない場合は、メッセージ送信元ISIサーバ内のキュー名を“QueueName”に、メッセージ送信先ISIサーバ内のキュー名を“ApisideQueueName”に指定してください。

サービス情報

サービス情報:quecntisiservice01.xml
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="quecntisiservice01" type="QUECONNECTED" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="quecnt.isicnt">true</Property>
        <Property name="quecnt.msgAccumSndsystem">true</Property>
        <Property name="quecnt.msgAccumRcvsystem">true</Property>
    </PropertyList>
</Service>
表C.42 定義項目

キー名

説明

指定例

Service

name

サービス名を指定します。

quecntisiservice01

type

サービスのタイプ“QUECONNECTED”を指定します。

QUECONNECTED

Property

quecnt.isicnt

ISIサーバを連携させる“true”を指定します。

true

quecnt.msgAccumSndsystem

メッセージ送信元のISIサーバに、メッセージを蓄積するかどうかを指定します。

  • true:蓄積する(デフォルト)

  • false:蓄積しない

true

quecnt.msgAccumRcvsystem

メッセージ送信先のISIサーバに、メッセージを蓄積するかどうかを指定します。

  • true:蓄積する(デフォルト)

  • false:蓄積しない

true