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

C.1.12 互換機能の定義

C.1.12.1 メッセージ送受信APIの定義

メッセージ送受信APIを利用した転送を行う場合、サービスエンドポイント定義に、メッセージ送受信APIで必要な情報を定義します。
メッセージ送受信APIの定義には、以下の種類があります。

同期処理

同期処理のサービスエンドポイント定義の指定例は、以下のとおりです(同期のサービスエンドポイントに対して、メッセージ送受信APIの送信APIを使用する時の定義です)。

指定例

サービスエンドポイント定義: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="true">
        <SequenceName>sequence01</SequenceName>
    </Endpoint>
</EndpointList>
表C.49 定義項目

キー名

説明

指定例

Endpoint

name

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

endpoint01

sync

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

true

SequenceName

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

sequence01

非同期処理

非同期処理のサービスエンドポイント定義には、以下の種類があります。

注意

JMSキュー名には、受信と送信で異なるものを指定してください。

送信

インバウンドサービスエンドポイント定義の指定例は、以下のとおりです(非同期のサービスエンドポイントに対して、メッセージ送受信APIの送信APIを使用する時の定義です)。

指定例

サービスエンドポイント定義: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>
        <QueueName>ESIInboundQueue</QueueName>
    </Endpoint>
</EndpointList>
表C.50 定義項目

キー名

説明

指定例

Endpoint

name

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

endpoint01

sync

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

false

SequenceName

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

sequence01

QueueName

JMSキュー名を指定します。

ESIInboundQueue

受信

アウトバウンドサービスエンドポイント定義の指定例は、以下のとおりです(非同期のサービスエンドポイントに対して、メッセージ送受信APIの受信APIを使用する時の定義です)。

指定例

サービスエンドポイント定義: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="endpoint02" sync="false">
        <QueueName>ESIOutboundQueue</QueueName>
    </Endpoint>
</EndpointList>
表C.51 定義項目

キー名

説明

指定例

Endpoint

name

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

endpoint02

sync

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

false

QueueName

JMSキュー名を指定します。

ESIOutboundQueue

SOAPRPC機能(JAX-RPC)の場合

JAX-RPCによるSOAPのRPC機能を利用した転送を行う場合、サービスエンドポイント定義に、SOAP送信処理で必要な情報を定義します。
サービスエンドポイント定義の指定例は、以下のとおりです。

指定例

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

同期送信の場合のサービスエンドポイント定義: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="true">
        <SequenceName>sequence01</SequenceName>
        <ServiceName>rpc01</ServiceName>
    </Endpoint>
</EndpointList>
非同期送信の場合のサービスエンドポイント定義: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>
        <QueueName>ESIInboundQueue</QueueName>
        <ServiceName>rpc01</ServiceName>
    </Endpoint>
</EndpointList>
非同期受信の場合のサービスエンドポイント定義: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">
        <QueueName>ESIOutboundQueue</QueueName>
        <ServiceName>rpc01</ServiceName>
    </Endpoint>
</EndpointList>

注意

非同期処理の場合、JMSキュー名には、受信と送信で異なるものを指定してください。

表C.52 定義項目

キー名

説明

指定例

Endpoint

name

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

endpoint01

sync

サービスエンドポイントの同期タイプを指定します。

  • true:同期通信

  • false:非同期通信

true

SequenceName

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

sequence01

QueueName

syncで“false”を指定した場合に、JMSキュー名を指定します。

ESIInboundQueue

ServiceName

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

rpc01

各機能によるサービスエンドポイント定義の違いを以下に示します。

表C.53 定義項目の違い

  

同期送信の場合

非同期送信の場合

非同期受信の場合

sync

true

false

false

<SequenceName>

<QueueName>

<ServiceName>

○:設定必須
△:設定可(省略時は、デフォルト値が有効となります。)
-:設定不要(設定は無効となります。)

サービス情報

