3. JBIコンポーネント

3.1. バインディングコンポーネント

3.1.1. SOAP BC

3.1.1.1. 注意事項

SOAP BCから送出するSOAPメッセージの文字コードはUTF-8で固定

SOAP BCから送出するSOAPメッセージ(inboundにおけるレスポンス、outboundにおけるリクエスト)については、SOAPメッセージの文字コードはUTF-8で固定されており、他の文字コードには変更できません。なお、SOAP BCが受信するSOAPメッセージについては、JBI仕様が対応すべきとしているWS-I Basic Profileに基づき、UTF-8とUTF-16の2つに対応しています。

chunkedエンコーディング

内蔵Webサーバを使用時に、chunkedエンコーディングを有効にしてもレスポンスのHTMLボディ長が レスポンスのバッファサイズより小さい場合にchunkedエンコーディングになりません。 レスポンスのバッファサイズをデフォルトの8Kバイトより少なくする場合は以下の設定が必要となります。 (kb(キロバイト)の指定が必須です)
---------------------------------------------------------------------------
otxadmin> set server.web-container.property.default-buffersize = <サイズ>kb
---------------------------------------------------------------------------
また、Webサーバと連携した場合はメッセージボディ長が8Kバイト未満の場合にはchunkedエンコーディング を使用する事ができません。

3.1.1.2. 制限事項

特にありません。

3.1.2. JMS BC

3.1.2.1. 注意事項

要求用送信先について

要求用送信先は、エンドポイント単位で一意でなければなりません。

エラーリトライ、エラー通知について

xa-transactionを利用する場合、エラーの際はロールバックされるため、エラーリトライ、エラー通知は行われません。

3.2.2.2. 制限事項

矛盾する値を設定した場合の動作について

統合運用管理ツールや運用管理コマンドで設定できる属性値において、最大値と最小値に関する大小関係の逆転など、矛盾する値の設定を行うと動作に失敗する場合があります。

3.1.3. JCA BC

3.1.3.1. 注意事項

JCAのサポート範囲

JCA BCはJCA1.5準拠のリソースアダプタをサポート対象としています。また、内部でJCAのCCI(Common Client Interface)を使用していますのでCCIを実装していないリソースアダプタはサポート対象外です。

3.1.3.2. 制限事項

データ型のサポート範囲

JCA BCがリソースアダプタのRecordに設定するデータの型は次の型をサポートしています。String, Boolean, Integer, Double, Float, Short, Byte, Long, Character, MappedRecord, IndexedRecord。

ステートフルでの会話型トランザクションが実行できない

一般的なリソースアダプタを使用して会話型トランザクションを実行するためにはアプリケーションをステートフルにしますが、JCA BCはステートレスであるため会話型トランザクションを実行することができません。 OLF/TP Adapterを使用して会話型トランザクションを実行する場合は、ステートレスで会話型トランザクション実行可能なOLF/TP-UWプロトコルを使用してください。

3.1.4. RMI BC

3.1.4.1. 注意事項

Entity Beanが未サポート

Entity Beanは未サポートです。

オペレーションの引数

・リクエストメッセージ中の値は、EJBアプリケーションのオペレーションの引数と同じ順序で記載されている必要があります。

・EJBアプリケーションのオペレーションでは、名前と引数の数が同じで、引数の型が異なるオペレーションの区別ができません。このような場合には、オペレーションの名前を変更してください。

3.1.4.2. 制限事項

特にありません。

3.1.5. File BC

3.1.5.1. 注意事項

AP自動起動機能でのGUIアプリケーションの呼び出し

WindowsではAP自動起動機能でGUIの外部アプリケーションを起動させることはできません。

3.1.5.2. 制限事項

特にありません。

3.1.6. CORBA BC

3.1.6.1. 注意事項

オペレーションの引数

・リクエストメッセージ中の値は、サーバアプリケーションのオペレーションの引数と同じ順序で記載されている必要があります。

・戻り値のあるout/inout属性を引数に指定された場合、Outメッセージへの設定順は、引数を順番に設定し最後に戻り値を設定します。

3.1.6.2. 制限事項

特にありません。

3.1.7. JDBC BC

3.1.7.1. 注意事項

CLOB、BLOBの登録

CLOB、BLOBの登録についてはOracleのデータベースのみがサポート対象です。

コンシューマとプロバイダを同一サービスユニット内で利用する際のオペレーション名

