F Fusion Middleware ControlでのB2B構成プロパティの設定

この付録では、Oracle Enterprise Manager Fusion Middleware Controlを使用して、Oracle B2Bインタフェースの「構成」タブで設定されないプロパティのB2B構成プロパティを設定する方法について説明します。詳細は、「B2Bシステム・パラメータの構成」を参照してください。また、configmbeanutilユーティリティを使用してB2Bプロパティを設定する方法について説明します。

この付録の内容は次のとおりです。

Fusion Middleware Controlで設定するプロパティ

この項に、Fusion Middleware Controlで設定できるプロパティのリストを示します。

Oracle Enterprise Manager Fusion Middleware Controlでは、表F-1のプロパティを設定できます。プロパティの設定方法は、「Oracle B2Bサーバーのプロパティの構成」を参照してください。

ノート:

B2Bプロパティの変更には、SOAサーバーの再起動が必要です。

表F-1 Oracle Enterprise Manager Fusion Middleware ControlのOracle B2Bプロパティ

プロパティ 説明
b2b.addebMSHeaders

ACTIONSERVICESERVICE TYPECPAIDFROMROLEおよびTOROLEの着信ebMSメッセージの詳細を、AQのACTION_NAMEヘッダーに追加するために使用されます。

デフォルトでは、ACTIONのみがACTION_NAMEの一部として渡されます。

b2b.attachments.dir

添付ディレクトリの場所を指定するには、このプロパティを設定します。

このプロパティを有効にすると、ユーザーはすべての添付が書き込まれるディレクトリを指定できます。

このプロパティの変更では、新しい値を有効にするためにサーバーを再起動する必要があります。

b2b.certificatevalidation

このプロパティは、ebMSで受信した証明書の検証を有効または無効にするために使用されます。たとえば、証明書が期限切れになっていると、通常は、エラーがスローされます。ただし、このプロパティがfalseに設定されている場合、検証エラーがスローされずに証明書が許可されます。デフォルト値はtrueであり、デフォルトでは、Oracle B2Bは証明書を検証します。

b2b.checkDuplicate

重複メッセージをチェックするには、このプロパティをtrue (デフォルト)に設定します。

このプロパティがfalseに設定されている場合、着信ビジネス・メッセージの重複チェックは実行されません。

デフォルトでは、Oracle B2Bは着信メッセージのビジネス・メッセージIDに基づいて重複メッセージをチェックします。

重複RosettaNetメッセージの処理を有効化するには、このプロパティをfalseに設定する必要があります。

すべてのドキュメント・プロトコルでこの機能を使用できます。このチェックは、ビジネス・メッセージIDにのみ基づいているので注意してください。これを再現する方法の例では、次のPDFドキュメントの6ページ目にあるファイル名形式を使用します:

http://www.oracle.com/technetwork/middleware/b2b-integrations/learnmore/tnb2b11g002-326857.pdf

Oracle B2Bへのインバウンド(リクエスト): メッセージの送信

書式:

%TO_PARTY%_

%DOCTYPE_NAME%_

%DOCTYPE_REVISION%_

%MSG_TYPE%_

%MSG_ID%

ファイル名の例: SalesInc_850_4010_1_1234.dat

ビジネス・メッセージIDは1234です。最初に使用されるファイルは問題ありません。同じ名前の2番目のファイルが使用されると、B2Bで b2b.checkDuplicateがtrueに設定されている場合、メッセージの状態がMSG_ERRORとしてマークされます。これは、インバウンド・メッセージのみが対象です。プロパティ・チェックは、UIまたはコマンドライン・ユーティリティから再発行されたインバウンド・ワイヤ・メッセージには適用されません。

b2b.rejectDuplicateMessage

このプロパティがtrueに設定されている場合、バッチ内に同じメッセージIDを持つ重複メッセージは存在できません。そのようなメッセージが送信された場合、Oracle B2BによってメッセージのメッセージIDが変更され、該当するメッセージがERROR状態に設定されます。

また、「レポート」ページで次のエラーがレポートされます:

「同じメッセージIDを持つ重複するメッセージがバッチに見つかりました。元のメッセージID <org_msg_id>を新しいメッセージID <org_msg_id+timestamp>に変更しています。メッセージは却下されます。」

このプロパティのデフォルト値はfalseです。

b2b.useJMSDataSourceCache

JMSオブジェクトまたはSOAデータ・ソース情報がキャッシュされるかどうかを決定するには、このプロパティを設定します。