サービス情報:rpc01.xml
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="rpc01" type="SOAP-RPC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="soap.urlEndpoint">http://MyHost/esisoap/services/ESISoapRpcProvider</Property>
        <Property name="soap.basicAuthSet">true</Property>
        <Property name="soap.basicAuthUsr">userName</Property>
        <Property name="soap.basicAuthPwd" secret="true">userPassword</Property>
        <Property name="soap.proxySet">true</Property>
        <Property name="soap.nonProxyHosts">localhost|*.myhost.com</Property>
        <Property name="soap.proxyHost">proxy.proxyhost.com</Property>
        <Property name="soap.proxyPort">8080</Property>
        <Property name="soap.proxyAuthSet">true</Property>
        <Property name="soap.proxyAuthUsr">proxyUserName</Property>
        <Property name="soap.proxyAuthPwd" secret="true">proxyPassword</Property>
        <Property name="soap.timeout">60000</Property>
        <Property name="jmsr.messageAccumulate">true</Property>
    </PropertyList>
</Service>
表C.54 定義項目

キー名

説明

指定例

Service

name

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

rpc01

type

“SOAP-RPC”を指定します。

SOAP-RPC

Property

soap.urlEndpoint

ISIのJAX-RPC用のURLを指定します。

http://MyHost/esisoap/services/ESISoapRpcProvider

soap.basicAuthSet

Basic認証の設定を行うかどうかを指定します。

  • true:行う
    “true”を指定した場合は、“soap.basicAuthUsr”でユーザ名を、“soap.basicAuthPwd”でパスワードを指定してください。

  • false:行わない(デフォルト)

true

soap.basicAuthUsr

“soap.basicAuthSet”に“true”を指定した場合、Basic認証のログインユーザ名を指定します。

userName

soap.basicAuthPwd

“soap.basicAuthSet”に“true”を指定した場合、Basic認証のログインパスワードを指定します。

userPassword

  

secret

プロパティの情報(パスワードなど)を暗号化するかどうかを指定します。

  • true:暗号化する

  • false:暗号化しない

true

soap.proxySet

プロキシサーバを利用するかどうかを指定します。

  • true:利用する
    “true”を指定した場合は、“soap.proxyHost”でホスト名を、“soap.proxyPort”でポート番号を指定してください。

  • false:利用しない(デフォルト)

true

soap.nonProxyHosts

プロキシを経由せずに接続するホスト名を指定します。
複数のホスト名を指定する場合は、“|”(パイプ文字)で区切って指定してください。

localhost|*.myhost.com

soap.proxyHost

“soap.proxySet”に“true”を指定した場合、プロキシサーバのホスト名を指定します。

proxy.proxyhost.com

soap.proxyPort

“soap.proxySet”に“true”を指定した場合、プロキシサーバのポート番号を指定します。

8080

soap.proxyAuthSet

プロキシサーバの利用者認証の設定を行うかどうかを指定します。以下のどちらかを指定します。

  • true:行う
    “true”を指定した場合は、“soap.proxyAuthUsr”でユーザ名を、“soap.proxyAuthPwd”でパスワードを指定してください。

  • false:行わない(デフォルト)

true

soap.proxyAuthUsr

“soap.proxyAuthSet”に“true”を指定した場合、プロキシサーバのログインユーザ名を指定します。

proxyUserName

soap.proxyAuthPwd

“soap.proxyAuthSet”に“true”を指定した場合、プロキシサーバのログインパスワードを指定します。

proxyPassword

  

secret

プロパティの情報(パスワードなど)を暗号化するかどうかを指定します。

  • true:暗号化する

  • false:暗号化しない

true

soap.timeout

接続先から応答がない場合、接続を切断するタイムアウト時間をミリ秒で指定します。(※1)
以下の文字列を指定できます。

  • 正の整数値

デフォルトは、利用するSOAPエンジンに依存します。

  • Interstage Application Server:300000(5分)

  • AXIS:60000(1分)

60000

jmsr.messageAccumulate

JMS-Rキューを使用する場合、メッセージを蓄積するかどうかを指定します。

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

  • false:蓄積しない

true


※1:タイムアウト時間がISIサーバの処理時間より短い場合、接続タイムアウトが発生します。接続タイムアウトが発生すると、クライアント側でエラーになったり、データが消失したりする可能性があるため、タイムアウト時間は、ISIサーバの処理時間より長めに設定してください。