JDBC BCのコンシューマとプロバイダを同一サービスユニット内で利用する際、双方のオペレーション名が同じである場合は、エンドポイントのインタフェース名としてwsdlファイルのPortTypeを指定してください。

メッセージ待ち合わせ処理

V8.4よりInboundでのポーリング動作を変更しました。応答メッセージを待ち合わせてから次のクエリ処理を行うため、単一プロセスで動作する場合には、二重処理の抑止を考慮する必要はありません。

このため、Outboundから応答メッセージが返らない場合には次のクエリ処理を行いません。この場合、Outboundの問題を解決した上で、SAを再起動してください。

二重処理の抑止については[ 運用ガイド > 5. チューニング > 5.2. バインディングコンポーネント > 5.2.8. JDBC BC > 5.2.8.3. 二重処理の抑止 ] を参照してください。

エラーリトライ、エラー通知について

xa-transactionを利用する場合、エラーの際はロールバックされるため、エラーリトライ、エラー通知は行われません。

3.1.7.2. 制限事項

エンドポイントの設定更新

SQLにマルチバイト文字を指定している場合、エンドポイントMOでオペレーション一覧を更新することができません。

3.1.8. FTP BC

3.1.8.1. 注意事項

メッセージの関連を有効にする場合のファイル名のパターン

簡易設定(message方式)で"メッセージの関連を有効にする(messageCorrelate)"の値をtrueに設定した場合、"ファイル名のパターン(fileName)"の値は%uから始まる必要があります。

監視間隔とデータチャネルタイムアウトの値

"監視間隔(pollIntervalMillis属性)"の値が"データチャンネルタイムアウト(dataChannelTimeout)"の値より大きい場合に、データチャンネルにタイムアウトが発生します。したがって、"監視間隔(pollIntervalMillis)"の値を"データチャネルタイムアウト(dataChannelTimeout)"の値より小さく設定してください。

ファイル名の文字コード

FTPサーバでは、パス及びファイル名に日本語などのマルチバイト文字を使わないことを推奨します。利用する場合は、"ファイル一覧形式(dirListStyle)"の値を UNIX (SJIS)等に指定して調整してください。

メッセージ処理方式 "attachment" での文字コード変換

メッセージ処理方式を"attachment"にして文字コード変換機能を使う場合は、InboundとOutboundの両方にencoding属性を設定する必要があります。

ダイレクト転送と統計機能

ダイレクト転送機能と統計機能は併用できません。

ダイレクト転送機能を利用する際のFTPサーバの設定

ダイレクト転送を使用するにはFTPサーバの設定変更が必要になる場合があります。例としてvsftpd2.0では etc/vsftpd/vsftpd.conf に以下の設定を行います。

---------------------
port_enable=YES
port_promiscuous=YES
pasv_enable=YES
pasv_promiscuous=YES
pasv_min_port=3000
pasv_max_port=4000
-------------------- 
         


サイズが大きいファイルを転送する場合のタイムアウト

サイズの大きなファイルを転送する場合には、"データチャンネルタイムアウト(dataChannelTimeout)"と"コマンドチャンネルタイムアウト(cmdChannelTimeout)"を大きく設定する必要があります。

3.1.8.2. 制限事項

SOCK 4のFTPプロキシサーバが未サポート

SOCK4のFTPプロキシサーバは未サポートです。

3.1.9. HTTP BC

3.1.9.1. 注意事項

オペレーションURLの一意性

オペレーションURL(operation-location)は、エンドポイント単位で一意でなければなりません。

Content-Typeのないメッセージの扱い

外部から受信したHTTPメッセージに、content-typeヘッダがない場合、あるいはcharsetパラメータがない場合、HTTP規範により、メッセージボディのエンコードをISO-8859-1として処理します。エンコードがISO-8859-1ではないメッセージをHTTP BCに送信する場合、content-typeヘッダのcharsetパラメータを設定してください。

エンコード変換が指定されていない場合の文字コード

HTTP BCから送信されるメッセージ(コンシューマにおけるレスポンス、プロバイダにおけるリクエスト)のメッセージタイプがxmlであり、エンコード変換を設定していない場合、HTTPメッセージの文字コードはUTF-8となります。

3.1.9.2. 制限事項

処理可能な添付ファイルの数が1つのみ

外部から受信したHTTPメッセージのcontent-typeがMultipart/relatedである場合、メッセージボディをそのまま添付ファイルとしてノーマライズメッセージに挿入します。また、NMRから受信したノーマライズメッセージに添付ファイルが二つ以上ある場合、一つ目の添付ファイルのみをHTTPメッセージボディとして外部へ送信して、その他は破棄されます。

