Oracle® Fusion Middleware Oracle WebCenter Captureのためのスクリプトの開発 11g リリース1 (11.1.1) E51442-01 |
|
前 |
次 |
この章では、インポート・プロセッサ・スクリプトの作成について説明します。
インポート・プロセッサには多数の機能があり、インポート・プロセスのカスタマイズが必要な場合のために、様々なカスタマイズ方法があります。
この章では、次の内容を説明します。
インポート・プロセッサ用のスクリプトを開発すると、様々な機能を実行できます。一般的なタスクには、次のようなものがあります。
特定のイメージ・ファイルのインポートをスキップする
キャプチャのバッチ・プロパティを変更する
バッチのインポートをスキップする
インポート時にページ・レベルのメタデータ値を追加する
インポート後にイメージを別のフォルダに移動する
インポート・ジョブで、処理時に使用するスクリプトが指定されている場合は、インポート・プロセッサBeanによってJDKのScriptRuntimeクラスのインスタンスが作成され、ジョブで指定されたスクリプトを使用して初期化されます。インポート・プロセッサBean、インポート・マネージャBeanおよびインポート・ソースのすべてが、このスクリプト処理ランタイムを共有します。
この項では、次のイベントを定義します。
次の表に、インポート・プロセッサのイベントの定義を示します。
イベント | 説明 |
---|---|
|
このイベントは、インポート・ソースの前処理の前に発生します。初期化コードをここで実行できます。 |
|
このイベントは、インポート・プロセスの開始を表します。 |
|
このイベントは、インポート・ソースの処理が完了した後に発生します。クリーンアップ・コードをここで実行できます。 |
|
このイベントは、新しいバッチの開始直後に発生します。 |
|
このイベントは、バッチの作成直後で、ドキュメントが作成される前に発生します。 |
|
このイベントは、新しいドキュメントが作成される前に発生します。 |
|
このイベントは、新しいドキュメントが作成された後に発生します。 |
|
このイベントは、ファイルがインポートされる前に発生します。 |
|
このイベントは、ファイルがインポートされた後に発生します。 |
|
このイベントは、バッチがリリースされる前に発生します。 |
|
このイベントは、バッチがリリースされた後に発生します。 |
|
このイベントは、データベース参照の前に発生します。 |
|
このイベントは、データベース参照によって検索結果が返された後に発生します。 |
次の表に、電子メール・ソースのイベントの説明を示します。
イベント | 説明 |
---|---|
|
このイベントは、新しい電子メール・メッセージが処理される直前に発生します。 |
|
このイベントは、新しい電子メール添付ファイルが処理される直前に発生します。 |
|
このイベントは、電子メール・メッセージ後処理ステップの中で、電子メール・メッセージが削除される直前に発生します。 |
|
このイベントは、電子メール・メッセージ後処理ステップの中で、電子メール・メッセージが電子メール・フォルダに移動される直前に発生します。 |
次の表に、フォルダ・ソースのイベントの説明を示します。
イベント | 説明 |
---|---|
|
このイベントは、新しいフォルダが処理される直前に発生します。 |
|
このイベントは、フォルダ後処理ステップの中で、フォルダからファイルが削除される直前に発生します。 |
|
このイベントは、フォルダ後処理ステップの中で、フォルダ内のファイルの名前が変更される直前に発生します。 |
次の表に、リスト・ファイル・ソースのイベントの説明を示します。
イベント | 説明 |
---|---|
|
このイベントは、リスト・ファイルが格納されている新しいフォルダが処理される直前に発生します。 |
|
このイベントは、新しいリスト・ファイルが処理される直前に発生します。 |
|
このイベントは、リスト・ファイル内の新しい行が処理される直前に発生します。 |
|
このイベントは、リスト・ファイル後処理ステップの中で、リスト・ファイルが削除される直前に発生します。 |
|
このイベントは、リスト・ファイル後処理ステップの中で、リスト・ファイルの名前が変更される直前に発生します。 |
この項では、次のインポート・プロセッサのクラス定義します。
インポート・ジョブは、バッチをインポート・ソース(ファイル・システム・フォルダ、区切り形式リスト・ファイル、電子メール・サーバーの受信トレイ/フォルダなど)からインポートするよう、キャプチャ・ワークスペース内で構成されます。次の表に、インポート・ジョブのプロパティの定義を示します。
プロパティ | 説明 |
---|---|
String jobID |
ジョブをシステム内で一意に識別する値。これはGUIDとなります。 |
String workspaceID |
ジョブが属するワークスペースの識別子。 |
String jobName |
人間が判読可能なジョブ名。 |
String dbSearchID |
ジョブの処理時に使用されるデータベース検索の識別子。 |
String dbSearchFieldID |
ジョブの処理時に使用されるデータベース検索フィールドの識別子。 |
Integer imageDownsample |
この整数によって、イメージのサンプリング方法が決まります。 0: なし(イメージ形式を維持) 1: 色を8ビット・グレースケールにダウンサンプル 2: 色またはグレースケールを白黒にダウンサンプル |
Integer jpegQuality |
JPEG画質(0から99)。 |
String batchPrefix |
バッチ名の作成時に使用されるバッチ接頭辞。 |
String defaultBatchStatusID |
このジョブで作成されたバッチに関連付けられるバッチ・ステータスの識別子。 |
Integer defaultPriority |
バッチに割り当てられるデフォルトの優先度(0から10)。 |
String defaultDocumentTypeID |
このジョブで作成されたドキュメントのデフォルトのドキュメント・プロファイル。 |
Integer searchResultOption |
データベース参照で複数の結果が返されたときの処理方法を決定します。 0: 最初のレコードを使用する 1: 結果を無視する(フィールドに値を移入しない) |
String scriptID |
このジョブに使用されるスクリプトの一意の識別子。 |
Integer importFrequency |
ジョブで処理する作業をポーリングする頻度を指定する値(秒単位)。次の値を指定できます。 0: 非アクティブ 30: 30秒ごと 60: 1分ごと 300: 5分ごと 900: 15分ごと 1800: 30分ごと 3600: 1時間ごと -1: 毎日(時刻を指定) |
Integer hour |
importFrequencyが毎日に設定されている場合、ここで時刻(時)を指定します。 |
Integer minute |
importFrequencyが毎日に設定されている場合、ここで時刻(分)を指定します。 |
Date lastCheck |
処理するジョブが最後にチェックされた日時。これは、ジョブで処理する作業がポーリングされた後にインポート・ジョブ・スケジューラによって更新されます。 |
Map<String, FieldMappingInfo> fieldMappings |
ソース・メタデータ・フィールドをインポートするためにキャプチャのフィールドをマッピングする値のセット。 |
String importSourceClassName |
このジョブのインポート・ソースを実装するJavaクラスの名前。 |
ImportSourceConfiguration importSourceConfig |
このジョブに対して定義されたインポート・ソースの構成が格納されます。 |
String batchProcessorClassName |
バッチがリリースされるときの処理に使用されるクラスの名前。この値がnullの場合は、バッチ・ロックが破棄されてバッチがREADY状態になります。 |
String batchProcessorJobID |
バッチ・プロセッサ・ジョブの一意の識別子。この値がnullの場合は、プロセッサがジョブをサポートしていないか、バッチがREADY状態に移行しようとしています。 |
Integer imageFailureAction |
これは、無効なイメージが検出されたときに実行されるアクションです。 0: バッチを強制終了する 1: アイテムをスキップする |
Locale locale |
リスト・ファイル・ソースのロケールを指定します。 |
String defaultDateFormat |
リスト・ファイル・ソース内の日付のデフォルトの形式を指定します。 |
String description |
このジョブの説明。 |
String encoding |
リスト・ファイル・ソースのファイル・エンコーディングを指定します。 |
Boolean isJobOnline |
このジョブを処理するかどうかを示します。 |
ImportProcessorContextクラスには、処理されるジョブに関連するプロパティが格納されます。このクラスのインスタンスが処理開始前に作成され、処理の様々なステージでインポート・ソースに渡されます。
プロパティ | 説明 |
---|---|
Boolean cancel |
このブール値がTrueに設定されている場合、実行される操作が取り消されます。 |
Boolean cancelDBSearch |
このブール値がTrueに設定されている場合、データベース参照が取り消されます。 |
DBSearchResults dbSearchResults |
ここには、データベース参照の結果が格納されます。 |
String sourceName |
現在のインポート・ジョブで使用するように構成されているインポート・ソースの名前。 |
Logger logger |
これはインポート・プロセッサのLoggerクラスのインスタンスであり、これを使用すると処理関連の情報をログに記録できます。 |
ImportManagerSession importManager |
これは、このコンテキストで使用されるインポート・マネージャ・セッションBeanです。 |
ScriptEngine scriptEngine |
インポート・プロセッサ・スクリプト内のメソッドの起動に使用されるスクリプト処理エンジン。 |
ImportJob importJob |
これは、現在処理されているインポート・ジョブです。 |
BatchLockEntity ble |
ここには、新しいバッチの作成後、バッチのバッチ・ロック・エンティティが格納されます。 |
String importSourceFile |
これは、現在処理されているファイルの名前です。 |
DocumentEntity documentEntity |
現在処理されているファイルに関連付けられているドキュメント・エンティティ。 |
DocumentPageEntity documentPageEntity |
これは、現在処理されているファイルに関連付けられているドキュメント・ページ・エンティティです。 |
ImportHATokenEntity importHATokenEntity |
これは、現在のバッチに関連付けられている高可用性トークンです。 |
Integer lastMultiPageTiffNumber |
ここには、処理されている複数ページTIFFファイルの、現在のページ番号が格納されます。 |
CaptureWorkspaceEntity workspaceEntity |
これは、現在のバッチに関連付けられているワークスペース・エンティティです。 |
WorkspaceManager workspaceManager |
これは、現在のインポート・ジョブに関連付けられているワークスペース・マネージャです。 |
次の表に、インポート・プロセッサで使用されるキャプチャのコア・クラスの説明を示します。
クラス | プロパティ | 説明 |
---|---|---|
oracle.odc.data.DBSearchResults |
List<DBSearchResultRow> |
データベース参照からの行のリスト。 |
List<DBSearchFieldInfo> fieldInfoList |
データベース参照で使用される列を説明する、検索フィールド情報のリスト。 |
|
oracle.odc.data.DBSearchResultRow |
List<String> results |
データベース参照からの結果のリスト。リスト内のアイテムはそれぞれ1つの列を表します。 |
oracle.odc.data.DBSearchFieldInfo |
String captureIndexDefID |
キャプチャ・メタデータ・フィールド定義のID。 |
String dbColumnName |
データベース参照列の名前。 |
|
Integer dbColumnType |
データベース参照列のタイプ。 |
|
Integer captureFieldType |
キャプチャ・メタデータ・フィールド定義のタイプ。 |
次の表に、電子メール・ソースのクラスの説明を示します。FolderおよびMessageのクラス定義は、Javamail APIのドキュメントを参照してください。
クラス | プロパティ | 説明 |
---|---|---|
oracle.odc.importprocessor.email.EmailSourceContext |
String account |
現在処理されている電子メール・アカウントの名前。 |
Folder folder |
現在処理されている電子メール・フォルダ。 |
|
Message message |
現在処理されている電子メール・メッセージ。 |
|
String attachmentFilename |
現在処理されている電子メール・メッセージ添付ファイルのファイル名。 |
次の表に、フォルダ・ソースのクラスの説明を示します。
クラス | プロパティ | 説明 |
---|---|---|
oracle.odc.importprocessor.folder.FolderSourceContext |
String folderName |
現在処理されているディレクトリの名前。 |
String documentFilename |
現在処理されているファイルの名前。 |
|
String renamedDocumentFilename |
後処理ステップでファイルへの接頭辞追加または拡張子の変更が指定されている場合は、このプロパティが変更後のファイル名を示します。 |
次の表に、リスト・ファイル・ソースのクラスの説明を示します。
クラス | プロパティ | 説明 |
---|---|---|
oracle.odc.importprocessor.listfile.ListFileSourceContext |
String folderName |
現在処理されているフォルダの名前。 |
String listFilename |
現在処理されているリスト・ファイルの名前。 |
|
String listFileLine |
リスト・ファイル内の現在処理されている行の内容。 |
|
String documentFilename |
リスト・ファイルの現在の行から現在処理されているファイルの名前。 |
|
String renamedListFilename |
後処理ステップでリスト・ファイルへの接頭辞追加または拡張子の変更が指定されている場合は、このプロパティが変更後のファイル名を示します。 |