C.1.12.2 SOAPのメッセージング機能の定義

JAXMによるSOAPのメッセージング機能を利用した転送を行う場合、サービスエンドポイント定義に、SOAP送信処理で必要な情報を定義します。

非同期処理

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

注意

  • メッセージ送信呼出時の共通メッセージのペイロードに、SOAPメッセージ(XML文書)が格納されている必要があります。

  • サービス情報でレスポンス処理を指定し、かつ、通信先がOneway方式のWebサービスでレスポンスにSOAPメッセージを含まない場合は、レスポンス処理で格納される共通メッセージのペイロードは空になります。

指定例

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

サービスエンドポイント定義: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">
        <QueueName>ESISendQueue</QueueName>
        <ServiceName>msg_mdb</ServiceName>
    </Endpoint>
</EndpointList>
表C.55 定義項目

キー名

説明

指定例

Endpoint

name

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

endpoint01

sync

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

false

QueueName

JMSキュー名を指定します。

ESISendQueue

ServiceName

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

msg_mdb

サービス情報

サービス情報:msg_mdb.xml
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="msg_mdb" type="SOAP-MSG" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="reqrespParameter">usr.param1,usr.param2</Property>
        <Property name="responseSet">true</Property>
        <Property name="responseEndpoint">endpointRsp</Property>
        <Property name="soap.urlEndpoint">http://MyHost/esisoap/services/ESISoapRpcProvider</Property>
        <Property name="soap.basicAuthSet">true</Property>
        <Property name="soap.basicAuthUsr">userName</Property>
        <Property name="soap.basicAuthPwd" secret="true">userPassword</Property>
        <Property name="soap.proxySet">true</Property>
        <Property name="soap.nonProxyHosts">localhost|*.myhost.com</Property>
        <Property name="soap.proxyHost">proxy.proxyhost.com</Property>
        <Property name="soap.proxyPort">8080</Property>
        <Property name="soap.proxyAuthSet">true</Property>
        <Property name="soap.proxyAuthUsr">proxyUserName</Property>
        <Property name="soap.proxyAuthPwd" secret="true">proxyPassword</Property>
        <Property name="soap.timeout">60000</Property>
        <Property name="soap.action">callBytes</Property>
        <Property name="soap.parse">false</Property>
        <Property name="jmsr.messageAccumulate">true</Property>
    </PropertyList>
</Service>
表C.56 定義項目

キー名

説明

指定例

Service

name

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

msg_mdb

type

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

SOAP-MSG

Property

reqrespParameter

レスポンス処理を実行する場合に、メッセージ送信された共通メッセージのヘッダ情報からコピーするパラメタ名を指定します。
複数のパラメタ名を指定する場合は、,(カンマ)で区切って指定してください。

usr.param1,usr.param2

responseSet

レスポンス処理を実行するかどうかを指定します。

  • true:実行する

  • false:実行しない

true

responseEndpoint

レスポンスを格納するサービスエンドポイント定義名を指定します。

endpointRsp

soap.urlEndpoint

接続先のURLを指定します。

http://MyHost/esisoap/services/ESISoapRpcProvider

soap.basicAuthSet

Basic認証を行うかどうかを指定します。

  • true:行う
    “true”を指定した場合は、“soap.basicAuthUsr”でユーザ名を、“soap.basicAuthPwd”でパスワードを指定してください。

  • false:行わない(デフォルト)

true

soap.basicAuthUsr

“soap.basicAuthSet”に“true”を指定した場合、Basic認証のログインユーザ名を指定します。

username

soap.basicAuthPwd

“soap.basicAuthSet”に“true”を指定した場合、Basic認証のログインパスワードを指定します。

userPassword

  

secret

プロパティの情報(パスワードなど)を暗号化するかどうかを指定します。

  • true:暗号化する

  • false:暗号化しない

true

soap.proxySet

Proxyサーバを利用するかどうかを指定します。

  • true:利用する
    “true”を指定した場合は、“soap.proxyHost”でホスト名を、“soap.proxyPort”でポート番号を指定してください。

  • false:利用しない(デフォルト)