3.1.10. TCP/IP BC

3.1.10.1. 注意事項

ローカルポートの範囲が指定できない

TCP/IP BCではOutboundのエンドポイントから外部サーバアプリケーションに接続する際のローカルポートの範囲を指定することができません。 ローカルポートの指定が必要な場合はOSで設定を行ってください。

ノーマライズメッセージのメッセージコンテントか添付ファイルのどちらかしか処理できない

TCP/IP BCでは、例えば添付ファイル付きSOAPメッセージのように本文と添付ファイルの両方がある場合、 ノーマライズメッセージのメッセージコンテントか添付ファイルのどちらかしか処理できません。 (どちらを処理するかはエンドポイントの設定で指定します。)

オペレーションはエンドポイント毎に1つのみ

TCP/IP BCのオペレーションはエンドポイント毎に1つのみとなります。 複数のオペレーションが必要な場合は、オペレーションごとにエンドポイント作成に立ち戻って作業してください。

プロセス多重度を2以上にしてもInboundが一つのプロセスのみで動作する
(WebOTX AS Standard/Enterprise上での動作時のみ)

同じポートを複数のプロセスで待ち受けできない関係上、 TCP/IP BCのInboundはプロセスグループ上での動作時に、プロセス多重度が2以上に指定しても一つのプロセス上でのみ動作します。 もし何らかの理由でTCP/IP BCのInboundが動作しているプロセスが異常終了した場合、 他のプロセスでTCP/IP BCのInboundが起動します。

3.1.10.2. 制限事項

統合運用管理ツールの「ポート番号一覧」においてポート名がCLINameで表示される

統合運用管理ツールのポート番号一覧のビュー(「運用管理ツール」→「システム(s)」→「サーバ一覧」→「ポート番号一覧 」で起動)TCP/IP BCのInboundで待ち受けるポート番号において、 TCP/IP BCのInboundで待ち受けるポートの項目のポート名がMBeanのCLINameで表示されます。

3.1.11. Salesforce BC

3.1.11.1. 注意事項

オペレーションURLの一意性

オペレーションURL(operation-location)は、エンドポイント単位で一意でなければなりません。

SSL通信を行う場合の証明書を導入

プロバイダとSalesforce.comとの通信にSSLを使用する場合、VeriSignからルート証明書を入手してください。導入に際してはルート証明書の有効期限にご注意ください。

3.1.11.2. 制限事項

InboundではSalesforce.comのアウトバウンドメッセージのみサポート

InboundはSalesforce.comのワークフローと承認申請によるアウトバウンドメッセージのみサポートします。ApexコードによるSOAPメッセージの受信には対応しておりません。

SOAPメッセージ要素の簡易操作機能の接頭辞

SUの設定にある「SOAPボディ要素操作」の設定でreplaceあるいはinsertを選択した場合、対象の要素に「urn」が接頭辞として付与されます。そのため、SOAPメッセージ内部で「urn」を接頭辞として使用すると意図しない名前空間になることがあります。

3.1.12. HL7 BC

3.1.12.1. 注意事項

ローカルポートの範囲が指定できない

HL7 BCではOutboundのエンドポイントから外部サーバアプリケーションに接続する際のローカルポートの範囲を指定することができません。 ローカルポートの指定が必要な場合はOSで設定を行ってください。

ノーマライズメッセージのメッセージコンテントか添付ファイルのどちらかしか処理できない

HL7 BCでは、例えば添付ファイル付きSOAPメッセージのように本文と添付ファイルの両方がある場合、 ノーマライズメッセージのメッセージコンテントか添付ファイルのどちらかしか処理できません。 (どちらを処理するかはエンドポイントの設定で指定します。)
ER7形式のメッセージをメッセージコンテントに格納する場合、ノーマライズメッセージを受け取るBCによってはエラーになる可能性があるため、 ER7形式のメッセージは添付ファイルに格納することを推奨します。

オペレーションはエンドポイント毎に1つのみ

HL7 BCのオペレーションはエンドポイント毎に1つのみとなります。 複数のオペレーションが必要な場合は、オペレーションごとにエンドポイント作成に立ち戻って作業してください。

プロセス多重度を2以上にしてもInboundが一つのプロセスのみで動作する
(WebOTX AS Standard/Enterprise上での動作時のみ)