このプロパティの値は、trueまたはfalseです。デフォルトでは、この値はtrueです。プロパティがtrueに設定されている場合、Oracle B2Bはキャッシュ内でJMSオブジェクトまたはSOAデータ・ソースを検索します。キャッシュ・ヒットがある場合、キャッシュ値が返されます。それ以外の場合は、参照値が返されます。このプロパティは、増分的なパフォーマンスの向上を目的として使用される可能性があります。

b2b.additionalDebugInfo

値はLogDir=<directory>です。directoryは、ファイルのb2b.batchMonitorStragglerBatchNameおよびb2b.batchMonitorStragglerTimeLagの値を書き込む場所です。BatchStragglerKeySet_<unique_guid>.datファイルには、b2b.batchMonitorStragglerBatchNameおよびb2b.batchMonitorStragglerTimeLagの値が含まれます。BatchStragglerKeySet_<unique_guid>.datファイルには、バッチ処理中のb2b.batchMonitorStragglerBatchNameのキー名が含まれます。

このプロパティの値を指定する場合のみ、これらのファイルが作成されます。ロギングを無効化するには、このプロパティを削除します。

ノート:

ディレクトリ名が正しくないか、ファイル作成が特定のディレクトリで失敗した場合、ファイルに書き込まれません。このプロパティを定義しているかぎり、情報が引き続きサーバー診断に情報として記録されます。

b2b.deploy.validation

デプロイメント中の検証をオフにするには、このプロパティをfalseに設定します。

これは、データが有効であることが確認されているアグリーメントを多数デプロイする際に役立ちます。

b2b.ebMS.ProtMsgId.prependHost

このプロパティをtrueに設定すると、プロトコル・メッセージIDおよびプロトコル・コラボレーションIDの値の前にホスト取引パートナ名が付きます。デフォルトでは、このプロパティはfalseに設定されます。

たとえば:

b2b.ebMS.ProtMsgId.prependHostfalseの場合、値は次のようになります。

  • プロトコル・メッセージID: @0A261B4D13F33830161000006AB9B3F8

  • プロトコル・コラボレーションID: @0A261B4D13F33830161000006AB9B3F8

b2b.ebMS.ProtMsgId.prependHosttrueの場合、値は次のようになります。

  • プロトコル・メッセージID: INDIGO@0A261B4D13F33830161000006AB9B3F8

  • プロトコル・コラボレーションID: INDIGO@0A261B4D13F33830161000006AB9B3F8

ここで、INDIGOはホスト取引パートナ名です。

b2b.mdsCache.minutesToLive

MDSキャッシュがメモリーに永続的に格納されるように指定するには、このプロパティを0に設定します。このプロパティのデフォルト値は5ですが、これはオブジェクトが5分間使用されないと、そのキャッシュが削除されることを意味します。このプロパティには、0または他の任意の0以外の値を設定できます。

b2b.encoding

このプロパティは、デフォルトのUTF-8以外のエンコーディングを指定するために使用できます。

b2b.errorsCumulativeReported

エラーが累積で、または累積しないで報告されるように指定するには、このプロパティをtrueまたはfalseに設定します。

エラーが累積の方式で報告されるようにするには、このプロパティをtrue(デフォルト)に設定します。

falseに設定すると、エラー・テキストおよびエラーの説明のフィールドは説明と連結されず、説明は新しい行で開始されます。

このプロパティは、EDIバッチ処理のエラー・メッセージで最も役立ちます。

b2b.transportCache

トランスポート・キャッシュで、トランスポート・レイヤおよびエンジン間のトランスポート・メッセージ・オブジェクトをキャッシュするには、このプロパティをtrueに設定します。

b2b.FailedMessagesDirectory

b2b.jmsRedeliveryLimitに達したときに、ファイル・システムに書き込まれる失敗したアプリケーション・メッセージの場所を変更するには、このプロパティを設定します。このプロパティを別のフォルダに設定することによって、場所をデフォルトから別の場所に変更できます。

b2b.HAInstance

構成されているFileチャネル、FTPチャネルまたは電子メール・チャネルのポーリング・スレッドが、高可用性(HA)クラスタ内の1つのノードのみで起動されることを保証するには、このプロパティをtrueに設定します。このプロパティが設定されていない場合、各ノードで独自のポーリング・スレッドが起動されるので、同じファイルが複数回取得される可能性があります。

このプロパティのデフォルト値はfalseです。

各ノードを想定されるHAモードで確実に動作させるには、クラスタ内の全ノードを再起動する必要があります。

b2b.IDENTIFY_TP_BY_HOSTNAME

ホスト名がマスクされるTCPベースの交換プロトコル(MLLPやGeneric TCPなど)の場合に、Oracle B2Bが各メッセージのホスト名を決定できるようにするには、このbooleanプロパティをtrueに設定します。

trueに設定すると、Oracle B2BはホストのIPアドレスからホスト名を取得します。