true

soap.nonProxyHosts

プロキシを経由せずに接続するホスト名を指定します。
複数のホスト名を指定する場合は、“|”(パイプ文字)で区切って指定してください。

localhost|*.myhost.com

soap.proxyHost

“soap.proxySet”に“true”を指定した場合、Proxyサーバのホスト名を指定します。

proxy.proxyhost.com

soap.proxyPort

“soap.proxySet”に“true”を指定した場合、Proxyサーバのポート番号を指定します。

8080

soap.proxyAuthSet

Proxyサーバで利用者認証を行うかどうかを指定します。以下のどちらかを指定します。

  • true:行う
    “true”を指定した場合は、“soap.proxyAuthUsr”でユーザ名を、“soap.proxyAuthPwd”でパスワードを指定してください。

  • false:行わない(デフォルト)

true

soap.proxyAuthUsr

“soap.proxyAuthSet”に“true”を指定した場合、Proxyサーバのログインユーザ名を指定します。

proxyUserName

soap.proxyAuthPwd

“soap.proxyAuthSet”に“true”を指定した場合、Proxyサーバのログインパスワードを指定します。

proxyPassword

  

secret

プロパティの情報(パスワードなど)を暗号化するかどうかを指定します。

  • true:暗号化する

  • false:暗号化しない

true

soap.timeout

接続のタイムアウト時間をミリ秒で指定します。
以下の文字列を指定できます。

  • 正の整数値

デフォルトは、利用するSOAPエンジンに依存します。

  • Interstage Application Server:300000(5分)

60000

soap.action

接続先のWebサービスが要求するSOAP Actionを指定します。
SOAP Actionが必要かどうかは接続先のWebサービスに確認してください。

callBytes

soap.parse

SOAPメッセージの妥当性検証を行うかどうかを指定します。
SOAP1.1およびSOAP1.2のスキーマ定義でリクエストとレスポンスのSOAPメッセージの妥当性検証を行います。

  • true:確認する

  • false:確認しない(デフォルト)

false

jmsr.messageAccumulate

JMS-Rキューを使用する場合、メッセージを蓄積するかどうかを指定します。

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

  • false:蓄積しない

true

同期処理

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

注意

  • SOAP Gateway呼出時の共通メッセージのペイロードに、SOAPメッセージ(XML文書)が格納されている必要があります。

  • 通信先からのレスポンスのSOAPメッセージがSOAPFaultの場合も、SOAPメッセージを共通メッセージのペイロードに格納し、正常に終了します。

指定例

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

サービスエンドポイント定義: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="outbound02" sync="true">
        <ServiceName>msg_gw</ServiceName>
    </Endpoint>
</EndpointList>
表C.57 定義項目

キー名

説明

指定例

Endpoint

name

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

outbound02

sync

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

true

ServiceName

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

msg_gw

サービス情報

サービス情報:msg_gw.xml
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="msg_gw" type="SOAP-MSG" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="soap.urlEndpoint">http://MyHost/esisoap/services/ESISoapRpcProvider</Property>
        <Property name="soap.basicAuthSet">true</Property>
        <Property name="soap.basicAuthUsr">userName</Property>
        <Property name="soap.basicAuthPwd" secret="true">userPassword</Property>
        <Property name="soap.proxySet">true</Property>
        <Property name="soap.nonProxyHosts">localhost|*.myhost.com</Property>
        <Property name="soap.proxyHost">proxy.proxyhost.com</Property>
        <Property name="soap.proxyPort">8080</Property>
        <Property name="soap.proxyAuthSet">true</Property>
        <Property name="soap.proxyAuthUsr">proxyUserName</Property>
        <Property name="soap.proxyAuthPwd" secret="true">proxyPassword</Property>
        <Property name="soap.timeout">60000</Property>
        <Property name="soap.parse">false</Property>
    </PropertyList>
</Service>
表C.58 定義項目

キー名

説明

指定例

Service

name

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

msg_gw

type

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

SOAP-MSG

Property

soap.urlEndpoint

接続先のURLを指定します。