同じポートを複数のプロセスで待ち受けできない関係上、 HL7 BCのInboundはプロセスグループ上での動作時に、プロセス多重度が2以上に指定しても一つのプロセス上でのみ動作します。 もし何らかの理由でHL7 BCのInboundが動作しているプロセスが異常終了した場合、 他のプロセスでHL7 BCのInboundが起動します。

ADDセグメント/DSCセグメントはサポート対象外

ADDセグメント/DSCセグメントを用いたメッセージ継続プロトコルはサポート対象外です。

シーケンス番号プロトコル利用時はメッセージを並列処理できない

エンドポイントでシーケンス番号プロトコルの設定が有効になっている場合、そのエンドポイントでは1メッセージずつしか処理できません。 (複数メッセージが来た場合、後続のメッセージをブロックします。)

HL7メッセージとその構成要素のローカル拡張

ER7形式とXML形式のHL7メッセージ、およびその構成要素のローカル拡張については 以下の条件を満たすものに対応します。

・ZメッセージはMSHセグメントから始まる必要があります。

・Z肯定応答メッセージはMSHセグメント、オプションのSFTセグメント、MSAセグメント、条件付きのERRセグメントから始まる必要があります。

・MSHセグメント、MSAセグメント、SFTセグメント、ERRセグメントで使用される既存のフィールドを再定義する事はできません。

・MSHセグメント、MSAセグメント、SFTセグメント、ERRセグメントで使用される既存のデータ型を再定義する事はできません。

3.1.12.2. 制限事項

統合運用管理ツールの「ポート番号一覧」においてポート名がCLINameで表示される

統合運用管理ツールのポート番号一覧のビュー(「運用管理ツール」→「システム(s)」→「サーバ一覧」→「ポート番号一覧 」で起動)HL7 BCのInboundで待ち受けるポート番号において、 HL7 BCのInboundで待ち受けるポートの項目のポート名がMBeanのCLINameで表示されます。

3.2. サービスエンジン

3.2.1. XSLT SE

3.2.1.1. 注意事項

特にありません。

3.2.1.2. 制限事項

特にありません。

3.2.2. Sequencing SE

3.2.2.1. 注意事項

インタフェース名によるSequencing SEの呼び出しが不可能

Sequencing SEが呼び出し先になった場合、インタフェース名を指定したルーティングはできません。サービス名とエンドポイントを指定しないで、インタフェースだけを指定しても呼び出すことはできません。

3.2.2.2. 制限事項

特にありません。

3.2.3. CBR SE

3.2.3.1. 注意事項

XML要素の指定方法

XMLメッセージ中の要素を指定する記述形式としては、XPathによるアクセス表記を使用してください。

インタフェース名によるCBR SEの呼び出しが不可能

CBR SEが呼び出し先になった場合、インタフェース名を指定したルーティングはできません。サービス名とエンドポイントを指定しないで、インタフェースだけを指定しても呼び出すことはできません。

3.2.3.2. 制限事項

特にありません。

3.2.4. UserProcessor SE

3.2.4.1. 注意事項

特にありません。

3.2.4.2. 制限事項

マルチプロセス環境でのEDIトランスレータ

WebOTX AS Standard/Enterprise のアドバンスドモード上での動作時に、EDIトランスレータが動作するプロセスグループのプロセス数を2以上にすると、変換処理中に生成する一時ファイルのファイル名がプロセス間で重複することから、EDIトランスレータ実行時に稀にエラーが発生します。プロセスグループのプロセス数を1にしてください。WebOTX AS Express および WebOTX AS Standard/Enterprise のスタンダードモード上での動作は問題ありません。

3.3. コンポーネント共通機能

3.3.1. 注意事項

共通ハンドラでのInputStreamの取り扱い

メッセージコンバートハンドラとメッセージエクスチェンジハンドラの下記のメソッドにおいて ユーザが仮引数のInputStreamおよびNormalizedMessageが持つInputStream を利用した場合に、このInputStreamをCloseする必要があります。

IMessageConvertHandler:
  public InputStream handleReceiveMessage (InputStream, Logger)
  public InputStream handleSendMessage(InputStream, Logger)
IMessageExchangeHandler:
  public void handleInMessage(NormalizedMessage, Logger)
  public void handleOutMessage(NormalizedMessage, Logger)
  public void handleFault(Fault, Logger)
         


3.3.2. 制限事項

特にありません。