falseに設定すると、Oracle B2BはIPアドレスからホスト名を参照しません。

このプロパティのデフォルト値はtrueです。

b2b.ignoreTPWithAsterisk

B2B UIが、パートナ・プロファイル内のクライアントIPアドレスの汎用IDを使用して構成されている場合に、パートナがドキュメントの送信元になるIPアドレスの範囲をマスクの形式(たとえば、120.12.23.*)で指定していると、B2Bは送信者を認識できなくなり、Agreement Not Found Error (アグリーメント未検出エラー)によって失敗します。このブール型プロパティをtrueに設定すると、B2Bはアグリーメントを検出できるようになります。

このプロパティのデフォルト値はfalseです。

b2b.fabricRetryCount

このプロパティは、ファブリックへのメッセージの失敗の再試行が何回試みられるかを指定します。ファブリックでは再試行数はグローバルなプロパティで、非ファブリックでは再試行数はチャネルの再試行数です。

b2b.fabricRetryInterval

このプロパティは、ファブリックへのメッセージの配信を再試行するまでの秒数を指定します。

b2b.TPBasedSeqTarget

チャネル名または取引パートナ名を順序付けのターゲットとして有効にするには、このプロパティをtrueに設定します。

メッセージにアクション名の一部として順序付けのターゲットがある場合、そのメッセージ・プロパティに優先度が与えられます。ただし、メッセージ・レベルの順序付けのターゲットがなく、プロパティ(b2b.TPBasedSeqTarget)が有効な場合、取引パートナ名が順序付けのターゲットと見なされます。

順序付けを有効にする方法を次に示します。

  • TCP: 順序付けが(取引パートナに直接接続しているチャネルで)有効であり、TARGETが指定されていない場合、取引パートナ名をTARGETとして使用してキャッシュを問い合せます。これは、10のエントリ・ポイントで発生します。

  • TCP以外のプロトコル: TCP以外のプロトコルではチャネルは双方向ではないため、TO-PARTY名をTARGETとして使用します。

  • 非ファブリック: アウトバウンド・リスニング内部チャネルのチャネル内の順序付けフラグを使用します。

b2b.showEncryptedData

暗号化済RosettaNetメッセージが交換される場合、パック・メッセージの内容を表示するには、このプロパティをtrueに設定します。

b2b.threads.LogStatusInterval

b2b.threads.LogStatusLevel

使用可能なスレッドのプールから一定期間内にアクティブになったインバウンド・スレッドおよびアウトバウンド・スレッドの数を記録するには、この機能を使用します。Oracle B2Bは、名前や最終アクティブ・ステータスなどのイベント・スレッド情報をDMSメトリックおよび診断ログに定期的にパブリッシュします。デフォルトでは、スレッド情報は30分おきにログ・レベルDEBUGでパブリッシュされます。

これらのプロパティを使用して、間隔とログ・レベルを変更できます。

b2b.threads.LogStatusLevelに設定可能な値は、DEBUGINFORMATIONWARNINGおよびERRORです。

この機能が動作する条件は次のとおりです。

  • b2b.threads.LogStatusLevel = DEBUGの場合、サーバー・ログ・レベルをTRACEに設定する必要があります。

    b2b.threads.LogStatusLevel = INFORMATIONの場合、サーバー・ログ・レベルをNOTIFICATIONに設定する必要があります。

サンプル出力:

<Mar 3, 2011 11:37:01 PM PST> <Error> <oracle.soa.b2b.engine> <BEA-000000>

<B2B Thread Name :

weblogic.work.j2ee.J2EEWorkManager$WorkWithListener@f6e5fd8 - Direction :

Default - Status : ACTIVE>

b2b.addAllDocParams

このプロパティをfalseに設定すると、インポートZIPに不要または未設定のパラメータは追加されなくなります。

b2b.useDefaultQuery

このプロパティをfalseに設定すると、「受信タイム・スタンプ」が空白になり、「送信タイム・スタンプ」が自動的に入力されます。

デフォルト値はtrue

b2b.refreshCache

このプロパティをtrueに設定すると、失敗した場合にキャッシュをリフレッシュして再試行する必要があるかどうかを示します(EBMSの場合のみ。)このプロパティを設定する必要があるのは、キャッシュ同期が設定されていないクラスタ環境のみです。

デフォルト値はfalseです。

b2b.commitTxnOnMsgDelivery

このプロパティをtrueに設定すると、メッセージをバックエンドに配信する際にデータベース・トランザクション・メッセージを(中間)コミットする必要があるかどうかを示します。このパラメータが設定されていない場合、メッセージはバックエンドに配信されますが、データベース・レコードはコミットされません。