http://MyHost/esisoap/services/ESISoapRpcProvider

soap.basicAuthSet

Basic認証を行うかどうかを指定します。

  • true:行う
    “true”を指定した場合は、“soap.basicAuthUsr”でユーザ名を、“soap.basicAuthPwd”でパスワードを指定してください。

  • false:行わない(デフォルト)

true

soap.basicAuthUsr

“soap.basicAuthSet”に“true”を指定した場合、Basic認証のログインユーザ名を指定します。

username

soap.basicAuthPwd

“soap.basicAuthSet”に“true”を指定した場合、Basic認証のログインパスワードを指定します。

userPassword

  

secret

プロパティの情報(パスワードなど)を暗号化するかどうかを指定します。

  • true:暗号化する

  • false:暗号化しない

true

soap.proxySet

Proxyサーバを利用するかどうかを指定します。

  • true:利用する
    “true”を指定した場合は、“soap.proxyHost”でホスト名を、“soap.proxyPort”でポート番号を指定してください。

  • false:利用しない(デフォルト)

true

soap.nonProxyHosts

プロキシを経由せずに接続するホスト名を指定します。
複数のホスト名を指定する場合は、|(パイプ文字)で区切って指定してください。

localhost|*.myhost.com

soap.proxyHost

“soap.proxySet”に“true”を指定した場合、Proxyサーバのホスト名を指定します。

proxy.proxyhost.com

soap.proxyPort

“soap.proxySet”に“true”を指定した場合、Proxyサーバのポート番号を指定します。

8080

soap.proxyAuthSet

Proxyサーバで利用者認証を行うかどうかを指定します。以下のどちらかを指定します。

  • true:行う
    “true”を指定した場合は、“soap.proxyAuthUsr”でユーザ名を、“soap.proxyAuthPwd”でパスワードを指定してください。

  • false:行わない(デフォルト)

true

soap.proxyAuthUsr

“soap.proxyAuthSet”に“true”を指定した場合、Proxyサーバのログインユーザ名を指定します。

proxyUserName

soap.proxyAuthPwd

“soap.proxyAuthSet”に“true”を指定した場合、Proxyサーバのログインパスワードを指定します。

proxyPassword

  

secret

プロパティの情報(パスワードなど)を暗号化するかどうかを指定します。

  • true:暗号化する

  • false:暗号化しない

true

soap.timeout

接続のタイムアウト時間をミリ秒で指定します。
以下の文字列を指定できます。

  • 正の整数値

デフォルトは、利用するSOAPエンジンに依存します。

  • Interstage Application Server:300000(5分)

60000

soap.parse

SOAPメッセージの妥当性検証を行うかどうかを指定します。
SOAP1.1およびSOAP1.2のスキーマ定義でリクエストとレスポンスのSOAPメッセージの妥当性検証を行います。

  • true:確認する

  • false:確認しない(デフォルト)

false

C.1.12.3 SOAP(.NET)の定義

SOAPのRPC機能を利用し、.NETから呼び出しを行うためのサービスエンドポイント定義を作成します。

指定例

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

サービスエンドポイント定義: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="true">
        <SequenceName>sequence01</SequenceName>
        <ServiceName>soap01</ServiceName>
    </Endpoint>
</EndpointList>
表C.59 定義項目

キー名

説明

指定例

Endpoint

name

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

endpoint01

sync

サービスエンドポイントの同期タイプを指定します。

  • true:同期通信

  • false:非同期通信

true

SequenceName

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

sequence01

ServiceName

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

soap01

サービス情報

サービス情報:soap01.xml
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="soap01" type="SOAP-NET" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="soap.urlEndpoint">http://MyHost/esilightservice/services/ESIServerLightProvider</Property>
    </PropertyList>
</Service>
表C.60 定義項目

キー名

説明

指定例

Service

name

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

soap01

type

“SOAP-NET”を指定します。

SOAP-NET

Property

soap.urlEndpoint

ISIのSOAP-NET用のURLを指定します。

http://MyHost/esilightservice/services/ESIServerLightProvider

