B2Bコマンドライン・ツールは、多数のタスクに使用できます。
注意: コマンドライン・ツールは、管理者のみが使用することを想定しています。 ログイン・ユーザーによるデータのパージ、インポートまたはエクスポートを防止するためのセキュリティ・チェックまたは権限チェックは実行されません。 |
注意: すべてのコマンドライン・ツールは、JNDI資格証明なしで実行できます。 匿名によるコマンドライン・ツールの使用を制限するには、jndi.properties ファイルに次の情報を記述します。
java.naming.security.principal=weblogic
java.naming.security.credentials=weblogic_password
|
項目は次のとおりです。
コマンドライン・ツールを使用するには、その前に、次の手順を実行してください。
ORACLE_HOME
をOracle Fusion Middlewareインストール・ディレクトリに設定した後、次の環境変数を設定します。
ANT_HOME - $ORACLE_HOME/.../modules/org.apache.ant_1.7.0
JAVA_HOME - $ORACLE_HOME/.../jdk160_11
jndi.properties
を作成します。
cd $ORACLE_HOME/bin
ant -f ant-b2b-util.xml b2bcreate-prop
jndi.properties
ファイルを編集して、weblogic
パスワードを組み込みます。
Oracle B2Bでは、OracleデータベースのOracle B2Bランタイム・インスタンス・データ用のアーカイブ・メカニズムとして、Oracle Data Pumpが使用されます。 Oracle B2Bでアーカイブ機能が有効になるのは、Oracle B2BリポジトリがOracleデータベースの場合のみです。 開始日、終了日およびメッセージの状態を構成して、ランタイム・データをアーカイブまたはパージ(あるいはその両方)できます。
パフォーマンスの向上およびアーカイブとパージ・アクティビティの同期のために、各ランタイム・テーブル(B2B_BUSINESS_MESSAGE
、B2B_EXT_BUSINESS_MESSAGE
、B2B_APP_MESSAGE
、B2B_WIRE_MESSAGE
およびB2B_DATA_STORAGE
)には、新規列(JOB_ID
)が追加されています。
Oracle B2Bでは、ターゲット・ランタイム・データが、(開始日、終了日およびメッセージの状態ごとに)一意のJOB_ID
でマーク付けされます。 ランタイム・データのアーカイブを選択すると、JOB_ID
を使用してデータ・ポンプPL/SQL APIが起動され、ランタイム・データがエクスポートされます。 JOB_ID
は、ランタイム・メッセージのパージでも使用されます。
ランタイム・データのアーカイブ/エクスポート後、Oracle B2Bでは、Oracle Data Pumpを使用してOracle B2Bリポジトリにランタイム・データをインポートすることもできます。
データをアーカイブするには、その前に、権限とアーカイブ・ディレクトリを設定する必要があります。
注意: b2b_archive ユーティリティでサポートされるのは、Oracleデータベースのみです。 他のデータベースはサポートされません。 |
初期設定を実行する手順は、次のとおりです。
データベースが稼働するマシン上で、アーカイブ・ファイルをダンプするディレクトリを作成します。次に例を示します。
mkdir /tmp/archive
データベース・プロセスでデータが書き込めるように、そのディレクトリへの権限を付与します。
chmod 777 /tmp/archive
sysdba
でデータベースにログインします。
sqlplus / as sysdba
B2B_EXPORT_DIR
を設定します。
SQL> create or replace DIRECTORY B2B_EXPORT_DIR as '/tmp/archive'
SOAスキーマ・ユーザーがb2b_soainfra
の場合は、そのユーザーにエクスポート権限を付与する必要があります。
SQL> grant read, write on directory B2B_EXPORT_DIR to dev_soainfra; SQL> grant exp_full_database to dev_soainfra;
注意: アーカイブの実行前に、前述の初期設定手順を必ず実行してください。 |
データをアーカイブする手順は、次のとおりです。
soainfraスキーマ・ユーザーでログインします。
$ sqlplus b2b_soainfra/password
アーカイブ・プロシージャを実行します。次に例を示します。
SQL> exec b2b_archive_procedure('21-JAN-2008', '28-JAN-2008', 'MSG_COMPLETE', 'JAN.dmp', 'N');
プロシージャのシグネチャは次のとおりです。
b2b_archive_procedure(fromDate, toDate, messageState, fileName, shouldPurge);
注意: データをパージする前に、データをエクスポートまたはアーカイブすることをお薦めします。 第18.2項「データのアーカイブ」を参照してください。ログイン・ユーザーによるデータのパージを防止するためのセキュリティ・チェックまたは権限チェックは実行されません。
|
次のユーティリティでは、設計時データとランタイム・データの両方がパージされ、環境がインストール時の状態にリセットされます。
ant -f ant-b2b-util.xml b2bpurge
表18-2に、このユーティリティのオプションを示します。
表18-2 ant -f ant-b2b-util.xml b2bpurgeのオプション
オプション | 説明 | 設定値 | 必須 |
---|---|---|---|
mode |
設計時データのパージまたはランタイム・データのパージを指定します (下記脚注を参照)。 |
DT RT |
いいえ脚注1 |
msgState |
指定したメッセージの状態のメッセージを削除します。 ランタイム・データに使用されます。 |
MSG_COMPLETE MSG_ERROR MSG_WAIT_TRANSMIT MSG_WAIT_FA MSG_WAIT_BATCH |
いいえ。 |
purgecontrolnumber |
管理番号を削除します。 ランタイム・データに使用されます。 |
|
いいえ |
|
この日付以降に作成されたすべてのメッセージを削除します。 |
日付書式 dd-mm-yyyy hh:mm AM/PM |
いいえ |
|
この日付以前に作成されたすべてのメッセージを削除します。 |
日付書式 dd-mm-yyyy hh:mm AM/PM |
いいえ |
|
取引パートナに基づいてパージします。 |
いいえ |
|
|
いいえ |
||
|
メッセージのタイプ。 |
いいえ |
|
|
アグリーメントの名前。 |
いいえ |
|
|
いいえ |
||
|
いいえ |
||
|
アーカイブするかどうかを示します。 |
デフォルト値は |
|
|
アーカイブ・ファイルのファイル名。 |
いいえ |
脚注1 ランタイム・レコードのみを削除する場合、オプション-Dmode=RT
はb2bpurge
の必須引数です。 このオプションは、ランタイム・レコードのすべてのパージに対して設定する必要があります。設定しない場合は、すべてのメタデータとランタイム・データがパージされます (例: ant -f ant-b2b-util.xml b2bpurge -Dmode=RT
)。
注意: -Dmode=RT -Dtp= trading_partner_name オプションのみを使用すると、取引パートナ名が送信者名または受信者名と一致するすべてのレコードが削除されます。 |
例18-4 指定した日付範囲内の指定した状態のメッセージのパージ
ant -f ant-b2b-util.xml b2bpurge -Dmode=RT -Dstart=01-FEB-2009 -Dend=10-FEB-2009 -Dmsgstate=MSG_COMPLETE
注意: archivename を使用する場合、値は一意のファイル名である必要があります。 archivename に既存のファイル名が使用されている場合は、例外がスローされます。 |
注意: ログイン・ユーザーによるデータのインポートを防止するためのセキュリティ・チェックまたは権限チェックは実行されません。 |
次のユーティリティでは、構成ZIPファイルがリポジトリにインポートされます。 基本的な検証は実行されますが、デプロイメント検証のような完全な検証ではありません。 overwrite
オプションを使用しないかぎり、データは上書きされません。
ant -f ant-b2b-util.xml b2bimport -Dlocalfile=true -Dexportfile="/tmp/export.zip"
表18-3に、このユーティリティのオプションを示します。
表18-3 ant -f ant-b2b-util.xml b2bimportのオプション
オプション | 説明 | 設定値 | 必須 |
---|---|---|---|
exportfile |
エクスポート(ZIP)ファイルの場所。 |
- |
はい |
|
既存のビジネス要素を上書きします。 たとえば、インポート・ファイルのデリバリ・チャネルと同じ取引パートナ名の既存のデリバリ・チャネルは、このオプションが |
|
いいえ |
|
エクスポート・ファイルの場所がサーバー上の場合は、このオプションをtrueに設定するとパフォーマンスが向上します。 エクスポート・ファイルは、B2Bが稼働しているサーバーに存在する必要があります。 |
|
いいえ |
注意: ログイン・ユーザーによるデータのエクスポートを防止するためのセキュリティ・チェックまたは権限チェックは実行されません。 |
次のユーティリティでは、他のオプションを指定しない場合、リポジトリ全体(ポリシー詳細を除く)がエクスポートされます。
ant -f ant-b2b-util.xml b2bexport
表18-4に、このユーティリティのオプションを示します。
表18-4 ant -f ant-b2b-util.xml b2bexportのオプション
オプション | 説明 | 設定値 | 必須 |
---|---|---|---|
exportfile |
エクスポートしたデータを格納するZIPファイルの場所。 |
|
いいえ |
tpname |
エクスポート対象の取引パートナ名。 |
取引パートナの名前。 |
いいえ |
tpanames |
エクスポート対象の1つ以上のアグリーメント名。 1つのアグリーメントをエクスポートする場合、ZIPファイルにはフォルダ |
アグリーメント名はカンマを使用して区切る必要があります。 |
いいえ |
active |
デプロイ済であり、アクティブの状態のアグリーメントをエクスポートします。 |
|
いいえ |
|
trueに設定すると、ユーザーとロールの詳細(ポリシー・ストアに必要)を含むリポジトリ全体がエクスポートされます。 ポリシー・ストアもエクスポートするように警告が表示されます。 詳細は、第10.2項「「インポート/エクスポート」タブからインポートまたはエクスポートするときにコピーされる情報」を参照してください。 |
|
いいえ |
|
エクスポート・ファイルがOracle B2Bと同じコンピュータ上にある場合は、trueに設定するとパフォーマンスが向上します。 |
|
いいえ |
例18-5 /tmp/Acme.zipへの取引パートナAcmeのエクスポート
ant -f ant-b2b-util.xml b2bexport -Dtpname="Acme" -Dexportfile="/tmp/Acme.zip"
次のユーティリティでは、リポジトリ内のすべてのアグリーメントが検証およびデプロイされます。 アグリーメントがすでにデプロイされている場合は、再度デプロイされます。 この結果、古いバージョンのアグリーメントは、非アクティブな状態になります。 多数のアグリーメントをデプロイするとき、データが確実に有効である場合は、検証を無効にすると便利です。 検証を無効にする場合は、SOAサーバーを再起動する必要があります。 プロパティb2b.deploy.validation
をfalseに設定すると、検証を無効にできます。
ant -f ant-b2b-util.xml b2bdeploy
表18-5に、このユーティリティのオプションを示します。
次のユーティリティでは、アグリーメント、取引パートナおよびドキュメントなどのB2Bメタデータが検証されます。 オプションを指定しない場合は、すべてのアグリーメントが検証されます。
ant -f ant-b2b-util.xml b2bvalidate
表18-6に、このユーティリティのオプションを示します。
次のユーティリティでは、cpp_cpa.properties
テンプレート・ファイルが作成されます。このファイルはpropfile
オプションで使用されます。
ant -f ant-b2b-util.xml b2bcreate-cpaprop
表18-7に、このユーティリティのオプションを示します。
表18-7 ant -f ant-b2b-util.xml b2bcpaimportのオプション
オプション | 説明 | 設定値 | 必須 |
---|---|---|---|
propfile |
|
- |
はい |
cpp_cpa properties
ファイルの一部として、次のプロパティを構成できます。
次に、CPAインポートのプロパティを示します。
oracle.tip.b2b.ebms.BPSSDocument (オプションのプロパティ)
このプロパティには、BPSSドキュメントの絶対パスが保持され、Oracle B2BリポジトリにインポートするBPSSドキュメントの詳細を取得するために使用されます。 このプロパティが存在しない場合、値はCPAドキュメントからインポートされます。 複数のBPSSドキュメントは;
(セミコロン)で区切ります。
oracle.tip.b2b.ebms.CPADocument (必須プロパティ)
このプロパティは、Oracle B2BリポジトリにインポートするCPAドキュメントの絶対パスを取得するために使用します。
oracle.tip.b2b.ebms.xsdLocation (オプションのプロパティ)
このプロパティは、スキーマ・ファイルの場所の絶対パスを指定するために使用します。 このスキーマ・ファイルは、ドキュメントの検証に使用されます。 使用されるのは、BPSSドキュメントが指定されている場合のみです。
oracle.tip.b2b.ebms.internalDeliveryChannel.protocol (オプションのプロパティ)
デフォルトの内部デリバリ・チャネルはAQキューです。 特定の内部デリバリ・チャネル(JMS/FTP/FILE/SFTP)を追加する場合、Oracle B2B構成では、このプロパティが使用されます。 特定のトランスポート・プロトコルに関するすべての必須プロパティを指定します。 その後、特定のチャネルを使用して、メッセージをバックエンド・アプリケーションに送信します。
次に、CPAエクスポートのプロパティを示します。
oracle.tip.b2b.ebms.OutputFolder (必須プロパティ)
このプロパティは、生成されたCPP/CPAファイルを、指定した場所に格納するために使用します。
oracle.tip.b2b.ebms.Host (必須プロパティ)
このプロパティは、ホスト取引パートナを設定するために使用します。
oracle.tip.b2b.ebms.HostEndPoint (必須プロパティ)
このプロパティは、CPP/CPAエクスポートの生成時にホスト・エンドポイントを設定するために使用します。
oracle.tip.b2b.ebms.HostCertificateAlias (オプションのプロパティ)
セキュアなメッセージ転送の場合、このプロパティは、CPP/CPAエクスポートに対するホスト資格証明の詳細を取得するために使用します。
oracle.tip.b2b.ebms.TPCertificateAlias (オプションのプロパティ)
セキュアなメッセージ転送の場合、このプロパティは、CPP/CPAエクスポートに対する取引パートナ資格証明の詳細を取得するために使用します。
oracle.tip.b2b.ebms.BPSSExport (オプションのプロパティ)
このブール・プロパティは、BPSSドキュメントを生成するために使用します。
次に、共通のプロパティを示します。
oracle.tip.b2b.ebms.LogDirectory (必須プロパティ)
このプロパティは、ログ・ファイルを格納するために使用します。
oracle.tip.b2b.ebms.LogLevel (必須プロパティ)
このプロパティは、DEBUG、INFO、ERRORなど、ログのモードを指定するために使用します。
oracle.tip.b2b.ebms.LogType (必須プロパティ)
このプロパティは、ログ・ファイルをテキストとして格納するか、XMLとして格納するかを指定するために使用します。
次のユーティリティでは、ebXML標準cpa.xml
ファイルがOracle B2Bメタデータ・ファイルに変換されます。変換されたファイルをOracle B2Bにインポートする必要があります。
ant -f ant-b2b-util.xml b2bcpaimport
表18-8に、このユーティリティのオプションを示します。
次のユーティリティでは、Oracle B2Bメタデータ・ファイル(Oracle B2Bからエクスポートされたデータ)がebXML標準cpa.xml
ファイル(CPA対応構成)に変換されます。
ant -f ant-b2b-util.xml b2bcpaexport
表18-9に、このユーティリティのオプションを示します。
次のユーティリティではselfservice.xsdファイルが作成されます。このファイルは、XSD構造に基づいたセルフサービスXMLの理解または作成に使用されます。
ant -f ant-b2b-util.xml b2bselfservicexsd
次のユーティリティでは、selfservice.xsdに基づいて作成されたXMLファイルからOracle B2Bメタデータが作成されます。
ant -f ant-b2b-util.xml b2bselfservice
付録E、またはセルフサービス・プロトコル、識別およびセキュリティ仕様に関する情報を参照してください。
表18-10に、これらのユーティリティのオプションを示します。
表18-10 ant -f ant-b2b-util.xml b2bselfservicexsdのオプション
オプション | 説明 | 設定値 | 必須 |
---|---|---|---|
input |
XMLファイルの絶対位置 |
- |
はい |
output |
ZIPファイルとして格納されるOracle B2Bメタデータの場所 |
- |
いいえ |
例18-15 Oracle B2BメタデータZIPファイル(/tmp/soa.zipに格納)への、b2bselfservicexsd生成XMLの変換
ant -f ant-b2b-util.xml b2bselfservice -Dinput="/tmp/selfservice1.xml"
例18-16 Oracle B2BメタデータZIPファイル(/tmp/as11b2b.zipに格納)への、b2bselfservicexsd生成XMLの変換
ant -f ant-b2b-util.xml b2bselfservice -Dinput="/tmp/selfservice1.xml" -Doutput="/tmp/as11b2b.zip"
複数ファイル・アプローチを使用する場合は、セルフサービスXMLファイルの名前が次の順序であることを確認する必要があります。次の順序でない場合は、参照オブジェクトが存在しないことを示すエラーがスローされる可能性があります。
ドキンュメト・プロトコルのセルフサービスXMLファイル
取引パートナのセルフサービスXMLファイル(HOST
がこのリストの最初に記述されている必要があります)
取引パートナ・アグリーメントのセルフサービスXMLファイル
次に例を示します。
ドキュメント・プロトコルを格納するdoc_selfservice.xml
取引パートナの詳細を格納するtp_selfservice.xml
アグリーメントの詳細を格納するtpa_selfservice.xml
セルフサービスXMLのサンプルは、そのスキーマとECSファイルとともにバンドルされており、B2Bサンプル構成のB2Bメタデータと一緒に提供されます。
セルフサービスのサンプルは、$samples
/selfservice
フォルダにあります。
サンプルは、ドキュメントと交換プロトコルのすべての組合せには対応していません。 ただし、既存のサンプルのドキュメント・プロトコルと交換プロトコルの詳細を置換して、新規XMLファイルを作成できます。
注意: セルフサービスXMLファイルはXSDを使用して作成することもできます。ファイルを最初から作成する上級ユーザーにとっては、この方法が便利です。 |
X12のサンプル
X12のサンプルは、次の場所にあります。
$samples/selfservice/x12/b2b-201-X12_4010_850_File/x12_ss.xml
スキーマは、次の場所にあります。
$samples/selfservice/x12/b2b-201-X12_4010_850_File/schemas
次のコマンドを使用します。
ant -f ant-b2b-util.xml b2bselfservice -Dinput="$samples/selfservice/x12/b2b-201-X12_4010_850_File/x12_ss.xml"
カスタムのサンプル
カスタムのサンプルは、次の場所にあります。
$samples/selfservice/custom/b2b-101-Custom_1.0_orders_generic_file/custom_ss.xml
スキーマは、次の場所にあります。
$samples/selfservice/custom/b2b-101-Custom_1.0_orders_generic_file/schemas
次のコマンドを使用します。
ant -f ant-b2b-util.xml b2bselfservice -Dinput="$samples/selfservice/ custom\b2b-101-Custom_1.0_orders_generic_file/custom_ss.xml"
ebMSのサンプル
ebMSのサンプルは、次の場所にあります。
$samples/selfservice/custom/ b2b-106-Custom_1.0_orders_ebMS/buyer_setup_selfservice/ ebms_buyer_ss.xml
スキーマは、次の場所にあります。
$samples/selfservice/custom/ b2b-106-Custom_1.0_orders_ebMS/buyer_setup_selfservice/schemas
次のコマンドを使用します。
ant -f ant-b2b-util.xml b2bselfservice -Dinput="$samples/selfservice/custom/ b2b-106-Custom_1.0_orders_ebMS/buyer_setup_selfservice/ ebms_buyer_ss.xml"
次のユーティリティでは、選択したビジネス・メッセージに対するアプリケーション・メッセージまたはワイヤ・メッセージが再発行されます。
ant -f ant-b2b-util.xml b2bresubmit
注意: ペイロードの修正に対する再発行機能は、AppMessageのみのアウトバウンド・メッセージに対してのみ機能します。 インバウンドの場合は無効です。ant -f ant-b2b-util.xml b2bresubmit -Dmsgsource=appMsg -Dmsgid=12345 -Dpayloadpath=/scratch/viramamo/fmwhome/AS11gR1SOA/bin/3a4_req.xml |
表18-11に、このユーティリティのオプションを示します。
表18-11 ant -f ant-b2b-util.xml b2bresubmitのオプション
オプション | 説明 | 設定値 | 必須 |
---|---|---|---|
direction |
メッセージの方向。 |
INBOUND OUTBOUND |
はい |
msgsource |
メッセージ・ソース。 |
APPMSG WIREMSG |
はい |
|
メッセージID。 |
- |
はい |
|
ドキュメント・タイプ。 |
||
|
メッセージの状態。 |
||
|
メッセージの |
二重引用符で囲んで指定する日付書式 dd-mm-yyyy hh:mm AM/PM |
|
|
メッセージの |
||
|
アグリーメント名。 |
||
|
このオプションは、修正したファイル・パスの指定によって、アウトバウンド・アプリケーション・メッセージの再発行にのみ適用可能です。 |
例18-18 メッセージIDが12345のアウトバウンド・メッセージの再発行
ant -f ant-b2b-util.xml b2bresubmit -Ddirection=outbound -Dmsgsource=appMsg -Dmsgid=12345\
その他の例
ant -f ant-b2b-util.xml b2bresubmit -Dmsgsource=appMsg -Ddoctype=850 ant -f ant-b2b-util.xml b2bresubmit -Dmsgsource=appMsg -Dfromdate="29/11/2009 5:40 AM" -Dtodate="30/11/2009 7:39 AM" ant -f ant-b2b-util.xml b2bresubmit -Dmsgsource=appMsg -Dagreement="Acme_GlobalChips_X12_4010_850_File" ant -f ant-b2b-util.xml b2bresubmit -Dmsgsource=wireMsg -Dmsgstate=MSG_ERROR ant -f ant-b2b-util.xml b2bresubmit -Dmsgsource=appMsg -Dfromdate="29/11/2009 5:40 AM" -Dtodate="30/11/2009 7:39 AM" -Ddirection=OUTBOUND ant -f ant-b2b-util.xml b2bresubmit -Dmsgsource=appMsg -Dfromdate="29/11/2009 5:40 AM" -Dtodate="30/11/2009 7:39 AM" -Ddirection=INBOUND ant -f ant-b2b-util.xml b2bresubmit -Dmsgsource=appMsg -Dmsgid=12345 -Dpayloadpath="/tmp/850.xml"
次のパイプ中断エラーが発生した場合は、Oracle WebLogic Server管理コンソールを使用して、最大メッセージ・サイズを200000000に増加してください。
[java] Exception in thread "main" java.lang.Exception: java.rmi.UnmarshalException: Broken pipe; nested exception is: [java] java.net.SocketException: Broken pipe [java] at oracle.tip.b2b.utility.B2BCommandLineUtility.upgradeRepository(B2BCommandLineUtility.java:548) [java] at oracle.tip.b2b.utility.B2BCommandLineUtility.main(B2BCommandLineUtility.java:601) [java] Caused by: java.rmi.UnmarshalException: Broken pipe; nested exception is: [java] java.net.SocketException: Broken pipe