b2b.inboundThreadCount

b2b.outboundThreadCount

b2b.defaultThreadCount

b2b.inboundSleepTime

b2b.outboundSleepTime

b2b.defaultSleepTime

メッセージ処理を向上させるためにスレッド数とスレッドのスリープ時間を設定するには、これらのプロパティを設定します。

b2b.inboundThreadCountおよびb2b.outboundThreadCountの推奨値は、システムによって異なります。2GBのコンピュータの場合、3から5に設定することをお薦めします。

Oracle B2Bがシングル・スレッド・モード(デフォルト)で実行されている場合、アウトバウンドHTTPメッセージがブロックされると、Oracle B2Bで後続のメッセージを処理できなくなる場合があります。HTTP配信のデフォルトのタイムアウトは60秒です。タイムアウトによってメッセージはエラーとなり、処理の障害はなくなります。処理の遅延をなくすには、スレッド数プロパティb2b.outboundThreadCount3または4スレッドに増やすことをお薦めします。

b2b.inboundThreadCountおよびb2b.outboundThreadCountが設定されている場合、b2b.defaultThreadCountは、インバウンド・メッセージまたはアウトバウンド・メッセージ以外のイベントを処理するスレッド数を設定します。たとえば、自動再試行、手動再送信、取引パートナ・アグリーメントのデプロイメント、メッセージの一括バッチ処理、バッチ処理の送信などのイベントは、b2b.defaultThreadCountスレッドによって処理されます。b2b.inboundThreadCountおよびb2b.outboundThreadCountが設定されていない場合、b2b.defaultThreadCountスレッドは、インバウンド・メッセージまたはアウトバウンド・メッセージを含むすべてのイベントを処理します。

b2b.inboundSleepTimeb2b.outboundSleepTimeおよびb2b.defaultSleepTimeプロパティは、メッセージ処理後にスレッドをスリープにします。10から1000 (ミリ秒)の間の設定をお薦めします。

b2b.jmsRedeliveryLimit

このプロパティを設定することによって、JMSキューからのメッセージの読取りに対する再試行制限を変更できます。Oracle B2Bは、指定された回数、メッセージの読取りを再試行するようになります。デフォルトの再試行制限は5です。

制限回数に達すると、メッセージおよびヘッダーの内容はファイル・システムに書き込まれます(デフォルトの場所は/tmpフォルダです)。Oracle B2Bは、例外メッセージもJMS - B2B_IN_QUEUEに送信して、エラーを報告し、保存されたメッセージの場所を示します。

b2b.FailedMessagesDirectoryを設定して、エラーが発生したメッセージの場所を指定できます。

b2b.listening.channel.restart.wait

Oracle B2Bは、リスニング・チャネルに対して複数のファイル・モニター・スレッドを作成する場合があります。このプロパティを使用して長い間隔を設定すると、初期化中にスレッドの競合状態を回避するのに役立ちます。

b2b.MaxTimeinAquiredState

再起動後に自動スタック・ハンドラがメッセージの処理を再開しないという問題を回避するには、このプロパティを設定します。

b2b.MaxTimeinAquiredStateプロパティの時間単位は分単位であり、30がデフォルト値です。

b2b.mdsCache cache_size

メタデータ・サービス(MDS)インスタンスのキャッシュ・サイズを設定するには、このプロパティを設定します。

xmx-to-mdsCache値の比率として5:1をお薦めします。たとえば、xmxサイズが1024の場合、mdsCacheに200MBを維持します。

b2b.OutboundDispatchInterval

ディスパッチのサイクル間の遅延を制御するには、このプロパティを使用します。このプロパティを設定して、順序付けされたメッセージのディスパッチ間で待機する時間(ミリ秒単位)を指定します。

このプロパティを有効にすると、ディスパッチのサイクル間の遅延が制御されます。このプロパティは、メッセージの順序付け機能および取引パートナ停止時間スケジュール機能とともに使用できます。

自動スタック・ハンドラの使用時は、Oracle B2Bはエラーが発生したアウトバウンド・メッセージを順番に再試行します。エンドポイントで配信準備が完了すると、順序内のすべてのメッセージが配信可能になるので、エンドポイントでメッセージ配信のオーバーロードが発生する可能性があります。負荷を軽減するために、このプロパティを使用してメッセージのディスパッチの間隔をミリ秒単位で設定できます。

b2b.payloadObfuscation

ペイロードの不明瞭化をオンにするには、このプロパティをtrueに設定します。

詳細は、「ペイロードの不明瞭化」を参照してください。

b2b.setDynamicNameSpace

Oracle B2B 10gのEDI ecsおよびxsdファイルを使用するには、このプロパティをtrueに設定します。