上記の他に接続タイムアウト時間、Basic認証、Proxy設定に関するプロパティが設定可能です。
接続タイムアウト時間、Basic認証、Proxy設定に関するプロパティについては、“SOAPのRPC機能(JAX-RPC)の場合”を参照してください。

C.1.12.4 JMS-R連携の定義

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

JMS-R連携の定義には、以下の種類があります。

受信

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

指定例

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

サービスエンドポイント定義: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>jmsrsendservice01</ServiceName>
        <QueueName>jmsrqueue01</QueueName>
    </Endpoint>
</EndpointList>
表C.61 定義項目

キー名

説明

指定例

Endpoint

name

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

endpoint01

sync

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

false

ServiceName

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

jmsrsendservice01

QueueName

JMS-Rのキュー名を指定します。

jmsrqueue01

サービス情報

サービス情報:jmsrsendservice01.xml
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="jmsrsendservice01" type="JMS-R" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="jmsr.messageAccumulate">true</Property>
        <Property name="jmsr.wait.time">1000</Property>
    </PropertyList>
</Service>
表C.62 定義項目

キー名

説明

指定例

Service

name

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

jmsrsendservice01

type

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

JMS-R

Property

jmsr.messageAccumulate

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

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

  • false:蓄積しない

true

jmsr.wait.time

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

1000

送信

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

指定例

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

サービスエンドポイント定義: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>jmsrrecvservice01</ServiceName>
        <QueueName>jmsrqueue01</QueueName>
    </Endpoint>
</EndpointList>
表C.63 定義項目

キー名

説明

指定例

Endpoint

name

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

endpoint01

sync

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

false

SequenceName

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

sequence01

ServiceName

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

jmsrrecvservice01

QueueName

JMS-Rのキュー名を指定します。

jmsrqueue01

サービス情報

サービス情報:jmsrrecvservice01.xml
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="jmsrrecvservice01" type="JMS-R" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="jmsr.messageAccumulate">true</Property>
    </PropertyList>
</Service>
表C.64 定義項目

キー名

説明

指定例

Service

name

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

jmsrrecvservice01

type

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

JMS-R

Property

jmsr.messageAccumulate

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

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

  • false:蓄積しない

true

C.1.12.5 JCA連携の定義

JCAを利用した連携を行うためのサービスエンドポイント定義を作成します。

指定例

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

サービスエンドポイント定義: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="jca_endpoint" sync="true">
        <ServiceName>jca001</ServiceName>
    </Endpoint>
</EndpointList>
表C.65 定義項目

キー名

説明

指定例

Endpoint

name

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

jca_endpoint

sync

サービスエンドポイントの同期タイプ“true”を指定します。

true

ServiceName

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

jca001

サービス情報

サービス情報:jca001.xml
<?xml version="1.0" encoding="UTF-8" ?>
<Service name="jca001" type="JCA" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="esi-service.xsd">
    <PropertyList>
        <Property name="JCA.JNDI.name">java:comp/env/eis/EISVendorConnectionFactory</Property>
        <Property name="JCA.ConnectionSpec.ImplClass.name">com.vendor.eis.cci.EISVendorConnectionSpec</Property>
        <Property name="JCA.ConnectionSpec.Param0.name">setAdapterName</Property>
        <Property name="JCA.ConnectionSpec.Param0.type">java.lang.String</Property>
        <Property name="JCA.ConnectionSpec.Param0.value">RDBMS</Property>
        <Property name="JCA.ConnectionSpec.Param1.name">setConfig</Property>
        <Property name="JCA.ConnectionSpec.Param1.type">java.lang.String</Property>
        <Property name="JCA.ConnectionSpec.Param1.value">jca_config</Property>
        <Property name="JCA.ConnectionSpec.Param2.name">setUserName</Property>
        <Property name="JCA.ConnectionSpec.Param2.type">java.lang.String</Property>
        <Property name="JCA.ConnectionSpec.Param2.value">scott</Property>
        <Property name="JCA.ConnectionSpec.Param3.name">setPassword</Property>
        <Property name="JCA.ConnectionSpec.Param3.type">java.lang.String</Property>
        <Property name="JCA.ConnectionSpec.Param3.value">tiger</Property>
        <Property name="JCA.InteractionSpec.ImplClass.name">com.vendor.eis.cci.EISVendorInteractionSpec</Property>
        <Property name="JCA.InteractionSpec.Param0.name">setFunctionName</Property>
        <Property name="JCA.InteractionSpec.Param0.type">java.lang.String</Property>
        <Property name="JCA.InteractionSpec.Param0.value">PROCESS</Property>
        <Property name="JCA.Interaction.ImplClass.type">record_return</Property>
        <Property name="JCA.InputRecord.type">Indexed</Property>
        <Property name="JCA.InputRecord.List.name">input</Property>
        <Property name="JCA.InputRecord.List0.type">payload</Property>
        <Property name="JCA.OutputRecord.type">Indexed</Property>
        <Property name="JCA.OutputRecord.List0.type">payload</Property>
    </PropertyList>
