8 XML変換ジョブの管理
XML変換ジョブを作成してXMLファイルを目的の出力に変換し、XMLからキャプチャ・メタデータ・フィールドの値を割り当てることができます。
この章では、次の項目について説明します。
8.1 XML変換ジョブの構成
XML変換ジョブを作成して、XMLファイルを目的の出力に変換できます。
ノート:
新しいXML変換ジョブの作成を開始する前に、まずJMSキューを構成します。- 単一サーバーのJMSキューを構成するには:
- Oracle WebLogic Serverにログインします。「ホーム」をクリックし、「JMSモジュール」を選択します。
- 「JMSモジュール」ページの「サマリー」ページで、リストからcapture-jms-moduleをクリックします。
- capture-jms-moduleの「設定」ページで、「リソースのサマリー」表の「新規」ボタンをクリックします。
- 「新しいJMSシステム・モジュール・リソースの作成」ページで、「キュー」を選択して「次」をクリックします。
- それぞれのフィールドに次の値を入力します:
- 名前: capture-xsltprocessor-queue
- JNDI名: jms/capture-xsltprocessor-queue
「次」をクリックします。
- 「新しいJMSシステム・モジュール・リソースの作成」ページで、「サブデプロイメント」ドロップダウン・メニューから「CaptureSubDeployment」を選択します。JMSサーバーが表示されます。「終了」をクリックします。
- これで、新しいキューcapture-xsltprocessor-queueが追加されたことがわかります。
- クラスタ環境のJMSキューを構成するには:
- Oracle WebLogic Serverにログインします。「ホーム」をクリックし、「JMSモジュール」を選択します。
- 「JMSモジュール」ページの「サマリー」ページで、リストからcapture-jms-moduleをクリックします。
- capture-jms-moduleの「設定」ページで、「リソースのサマリー」表の「新規」ボタンをクリックします。
- 「新しいJMSシステム・モジュール・リソースの作成」ページで、「分散キュー」を選択して「次」をクリックします。
- それぞれのフィールドに次の値を入力します:
- 名前: capture-xsltprocessor-queue
- JNDI名: jms/capture-xsltprocessor-queue
「次」をクリックします。
- これで、新しい分散キューcapture-xsltprocessor-queueが追加されたことがわかります。
JMSキューが構成されているかどうかを確認するには、左側の「ドメイン構造」に移動して、「デプロイメント」を選択します。JMSキューが構成されていない場合、「デプロイメント」表の「ヘルス」列に「警告」が表示されます。それ以外の場合は「OK」が表示されます。
XML変換ジョブを作成してXMLファイルを目的の出力に変換し、XMLからキャプチャ・メタデータ・フィールドの値を割り当てることができます。これを実行するには、XSLTプロセッサ定義のサポート済組合せを構成し、カスタムXSLTファイルを指定します。さらに、XPath式をキャプチャ・メタデータ・フィールドにマップできます。変換済のXMLファイルをサードパーティ・アプリケーションで使用して、他のパーティのビジネス・ニーズにあわせることができます。
- 左側のプロシージャ・ペインで、プロシージャを選択します。
選択したプロシージャの構成ページが右側に表示されます。
- 「処理」タブを開きます。
-
「XML変換ジョブ」表で、
をクリックするか、既存のジョブを編集する場合は
をクリックします。
また、XML変換ジョブを選択して
をクリックし、プロンプトが表示されたら新規の名前を入力して、XML変換ジョブをコピーすることもできます。ジョブのコピーにより、すばやく複製し変更できます。
-
「ドキュメントの選択」ページで、次のようにします:
- 「ドキュメントの選択」セクションで次のようにします:
-
ジョブの名前と説明を入力します。
-
前のステップで行った選択に適用可能であれば、「ドキュメントの処理」チェック・ボックスを選択します。
ノート:
このチェック・ボックスを選択した場合のみ、「出力」ページで「ドキュメント宛先」セクションが有効になります。 -
特定のドキュメント・プロファイルのXML変換ジョブを処理するには、「ドキュメント・プロファイルに制限」フィールドにリストされているドキュメント・プロファイルを1つ以上選択するか、「すべて」を選択して、定義されているすべてのドキュメント・プロファイルのドキュメントを処理します。
-
- 「添付の選択」セクションで、次のようにします:
-
前のステップで行った選択に適用可能であれば、「添付の処理」チェック・ボックスを選択します。
ノート:
このチェック・ボックスを選択した場合のみ、「出力」ページで「添付宛先」セクションが有効になります。 - 使用可能な添付タイプにチェック・ボックスを選択して、必要な添付タイプに制限します。これらのすべての選択することもできます。
-
- 「ドキュメントの選択」セクションで次のようにします:
- 「変換定義」ページで:
- XML変換の実行チェック・ボックスがまだ選択されていない場合、これを選択して、このページでフィールド値を編集できるようにします。
ノート:
- このチェック・ボックスの選択を解除すると、編集は無効になりますが、最後にフィールドに保存した値は保持されます。XML変換が不要の場合、このチェック・ボックスの選択を解除できます。
- 「出力」ページを有効にするには、「XML変換の実行」チェック・ボックスを選択する必要があります。
- 「変換エンジン」セクションで次のようにします:
- 互換性のある「XSLTバージョン」、「プロセッサ」および「プロセッサ・バージョン」を選択します。システムのデフォルトを選択するか、Xalanと互換性のある使用可能なXSLTバージョンおよびSaxon-HEプロセッサとそのバージョンから選択します。
- XML、HTML、JSON、テキストなどの「出力ファイルの拡張子」を指定します。
ノート:
出力ファイルの拡張子がXMLでない場合、「フィールド・マッピング」ページが無効になります。
- 変換を実行するには、「XMLスタイルシート」セクションでXSLTをアップロードまたは入力します。
- XSLTに含めたパラメータは、「パラメータ」表で定義されている必要があります。これを行うには:
- 「パラメータ」表で、
をクリックします。
- XSLTパラメータの追加ダイアログで、パラメータ名を追加し、これに値を割り当てます。テキスト値を追加するか、パラメータ用にメタデータ値を組み立てます。
- ステップiとiiを繰り返し、必要なパラメータを定義します。
ノート:
XSLTで定義されているパラメータに値を割り当てていない場合、またはXSLTに存在しないパラメータに値を割り当てている場合、XML変換ジョブを保存できず、変換ジョブを保存しようとしたときに通知されません。
- 「パラメータ」表で、
- 「変換テスト」セクションで、変換済XMLをアップロードおよびテストし、適切に生成されていることを確認し、「次」をクリックします。このセクションの右側の上部で「プレビュー」をクリックして、このセクションでコンテンツをプレビューすることもできます。
- XML変換の実行チェック・ボックスがまだ選択されていない場合、これを選択して、このページでフィールド値を編集できるようにします。
- 「出力」ページは、「変換定義」ページで「XML変換の実行」チェック・ボックスを選択すると、有効になります。「出力」ページの「ドキュメント宛先」セクションで(このセクションは、「ドキュメント処理」セクションで「ドキュメントの処理」チェック・ボックスを選択した場合に有効になります):
- 「変換出力宛先」ドロップダウン・リストで、次のいずれかを選択します:
- ドキュメント: 元のドキュメントを変換の結果に置き換えます。必要に応じて、「新規ドキュメント・プロファイル」ドロップダウン・リストでドキュメント・プロファイルを変更することもできます。
- 添付: 変換の結果を添付として格納します。「新規添付タイプ」ドロップダウン・リストから添付タイプを選択する必要があります。
- キャプチャ・フィールド: 「キャプチャ」フィールドに変換の結果を格納します。「キャプチャ・フィールド」ドロップダウン・リストから「テキスト・フィールド」を選択する必要があります。
- 「新規ドキュメント・プロファイル」ドロップダウン・リストで、必要なプロファイルを選択します。
- 「新規添付タイプ」ドロップダウン・リストは、「変換出力宛先」フィールドで「添付」オプションを選択した場合にのみ有効になります。該当する場合は、関連するタイプを選択します。
- 「キャプチャ・フィールド」ドロップダウン・リストは、「変換出力宛先」フィールドで「キャプチャ・フィールド」オプションを選択した場合にのみ有効になります。該当する場合は、使用可能なオプションからフィールドを選択します。
- 「変換出力宛先」ドロップダウン・リストで、次のいずれかを選択します:
- 「出力」ページの「添付宛先」セクションで(このセクションは、「添付処理」セクションで「添付の処理」チェック・ボックスを選択した場合に有効になります):
- 「変換出力宛先」ドロップダウン・リストで、次のいずれかを選択します:
- 新規添付タイプ: 添付タイプを変更するオプションがあります。
- キャプチャ・フィールド: 「テキスト・フィールド」または「XMLフィールド」を選択する必要があります。
- 「新規添付タイプ」ドロップダウン・リストは、「変換出力宛先」フィールドで「添付」オプションを選択した場合にのみ有効になります。該当する場合は、関連するタイプを選択します。
- 「キャプチャ・フィールド」ドロップダウン・リストは、「変換出力宛先」フィールドで「キャプチャ・フィールド」オプションを選択した場合にのみ有効になります。該当する場合は、使用可能なオプションからフィールドを選択します。
- 「変換出力宛先」ドロップダウン・リストで、次のいずれかを選択します:
- 「フィールド・マッピング」ページで、ユーザーがXMLドキュメントから値を抽出できるように、特定の要素または属性へのナビゲーションを定義します:
- 「XPathフィールド・マッピングの実行」チェック・ボックスを選択して、「XPathフィールド・マッピング」表を編集できるようにします。このチェック・ボックスの選択を解除した場合、表は編集できなくなります。ただし、最後に保存した値は保持されます。
- 次のステップで選択する解析フォーマットが厳密に準拠している必要がある場合、解析エラーのバッチの失敗チェック・ボックスを選択します。
- 「XPathフィールド・マッピング」表の右上で、をクリックします
- 「XPathフィールド・マッピングの編集」ダイアログで次のようにします:
- 「XPath式」フィールドで選択済メタデータのデータ・フィールドにXPath式を指定して、解析フォーマットを選択します。
XPath式は、存在する場合に変換の出力で評価されます。変換を実行しない場合、XPath式はドキュメントまたは添付で評価されます。
- 日付解析フォーマット・ドロップダウン・リストで、解析フォーマットを選択します。「キャプチャ」フィールドが数値の場合、かわりに数値解析フォーマット・ドロップダウン・リストが表示されます。必要に応じて、カスタム解析フォーマットをドロップダウン・リストで選択できます。
- 「OK」をクリックします。
「XPathフィールド・マッピング」表の「XPath式」列に追加した値が選択したフォーマットで日付に解析されます。
- 「XPath式」フィールドで選択済メタデータのデータ・フィールドにXPath式を指定して、解析フォーマットを選択します。
- 「OK」をクリックします。
-
「後処理」ページで、XML変換ジョブの完了後の処理を次に基づいて指定します:
- システム・エラーなしの状況は、前のページのすべての基準が満たされた場合です。成功した変換はコミットに進むことができます。
- システム・エラーとは、レコードが見つからない、見つかったレコードが多すぎるなど、変換が失敗した場合のことです。失敗した変換の場合、バッチは修復のためにキャプチャ・クライアントに戻ります。
-
「サマリー」ページの設定を確認し、「送信」をクリックしてジョブを保存します。
-
バッチのXML変換ジョブへの進め方を構成します。「XML変換ジョブへのバッチ・フローの構成」を参照してください。
-
作成したXML変換ジョブをテストします。
8.3 XML変換ジョブへのバッチ・フローの構成
XML変換ジョブを実行するには、処理のためにジョブに送られるようにバッチを構成する必要があります。これを行うには、クライアント・プロファイルでXML変換ジョブを後処理ステップとして設定します。
バッチ・フローは次のものから構成できます:
-
クライアント・プロファイルの場合は、「クライアント・プロファイルの後処理の構成」を参照してください。
-
インポート・プロセッサ・ジョブの場合は、「後処理の構成」を参照してください。
-
ドキュメント変換プロセッサ・ジョブの場合は、「後処理の構成と監視」を参照してください。
-
認識プロセッサ・ジョブの場合は、「後処理の構成と監視」を参照してください。
8.4 XML変換ジョブの非アクティブ化または削除
XML変換ジョブを削除すると、このジョブが後処理ステップとして設定されているバッチにこのジョブは使用できなくなります。後処理に指定されたジョブが使用できない場合は、バッチにエラーが発生します。ジョブを削除する前にしばらくの間オフラインに変更して、その削除に伴う予期しない問題を解決できるようにしておくのが望ましい場合もあります。オンラインXML変換ジョブは、クライアント・プロファイルまたはプロセッサ・ジョブの「後処理」ページで選択されている場合に実行されます。ジョブを一時的に停止(オフラインに)したり、非アクティブ化されたジョブを再実行するように変更することができます。バッチ処理ジョブは、別のバッチ・プロセッサで後処理ジョブとして構成されている場合は削除できません。