Oracle B2B 10gで使用されていたEDI ecsおよびxsdファイルをOracle B2B 11gで使用する場合、XEngineによって変換済XML用の動的ネームスペースが生成される場合があります。たとえば、

xmlns="NS_31CA8D0F33324F95A0BF15D85539C27E20060518215520"

インバウンドEDIメッセージに対する動的ネームスペース生成をオフにするには、このプロパティをfalseに設定します。

b2b.SyncAppDelivery

コールアウトを使用する場合、バックエンド・メッセージ・キューへのメッセージ配信を有効化するには、このプロパティをtrueに設定します。メッセージ配信を無効化するには、このプロパティをfalseに設定します。デフォルトでは、このプロパティは無効化(falseに設定)されています。このプロパティは、大文字と小文字が区別されます。

b2b.setisLargePayloadPropertyForSmallMsg

Oracle B2Bではペイロードのサイズが(構成されているサイズに比べて)大きい場合のみLARGE_PAYLOADヘッダー・プロパティがtrueに設定されます。ペイロードのサイズが小さい場合、LARGE_PAYLOADヘッダー・プロパティは設定されません。小さいペイロードに対してもLARGE_PAYLOADプロパティを設定するには、b2b.setisLargePayloadPropertyForSmallMsgプロパティをtrueに設定します。

このプロパティのデフォルト値はfalseです。

b2b.listening_channels.continue_reconnect

SFTPまたはJMSなどのリソース・サーバーが停止している場合、デフォルトでは、Oracle B2Bは指定された回数のみ再接続を試みます。ただし、指定された回数以内に再接続できない場合、単に特定のリスニング・チャネルを停止します。

このプロパティがtrueに設定されている場合は、停止時間中ずっとリソース・サーバーへの再接続を試みます。

リソース・サーバーは、SFTPの場合はSFTPサーバー、JMSの場合はJMSサーバーです。

このプロパティのデフォルト値はfalseです。

b2b.reuseHttpConnections

このプロパティの値をtrueに設定すると、HTTP接続は再利用されます。このプロパティのデフォルト値はfalseです。デフォルト値を使用する場合、同じURLに連続してアクセスする際、HTTP接続のオープンとクローズを繰り返します。

ただし、このプロパティが有効になるかどうかは、他のプロパティの値に依存します。HTTP接続を再利用する際にHTTPClient.HTTPConnection.setCurrentProxyをコールする場合、取得したHTTP接続インスタンスでプロキシ設定が実際に変更されている場合にのみ、副作用としての変更(HTTP接続の再利用、ソケットのクローズなど)が実行されます。setCurrentProxyをコールしてもHTTP接続インスタンスに現在設定されている値が適用される場合、setCurrentProxyコールは無視されます。

したがって、HTTPClient.HTTPConnection.getProxyHostHTTPConnection.getProxyPortの値を新しく提示される値と比較して、値が異なる場合のみHTTPConnection.setCurrentProxyをコールする必要があります。

b2b.deliverPingPongToBackend

ebMSでは、Ping/Pongメッセージを使用してサーバー状態を確認できます。b2b.deliverPingPongToBackendプロパティをtrueに設定すると、Oracle B2Bでそれらのメッセージを受信したときに、そのままバックエンド・アプリケーションに渡すことができます。

このプロパティのデフォルト値はfalseであり、Oracle B2Bが受信したPing/Pongメッセージは強制的に消費されます。

b2b.SingleTransactionAtInbound

インバウンドMLLP HAの場合、ワイヤ・メッセージがデータベースにコミットされてからイベントがイベント・キューにエンキューされるまでにサーバーがクラッシュした場合、サーバーは順序マネージャ表内に永続的に停滞し、処理されません。これによって、順序付けにおけるインバウンド・メッセージ・フローがブロックされます。

MLLP HAの場合のみ、b2b.SingleTransactionAtInboundをtrueに設定して、JMSとデータベースのコミットが単一のトランザクションで行われるようにします。これは、一度に1つのインバウンド・メッセージのみ受信するMLLPにのみ適しています。

このプロパティのデフォルト値はfalseです。

b2b.retainmsgid

この値をtrueに設定すると、アプリケーション・メッセージを再発行する際、メッセージID、プロトコル・メッセージIDおよびコラボレーションIDの@msgidが維持されます。

この値をfalseに設定すると、メッセージIDの@msgidは維持されますが、プロトコル・メッセージIDおよびコラボレーションIDには新しいIDが発行されます。

このプロパティのデフォルト値はfalseです。

b2b.TPACache