</Service>
表C.66 定義項目

キー名

説明

指定例

Service

name

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

jca001

type

“JCA”を指定します。

JCA

Property

JCA.JNDI.name

Interstage Application Serverに配備したリソースアダプタのJNDI名を指定します。

java:comp/env/eis/EISVendorConnectionFactory

JCA.ConnectionSpec.ImplClass.name

リソースアダプタが提供しているConnectionSpecの実装クラス名を指定します。

com.vendor.eis.cci.EISVendorConnectionSpec

1

JCA.ConnectionSpec.Param0.name

ConnectionSpecが提供しているメソッド名を指定します。

setAdapterName

JCA.ConnectionSpec.Param0.type

メソッドに渡す値の型を指定します。

java.lang.String

JCA.ConnectionSpec.Param0.value

メソッドに渡す値を指定します。

RDBMS

2

JCA.ConnectionSpec.Param1.name

ConnectionSpecが提供しているメソッド名を指定します。

setConfig

JCA.ConnectionSpec.Param1.type

メソッドに渡す値の型を指定します。

java.lang.String

JCA.ConnectionSpec.Param1.value

メソッドに渡す値を指定します。

jca_config

3

JCA.ConnectionSpec.Param2.name

ConnectionSpecが提供しているメソッド名を指定します。

setUserName

JCA.ConnectionSpec.Param2.type

メソッドに渡す値の型を指定します。

java.lang.String

JCA.ConnectionSpec.Param2.value

メソッドに渡す値を指定します。

scott

4

JCA.ConnectionSpec.Param3.name

ConnectionSpecが提供しているメソッド名を指定します。

setPassword

JCA.ConnectionSpec.Param3.type

メソッドに渡す値の型を指定します。

java.lang.String

JCA.ConnectionSpec.Param3.value

メソッドに渡す値を指定します。

tiger

JCA.InteractionSpec.ImplClass.name

リソースアダプタが提供しているInteractionSpecの実装クラス名を指定します。

com.vendor.eis.cci.EISVendorInteractionSpec

1

JCA.InteractionSpec.Param0.name

InteractionSpecが提供しているメソッド名を指定します。

setFunctionName

JCA.InteractionSpec.Param0.type

メソッドに渡す値の型を指定します。

java.lang.String

JCA.InteractionSpec.Param0.value

メソッドに渡す値を指定します。

PROCESS

JCA.Interaction.ImplClass.type

Interactionクラスのexecuteメソッドのタイプを指定します。
以下のどちらかを指定してください。

  • Recordが復帰する場合
    record_return

  • booleanが復帰する場合
    bool_return

record_return

JCA.InputRecord.type

入力レコードの型“Indexed”(固定)を指定します。

Indexed

JCA.InputRecord.List.name

IndexedRecordのリストの名前“input”(固定)を指定します。

input

JCA.InputRecord.List0.type

リストの最初のインデックスに渡すデータ“payload”(固定)を指定します。

payload

JCA.OutputRecord.type

入力レコードの型“Indexed”(固定)を指定します。

Indexed

JCA.OutputRecord.List0.type

リストの最初のインデックスから取得するデータ“payload”(固定)を指定します。

payload