このプロパティを使用して、取引パートナ・アグリーメント(TPA)レイヤー処理キャッシュを有効化または無効化します。デフォルトでは、このプロパティは有効化されていません。

プロパティの制限: TPAキャッシュは、アグリーメント・デプロイメントを使用して、値の変化をリフレッシュします。したがって、このパラメータが有効な場合、チャネル・パラメータの変更の即時取込みは機能しません。それには、アグリーメントのデプロイが必要です。このパラメータへの変更を適用するには、サーバーを再起動する必要があります。

このパラメータの有効な値はlocalです。

b2b.optimizeStorage

このプロパティを使用して、ビジネス・インスタンス、ワイヤ・インスタンスおよびアプリケーション・インスタンス(可能な場合)の間で、ペイロードのストレージを最適化(共有)するかどうかを決定します。このプロパティを適宜設定すると、ペイロードが保持され、データベース・レイヤーのI/O負荷が軽くなります。このパラメータへの変更を適用するには、サーバーを再起動する必要があります。

このパラメータの有効な値はtruefalse (デフォルト)です。

b2b.DispatcherCache

このプロパティを使用して、ディスパッチャ処理キャッシュを有効化または無効化します。デフォルトでは、このプロパティは有効化されていません。このパラメータへの変更を適用するには、サーバーを再起動する必要があります。

このパラメータの有効な値はlocalです。

b2b.enableDeliveryHelper

バックエンド・アプリケーションにメッセージをディスパッチするためのスレッドを個々に生成するには、このプロパティを使用します。インバウンド・ディスパッチャのパフォーマンスを向上するには、このプロパティを有効化します。このパラメータへの変更を適用するには、サーバーを再起動する必要があります。

このプロパティの有効な値はtrueまたはfalseです。

b2b.sequencingFetchSize

このプロパティを使用して、順序付けフェッチのバッチ・サイズを定義します。インバウンド・ディスパッチャまたはアウトバウンド・ディスパッチャは、1回のフェッチでの特定の順序付けターゲットに対するメッセージの<batchsize>の値を取得しようと試みます。このプロパティのデフォルト値は20です。このプロパティへの変更を適用するには、サーバーを再起動する必要があります。

このパラメータの有効な値はIntegerです。

b2b.fromHeaderName

HTTPのFromメッセージ・ヘッダーにIPアドレスにマップ可能な値が格納されている場合、Oracle B2Bはその値をIPアドレスに変換します。このIPアドレスがリモート取引パートナ識別子、特にGeneric識別子に含まれていない場合、Oracle B2Bはメッセージの送信元の取引パートナを識別できません。

メッセージ受信時に、Oracle B2BがFromメッセージ・ヘッダーから抽出した値とリモート取引パートナに指定されているGeneric識別子をそのまま(IPアドレスに変換せずに)比較できるように、このプロパティを使用してヘッダー名の値を指定します。

このプロパティの値は、大文字と小文字が区別されます。したがって、ヘッダーは、メッセージで渡される値と正確に一致する必要があります。

このプロパティの値の書式を次に示します。

<header name>#<header name2>...

この値には、sender_id#receiver_idのように、#で区切って複数のヘッダー名を指定できます。

b2b.auditFileLocationb2b.maxNumAuditFile

b2b.auditFileLocationは、コンポジット・フロー・トレースのEM URLを取得するために使用します。このプロパティには、文字列値を設定します。

例:

b2b.auditFileLocation=/tmp/audit.log

b2b.maxNumAuditFileは、監査ログの最大数を指定するために使用します。このプロパティのデフォルト値は10です。

書式: audit-<managed server name>.log.<n>o (n=0,1,2,3)

例:

b2b.maxNumAuditFile= 10

監査ファイルはCSV形式で格納されます。

b2b.TreatRNIFasRNDocument

このプロパティを使用して、RosettaNetドキュメントを指定します。このプロパティをtrueに設定して、ドキュメントをRNExchangePluginから受信した場合、ドキュメントの指定は正常です。

このプロパティをfalseに設定した場合、ドキュメントはXPath式とその値で特定されます(カスタム・ドキュメントと同じです。)

b2b.mdnAliasesAndAlgorithm

AS2のインバウンド・メッセージで署名MDNがリクエストされている場合、アウトバウンドMDNの署名が必要です。ただし、B2BにはMDNの署名に必要な秘密キーに関する情報がないか、使用されるアルゴリズムがありません。これは、このプロパティを使用して、AS2メッセージのネガティブMDNの署名を処理することで解決されます。このプロパティの値の書式を次に示します。

B2BHost=<default alias to sign>:<default algorithm>;<TP1>=<alias1>:<alg1>;...<TPn>=<aliasn>:<algn>

例:

B2BHost=b2bs0:md5;ACME=stg_2010:md5;GLOBALCHIPS=stage2014:sha1

このプロパティはAS2交換プロトコルにのみ影響します。プロパティを有効にするために管理対象サーバーを再起動する必要はありません。

b2b.fromTPXPath

このプロパティを使用して、ペイロードから取引パートナ名を抽出する必要があるXPathをインクルードします。

メッセージを受信すると、Oracle B2BはEnterprise Managementコンソールで指定されているXPathを使用してペイロードから取引パートナ名を抽出し、その値をGeneric識別子として指定されている値と比較して、メッセージの送信元の取引パートナを決定します。

ノート: XPathの末尾に/text()をインクルードしないでください。インクルードした場合、Oracle B2Bはパスを見つけられません。

b2b.correlateResponse

このプロパティを使用して、Oracle B2Bでの相関付けを切り替えます。

このプロパティのデフォルト値はtrueです。

このプロパティをfalseに設定した場合、Oracle B2Bは、エンキューされたアウトバウンド・メッセージを、replyToMsgIDフィールドで指定されているIDを持つ既存メッセージと相関付けません。

b2b.protMsgIdAsBmId

このプロパティをtrueに設定すると、Oracle B2BはプロトコルMsgIDをバックエンド・アプリケーションに送信できます。

このプロパティのデフォルト値はfalseです。

b2b.sqldumpTimeRange

このプロパティを設定して、SQLダンプの時間範囲を取得します。このプロパティは、診断フレームワークの実装時に使用されます。時間は分単位です。

b2b.flowTraceEMURL

Oracle B2Bがあるドメインでホストされ、Oracle SOAコンポジット(Oracle JMSアダプタとJMSオプション)が別のドメインにデプロイされている場合(Oracle Enterprise Manager Fusion Middleware Controlが別のドメインにある)、Oracle B2Bにはコンポジットがデプロイされているドメインへのリンクを提供するメカニズムが必要です。

ECIDに基づいてインスタンスのメッセージ・フローを追跡するために、このプロパティを使用してOracle SOAコンポジットのドメインURL詳細を指定します。

このプロパティの値を設定するための形式は次のとおりです。

http://<host>:<port>#<domain_name>#<domain_type>

また、Oracle B2Bコンソールを使用して、デリバリ・チャネル・レベルでこのURL詳細を指定できます。

このURLは、Oracle B2B Application Messageレポートの個々のメッセージの「フローのトレース」リンクとして使用できます。

「フローのトレース」リンクの作成時、Oracle B2Bはまずチャネル・レベルで値が指定されているかどうかを確認します。値が存在する場合は、その値を使用してURLリンクが作成されます。値が存在しない場合、Oracle B2BはOracle Enterprise Manager Fusion Middleware Controlでb2b.flowTraceEMURLが設定されているかどうかを確認します。設定されている場合、そのプロパティ値を使用してURLリンクが作成されます。値が両方とも設定されていない場合、デフォルトでは、Oracle B2Bはコンポジットがローカル・ドメインで使用可能であると想定して、URLリンクを作成します。

『Oracle SOA SuiteおよびOracle Business Process Management Suiteの管理』Oracle B2Bロギング・モードの構成に関する項を参照してください。

b2b.b2bReportsURL

Oracle Enterprise Manager Fusion Middleware Controlがホストされているドメインでこのプロパティを(b2b.flowTraceEMURLとともに)設定して、Oracle B2Bコンソールのレポートの「フローのトレース」URLリンクを構築します。

このプロパティの値を設定するための形式は次のとおりです。

http://<host>:<port>

ノート: 現在、Oracle SOA Suiteは複数のSOAドメインと1つのOracle B2Bインスタンスの追跡をサポートしています。これは、このプロパティがグローバル・レベルで設定されるからです。

b2b.TPAbasedebMSIdValidateAndOverride

このプロパティにより、次が実行されます。

  • インバウンド・フローとアウトバウンド・フローの両方で、ミドルウェアまたは取引パートナから送信される取引パートナ識別子を、アグリーメントに構成されている識別子と照合して検証します。

  • バックエンド・アプリケーションまたは取引パートナから送信された識別子を使用して、アグリーメントに構成されている識別子をオーバーライドします。

デフォルト値はfalseです。

b2b.TPAbasedebMSIdValidateAndOverride= trueの場合:

  • アグリーメントに識別子としてID1とID2が構成され、インバウンド・メッセージの識別子がID2である場合、バックエンド・アプリケーションにはID2が送信されます。

    ノート: これはアウトバウンド・メッセージに適用されます。

  • アグリーメントに識別子としてID1とID2が構成され、インバウンド・メッセージの識別子がID3である場合、取引パートナに識別子としてID3が構成されていても、アグリーメント識別エラーになります。

  • 特定の識別子タイプを持たないアウトバウンド・メッセージの場合、ebMSメッセージ・ヘッダーでは名前識別子が使用されます。

b2b.TPAbasedebMSIdValidateAndOverride= falseの場合:

識別はプロファイルに構成されている識別子との照合によって実行され、ebMSヘッダーではアグリーメントに構成されている識別子が使用されます。

b2b.resubmitOutboundAck

このプロパティをtrueに設定すると、アウトバウンド確認を再発行できます。

デフォルト値はfalseです。

b2b.defaultCustomDocTypeVersion

AS2デリバリ・チャネルを通じてペイロードをインバウンドとして受信すると、B2Bではドキュメント・プロトコルの識別を試みますが、ペイロードに参照する識別子がないため、これは不可能です。ペイロードは、任意のフラット・ファイルまたはバイナリ・ファイルのペイロードです。プロトコルを定義するには、これをバイナリに設定します。

b2b.defaultCustomDocType

AS2デリバリ・チャネルを通じてペイロードをインバウンドとして受信すると、B2Bではドキュメント・プロトコルの識別を試みますが、ペイロードに参照する識別子がないため、これは不可能です。ペイロードは、任意のフラット・ファイルまたはバイナリ・ファイルのペイロードです。プロトコルを定義するには、これを汎用に設定します。

b2b.httpsTrustStore

このプロパティがtrueに設定されている場合、B2Bはhttpsデリバリ・チャネルでデフォルトの.jksファイルを使用して送信します。

コヒーレンス・システム・プロパティ

coherence.b2bDispatcherCache.size

coherence.b2bDispatcherCache.expiry

coherence.b2bTPACache.size

coherence.b2bTPACache.expiry

これらのシステム・プロパティを使用して、キャッシュ・サイズおよび有効期限を調整できます。

各システム・プロパティのデフォルト値を次に示します。

coherence.b2bDispatcherCache.size - 20000

coherence.b2bDispatcherCache.expiry - 3分

coherence.b2bTPACache.size - 20000

coherence.b2bTPACache.expiry - 30分

configmbeanutilユーティリティの使用

configmbeanutilユーティリティを使用してプロパティを設定することもできます。

configmbeanutilユーティリティを使用するには:

  1. MW_HOME環境変数を、Fusion Middlewareのインストール・ディレクトリを指すように設定します。たとえば、
    setenv MW_HOME /scratch/$user/fmwhome
    

    ノート:

    Fusion Middlewareのディレクトリにアクセスするには、ホスト、ポート、ユーザーおよびパスワードの情報が含まれたMBeanプロパティ・ファイル(mbeanutil.properties)を指定する必要があります。たとえば、

    host=myfmw.com
    port=7001
    user=weblogic
    password=mypwd 
  2. JAVA_HOME環境変数を設定します。たとえば、
    setenv JAVA_HOME ${MW_HOME}/jdk160_14_R27.6.4-18
    
  3. Java binディレクトリをPATH環境変数に追加します。たとえば、
    setenv PATH ${JAVA_HOME}/bin:${PATH}
    

例F-1 すべてのプロパティのコンソールへの出力

java -cp $MW_HOME/soa/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME
/wlserver/server/lib/wljmxclient.jar:$MW_HOME/oracle_common/modules/
glassfish.el_1.2.0.0_2-2.jar oracle.tip.b2b.utility.ConfigMBeanUtility 

例F-2 プロパティの追加

java -cp $MW_HOME/soa/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME
/wlserver/server/lib/wljmxclient.jar:$MW_HOME/oracle_common/modules/
glassfish.el_1.2.0.0_2-2.jar oracle.tip.b2b.utility.ConfigMBeanUtility 
add b2b.test cool ok

例F-3 プロパティの更新

java -cp $MW_HOME/soa/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME
/wlserver/server/lib/wljmxclient.jar:$MW_HOME/oracle_common/modules/
glassfish.el_1.2.0.0_2-2.jar oracle.tip.b2b.utility.ConfigMBeanUtility 
update b2b.test thru

例F-4 プロパティの削除

java -cp $MW_HOME/soa/soa/modules/oracle.soa.b2b_11.1.1/b2b.jar:$MW_HOME
/wlserver/server/lib/wljmxclient.jar:$MW_HOME/oracle_common/modules/
glassfish.el_1.2.0.0_2-2.jar oracle.tip.b2b.utility.ConfigMBeanUtility 
remove b2b.test

例F-1例F-2例F-3および例F-4に、このユーティリティの使用方法を示します。