ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Enterprise Repository構成ガイド
11g リリース1 (11.1.1.7)
E59381-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

6 設計時および実行時環境における自動収集の構成と使用

この章では、ハーベスタの使用を開始する方法について説明します。Oracle Enterprise Repositoryへの移入に使用されるツールは、ハーベスタと呼ばれます。ハーベスタは、Oracle製品および標準ベースのファイルからメタデータを読み取ります。これには、Oracle SOA Suite、Oracle Service Bus、Oracle BPAによって生成されたコンポジット、および標準のBPEL、WSDL、XSD、XSLT、BPMN 2.0、WS-Policyファイルが含まれます。

ハーベスタによって、アセットの作成、アセット・メタデータの移入、およびアーティファクト・ファイルの情報に基づいたリレーション・リンクの生成が自動的に実行されます。これらのファイルは、設計時に開発環境から直接収集できます。

また、これらのファイルは、実行時環境にデプロイされるときに収集することもできます。ハーベスタは、Oracle JDeveloperを含むIDE内や、AntおよびWeblogic Scripting Tool (WLST)内で、コマンド行から使用できます。詳細は、10.2項「Oracle Registry Repository Exchange Utilityの構成」を参照してください。

この章は次の項で構成されています。

6.1 ハーベスタを使用する前に

この項では、ハーベスタの使用を開始する方法、および高度な各種ユースケースにおけるその使用について説明します。

この項には次のトピックが含まれます:

6.1.1 前提条件

ハーベスタを使用する前に、次の前提条件を実行する必要があります。

  • 必要なアセット・タイプおよびリレーションシップが含まれるハーベスタ・ソリューション・パックをOracle Enterprise Repositoryにインポートします。Oracle Enterprise Repositoryのインストール・ホームからrepositoryxxx/core/tools/solutions/11.1.1.x.x-OER-Harvester-Solution-Pack.zipファイルをインポートします。

    Oracle Enterprise Repositoryソリューション・パックのインポートの詳細は、『Oracle Fusion Middleware Oracle Enterprise Repositoryインストレーション・ガイド』を参照してください。

    ハーベスタ・ソリューション・パックのアセット・タイプ・インベントリの詳細は、B.8項「アセット・タイプのインベントリ」を参照してください。

  • Oracle Service Busから収集する場合、Oracle Service Busサーバー(バージョン10.3.1.0)をハーベスタと同じマシン、またはハーベスタからアクセスできる共有ファイル・システムにインストールします。


    注意:

    Oracle Service Bus 11gより後のバージョンから収集する場合、Oracle Service Bus 11gより後のバージョン専用として開発され、Oracle Service Bus 11g製品インストールの一部として使用できる、対応するOracle Service Busのハーベスタ・バージョンを使用する必要があります。


  • Oracle SOA SuiteやOracle Service Busなどのデプロイされたアプリケーション、またはWebサービスからアセットを収集する場合、アプリケーションはWebLogic 10.3.1以上にデプロイする必要があります。

  • Oracle Application Integration Architectureからの収集の詳細は、Oracle Fusion Middleware Oracle Application Integration Architecture Foundation Pack開発者ガイドのOracle AIAコンテンツ収集の設定方法に関する項を参照してください。

  • ハーベスタでは、Java SDKバージョン6以上が必要です。

6.1.2 ハーベスタの機能

ハーベスタを使用すると、次の作業が可能になります。

  • SCAコンポジット、BPEL、WSDL、XSD、XSLT、BPMN 2.0およびWS-Policyなどの標準SOAアーティファクト(Oracleや他のベンダーのもの)をOracle Enterprise Repositoryに公開します。

  • 影響分析を目的としてアーティファクト間の依存関係を取得します。

  • ネストしたWSDLおよびXSDファイルを処理します。

  • 抽象インタフェース・アセットおよび具象デプロイメント/エンドポイントを作成します。

  • BPELパートナ・リンクの依存関係を取得し、これらをインタフェースに関連付けます。

  • 変換に対するBPEL PMの依存関係を取得します。

  • 再利用を目的としてOracle Enterprise Repository内でアーティファクト・コンテンツを格納または参照します。

  • 重複を検出するためにアーティファクトのソフトウェア・ファイルID (SFID)を計算します。

  • ネストしたディレクトリ、リモート・サーバー、zipファイル、jarファイル、SOAコンポジットまたはOracle BPELスーツケースからアーティファクトを公開します。

  • トランザクション方式でアーティファクトを公開します。

  • アーティファクトは、コマンド行から、およびハーベスタのAntタスクを使用して自動Antビルド・プロセスから公開します。

  • プロキシ・サービス、ビジネス・サービス、XQuery、MFL、XSLT、WS-PolicyなどのOracle Service Busプロジェクト・アーティファクトを公開します。

  • 収集プロセスをWLSTデプロイメント・スクリプトの一部として統合します。

  • SSL対応SOAサーバーに収集します。SOAサーバーでSSLを有効化する方法や、証明書をクライアントにエクスポートおよびインポートする方法の詳細は、Oracle Fusion Middlewareセキュリティ・ガイドを参照してください。


注意:

証明書のインポート/エクスポートの詳細は、次の場所にある「セキュリティ・ガイド」を参照してください。

http://download.oracle.com/docs/cd/E15523_01/index.htm


6.1.3 アーティファクト/製品のバージョン・マトリクス

表6-1に、ハーベスタでサポートされるアーティファクト/製品のバージョン・マトリクスを示します。

表6-1 アーティファクト/製品のバージョン・マトリクス

アーティファクト/製品 バージョン

BPEL

1.1および2.0

WSDL

1.1

SCA

0.95

JCAアダプタ

1.5

XSD

1.0

XSLT

1.0

Oracle BPEL PM

10.1.3.4

JDeveloper

10.1.3および11.1.1

Oracle SOA Suite

10.1.3および11.1.1

WS-Policy

1.2

Oracle Service Bus

10.3および11.1.1

WebLogic Webサービス

10.3

BPMN

2.0


6.2 ハーベスタの構成

この項では、ハーベスタを構成して、統合開発環境で使用する方法について説明します。

この項には次のトピックが含まれます:

6.2.1 ハーベスタの入手

ハーベスタは11.1.1.x.x-OER-Harvester.zipに含まれていますが、これはOracle Enterprise Repository 11gインストールとバンドルされており、次の場所にあります。

<ORACLE_HOME>/repositoryXXX/core/tools/solutions/11.1.1.x.x-OER-Harvester.zip

このマニュアルでは、11.1.1.x.x-OER-Harvester.zipファイルの抽出先のディレクトリのことを<Harvester Home>ディレクトリと呼びます。

表6-2に、製品と対応するバージョンのリレーションシップのマトリクスを示します。

表6-2 ハーベスタの製品とバージョンのマトリクス

製品とバージョン 収集
IDEの検索、参照および使用

コマンド行 IDE

11g OSB

OSB 11g

はい

はい

10.3.1 OSB

OER 11g

はい

Oracle Enterprise Repository 11gハーベスタをEclipse IDEに追加します。詳細は、『Oracle Fusion Middleware Oracle Enterprise Repository統合ガイド』を参照してください。

SOA Suite 11g

OER 11g

はい

はい

SOA Suite 10g

OER 11g

はい

いいえ

AIA Foundation Pack 11g

AIA

いいえ

いいえ

標準ベースのアーティファクト(WSDL 1.1、XSD、BPEL、XSLT、BPMN 2.0)

OER 11g

状況により異なる

状況により異なる


ハーベスタ・ソリューション・パックによって使用されるparameter.properties

parameter.propertiesファイルにより、Oracle Enterprise Repositoryへのインポート操作時のハーベスタ・ソリューション・パックの動作が決まります。このファイルは一切変更しないでください。ソリューション・パック内のオブジェクトは、リストに記載されている動作に応じてインポートされます。

  • ハーベスタ・ソリューション・パックの/META-INF/parameter.properties

    PreserveUUIDs=true
    Standard.saver.assettype.props.duplicate.handling=Merge
    Standard.saver.assettype.props.duplicate.matching=UUID
    Standard.saver.relationshiptype.props.duplicate.handling=Overwrite
    Standard.saver.metadata.props.duplicate.handling=ignore
    Standard.saver.metadataentrytype.props.duplicate.handling=ignore
    
  • ハーベスタ・ソリューション・パックの動作のサマリー

    • アセット

      Oracle Enterprise Repository内にすでに存在するアセット(同じUUID)はマージされます。

      アセットは、インポート・バンドルに指定されているUUIDとともに追加されます。

    • アセット・タイプ

      アセット・タイプは、UUIDがOracle Enterprise Repository内にすでに存在する場合は重複しているとみなされます。

      ソリューション・パック内のアセット・タイプに新しい要素またはタブ(あるいはその両方)が追加されている場合、これらの要素およびタブはOracle Enterprise Repository内の既存のアセット・タイプに追加されます。

      インポート・バンドル内の新しいアセット・タイプはOracle Enterprise Repositoryに追加されます。

    • リレーションシップ・タイプ

      同じ名前および方向を持つリレーションシップ・タイプは、Oracle Enterprise Repository内でインポート・バンドル内の情報に置き換えられます。

    • カテゴリ分けタイプ

      Oracle Enterprise Repository内のカテゴリ分けタイプと同じ名前を持つカテゴリ分けタイプ内の新しいカテゴリ分けエントリは、インポート・バンドル内の情報を使用してそのタイプに追加されます。

      新しいカテゴリ分けタイプはOracle Enterprise Repositoryに追加されます。

    • 許容値リスト(AVL)

      Oracle Enterprise Repository内のAVLと同じ名前を持つAVL内の新しい値は、インポート・バンドル内の情報を使用してそのAVLに追加されます。

      新しいAVLはOracle Enterprise Repositoryに追加されます。

    • CMFメタデータ・エントリ・タイプ

      重複するメタデータ・エントリ・タイプ(同じUUID)は無視されます。(ソリューション・パック内のエントリは無視されます。)

      新しいメタデータ・エントリ・タイプはOracle Enterprise Repositoryに追加されます。

    • CMFメタデータ・エントリ

      重複するメタデータ・エントリ(同じUUID)は無視されます。(ソリューション・パック内のエントリは無視されます。)

      新しいメタデータ・エントリはOracle Enterprise Repositoryに追加されます。

    parameter.propertiesの詳細は、『Oracle Fusion Middleware Oracle Enterprise Repositoryユーザーズ・ガイド』のparameter.propertiesファイルに関する項を参照してください。

6.2.2 コマンド行用のハーベスタの構成

コマンド行からハーベスタを構成できます。Enterprise Repositoryは、コマンド行からハーベスタを使用して簡単にブートストラップできます。コマンド行を使用した収集により、組織では次を収集できます。

  • 個々のファイル

  • ファイルのディレクトリ

  • リモート・ファイル

  • アーティファクト・ストア内のファイル

  • Oracle MetaData Store (MDS)内のファイル

この項では、コマンド行用としてハーベスタを構成するために実行する必要があるタスクについて説明します。

6.2.2.1 コマンド行用のリポジトリ接続情報の設定

<Harvester Home>にあるXMLファイルHarvesterSettings.xmlファイルを開き、ハーベスタが適切な資格証明を使用してOracle Enterprise Repositoryインスタンスを参照するように次のXMLを変更します。

<repository>
  <uri>http://localhost:7101/oer</uri>
  <credentials>
    <user>smith</user>
    <password>*****</password>
     //To ensure security, the password must be encrypted.
     //The password encryption tool (encrypt.bat/encrypt.sh), which is located in
<ORACLE_HOME>/repositoryXXX/core/tools/solutions/11.1.1.x.x-OER-PasswordTools.zip,
allows you to encrypt
     // the passwords that are stored in the Harvester configuration
     // (HarvesterSettings.xml) file.
  </credentials>
  <timeout>30000</timeout>
</repository>


注意:

アセットの表示、編集、承認および登録を行うための基本的なアクセス権が設定されたユーザーとしてハーベスタを実行することをお薦めします。


また、次のようにリポジトリ接続情報をコマンド行ユーティリティにパラメータとして渡すこともできます。

C:\test\harvester> harvest -url http://localhost:7101/oer -user admin -password <password> -file c:\test\samples

6.2.2.2 コマンド行用の収集対象のアーティファクトの選択

ハーベスタは、harvest.batユーティリティを使用してコマンド行から実行できます。harvest.batまたはharvest.shを実行する前に、表6-3で示された環境変数が設定されていることを確認してください。Windowsでは、コマンド・ウィンドウから「set X」と入力すると、変数Xの値を表示でき、「set X=abc」と入力すると、Xの値を「abc」に設定できます。

表6-3 コマンド行スクリプト

環境変数 説明

JAVA_HOME

JAVA_HOME環境変数がインストール済のJavaランタイム(JRE)またはSDKを指していることを確認します。Oracle Service Busのイントロスペクションの場合、これはJavaバージョン6以上である必要があります。

BEA_HOME

Oracle Service Busからプロジェクトを収集する場合のみ、Oracle Service Busサーバーが含まれるインストール・ディレクトリをBEA_HOME環境変数が指していることを確認してください。たとえば、C:\beaです。

JAVA_OPTS

オプションで、JAVA_OPTSパラメータを設定し、別の必要なjavaパラメータを追加します。たとえば、HTTPプロキシ・サーバーを使用する必要がある場合、値を-Dhttp.proxyHost=www-proxy.yourhost.com -Dhttp.nonProxyHosts= "*.yourhost.com |localhost"に設定します。

関連項目: http://java.sun.com/javase/6/docs/technotes/guides/net/proxies.html


表6-4に、ハーベスタ・コマンド行ユーティリティを使用して指定できるオプションを示します。

表6-4 ハーベスタのコマンド行オプション

ハーベスタのオプション 説明

-settings<file>

構成設定のXMLファイルを指定します。

-mds_settings <file>

MDSを初期化するためのadf-config.xmlファイルの場所を指定します。省略した場合、ハーベスタに用意されているadf-config.xmlファイルにデフォルト設定されます。

-url <URL>

Oracle Enterprise RepositoryのURLを指定します。

-user <OER User Name>

Oracle Enterprise Repositoryユーザーのユーザー名を指定します。

-password <OER Password>

Oracle Enterprise Repositoryユーザーのパスワードを指定します。

セキュリティを確実にするために、パスワードを暗号化する必要があります。

Oracle Enterprise Repository Webコンソールには、パスワードを暗号化するためのツールがあります。

http://<host>:<port>/<domain>/diag/encryptstrings.jsp

関連項目: パスワードの暗号化の詳細は、第5章「診断およびパスワードの暗号化」を参照してください。

-artifact_store

参照するOracle Enterprise Repositoryアーティファクト・ストアの名前を指定します。アーティファクト・ストアは、Oracle Enterprise Repositoryのアセット・エディタで事前に作成する必要があります。指定した場合、-file引数はアーティファクト・ストアのURLを基準に解決されます。

アーティファクト・ストアを基準にURIを指定する場合、URIは.wsdlファイルまたは.zipファイルなどのファイルに解決される必要があります。directoriesを指すURIはサポートされません。

アーティファクト・ストアの詳細は、6.2.4.2項「ネストした要素としてのパラメータの指定」を参照してください。

-file <filename or URL>

収集するファイルまたはディレクトリを指定します。これは、ファイル名またはファイルのURLに設定できます。

-file_type <type>

収集するファイルのファイル・タイプを指定します。指定しない場合、タイプはファイルの拡張子から導出されます。これは、config/pluginsフォルダ内のファイル・タイプの1つと一致する必要があります。デフォルトでは、.bpel、.mfl、.policy、.wsdl、.xsd、.xquery、.xsltがサポートされます。

-remote_url <URL>

リモート・プロジェクトの収集元として、ファイルではなく、実行中のサーバーを指定します。

-remote_username <username>

リモート・サーバーに接続するためのユーザー名を指定します。

-remote_password <password>

リモート・サーバーに接続するためのパスワードを指定します。

セキュリティを確実にするために、パスワードを暗号化する必要があります。

Oracle Enterprise Repository Webコンソールには、パスワードを暗号化するためのツールがあります。

http://<host>:<port>/<domain>/diag/encryptstrings.jsp

-remote_server_type <type>

リモート・サーバーのタイプを指定します。リモート・サーバーには、SOASuite、OSB、WLSのいずれかを含めることができます。

-remote_project <type>

ファイルではなく、収集するリモート・プロジェクトの名前を指定します。省略した場合、サーバー上のすべてのプロジェクトが収集されます。Oracle SOA Suiteの場合、これは、コンポジットの名前にリビジョンを付けた名前(たとえば、MyComposite_rev1など)にする必要があります。WLSの場合、これは、WebLogic管理コンソールおよびEnterprise Managerで見られるようなアプリケーション名にする必要があります。

-deployment_status <status>

作成したアセットに設定されるデプロイメント・ステータスを指定します。これは、設計時の値またはランタイム値をとります。

-version

出力のバージョン情報を指定します。

-soa_partition <type>

Oracle SOA Suiteのパーティションの名前を指定します。デフォルトでは、SOAの"default"パーティションが使用されます。

-preview

収集をプレビュー・モードで実行できるかどうかを指定します。trueに設定した場合、ハーベスタはプレビュー・モードで実行されます。成功および失敗に関する詳細情報が記録され、変更はOracle Enterprise Repositoryにコミットされません。

falseに設定したか、値が指定されていない場合、ハーベスタは本番モードで実行されます。成功および失敗に関する詳細情報が記録され、変更はOracle Enterprise Repositoryにコミットされます。

-producing_project <project>

収集から作成されたすべてのアセットがこのプロジェクトの作成に適用されます。

プロジェクトはOER内にすでに存在する必要があります。

-help

ハーベスタのコマンド行ユーティリティのオンライン・ヘルプが表示されます。


リモート収集の例は、次のとおりです。

harvest.bat -remote_url mysoasuiteserver:8001 -remote_username weblogic -remote_password ****** -remote_server_type SOASuite -remote_project MyComposite_rev1.0 -soa_partition department1

セキュリティを確実にするために、パスワードを暗号化する必要があります。Oracle Enterprise Repository Webコンソールには、パスワードを暗号化するためのツールがあります。

http://<host>:<port>/<domain>/diag/encryptstrings.jsp

図6-1に、harvest.bat -helpコマンドで表示されたコマンド行ユーティリティのオプションとオンライン・ヘルプを示します。

図6-1 収集のコマンド行ユーティリティのオプション

図6-1については周囲のテキストで説明しています。

コマンド行のオプションはどれも必須ではありません。これらは省略できます。

オプションが省略された場合、ハーベスタはharvest.batが存在する<Harvester Home>ディレクトリのHarvesterSettings.xmlファイルにある情報を使用します。コマンド行でオプションを指定した場合、これらにより、HarvesterSettings.xmlの設定がオーバーライドされます。

<Harvester Home>内のHarvesterSettings.xmlファイルを使用して収集されるアーティファクトを参照するには、次のXMLを変更します。

<query>
  <fileQuery>
     <rootDir>C:\samples</rootDir>
     <files>BPEL</files>
  </fileQuery>
</query>

または

<query>
  <fileQuery>
     <files>http://remote/server/my_generated_wsdl</files>
     <fileType>.wsdl</fileType>
  </fileQuery>
</query>

6.2.3 統合開発環境でのハーベスタの使用

ハーベスタは、Oracle JDeveloper、EclipseおよびVisual Studio .NETなどの統合開発環境(IDE)と統合できます。


注意:

Oracle Enterprise Repositoryは、エンドポイントおよびホストされているWSDLを持つサービスのみをOracle Service Registryに昇格します。また、具体的なWSDLを持つサービスのみをJDeveloperを介して使用できます。エンドポイントおよびWSDLの場所を取得するために実行時環境から収集することをお薦めします。


ハーベスタとIDEの統合の詳細は、『Oracle Fusion Middleware Oracle Enterprise Repository統合ガイド』を参照してください。

6.2.4 repository.submit Antタスクを使用したハーベスタの呼出し

ハーベスタをAntタスクとして呼び出すと、デプロイメント時にすべてのデプロイメント情報がOracle Enterprise Repositoryに格納されます。ハーベスタが提供するrepository.submit Antタスクを使用して、メタデータを収集してOracle Enterprise Repositoryにインポートできます。このタスクは、<Harvester Home>ディレクトリ(11.1.1.x.x-OER-Harvester.zipを解凍したディレクトリ)にあるharvest-tasks.xmlファイルで定義できます。

この項には次のトピックが含まれます:

6.2.4.1 repository.submit Antタスクのパラメータの指定

表6-5に、harvest-tasks.xmlファイル内のrepository.submit Antタスクに指定できるパラメータを示します。

表6-5 repository.submit Antタスクのパラメータ

属性 説明 必須

repositoryURL

接続先のリポジトリ・インスタンス。

はい(プロパティによって指定されていない場合)。

repositoryUsername

Oracle Enterprise Repositoryにログインするためのユーザー名。

はい(プロパティによって指定されていない場合)。

repositoryPassword

Oracle Enterprise Repositoryにログインするためのパスワード。

セキュリティを確実にするために、パスワードを暗号化する必要があります。

Oracle Enterprise Repository Webコンソールには、パスワードを暗号化するためのツールがあります。

http://<host>:<port>/<domain>/diag/encryptstrings.jsp

はい(プロパティによって指定されていない場合)。

timeout

Oracle Enterprise Repositoryに対する呼出しがタイムアウトするまでの秒数。

いいえ。デフォルト値は300 (5分)です。

failOnError

Oracle Enterprise Repositoryの操作の結果としてエラーになった場合、ビルド・スクリプト全体が失敗します。

いいえ。デフォルト値はtrueです。

errorProperty

リポジトリの操作の結果としてエラーになった場合に設定するAntプロパティの名前。これはfailOnErrorがfalseに設定されている場合のみ有効です。エラーが発生した場合、指定したプロパティはtrueに設定されます。それ以外の場合は、指定したプロパティは設定が解除されたままです。

いいえ。

debug

Antの-debug設定とは関係なく、Oracle Enterprise Repositoryタスクからのデバッグ情報を表示します。また、デバッグ情報は、-debugパラメータをAntランタイムに渡す場合も表示されます。

いいえ。デフォルト値はtrueです。

description

Oracle Enterprise Repositoryで作成された各アセットに関連付けるハーベスタの説明。これは、ハーベスタ・プロパティに表示されます。ハーベスタ・プロパティの詳細は、B.10項「ハーベスタのプロパティ」を参照してください。

いいえ。

namespace

Oracle Enterprise Repositoryで作成された各アセットに接頭辞を付けるためのネームスペース。

いいえ。

version

Oracle Enterprise Repositoryで作成された各アセットに関連付けるハーベスタ・バージョン。これは、ハーベスタ・プロパティに表示されます。

いいえ。

beaHome

インストールされているOracle Service BusサーバーのBEA_HOMEディレクトリ。

はい(Oracle Service Busプロジェクトのjarを収集する場合)。

settingsFile

設定XMLファイルの場所。BPEL_Harvester_Settings.xsdに準拠している必要があります。このファイルにより、どのファイル・タイプにどのようなハーベスタ・クラスがマップされるか、およびOracle Enterprise Repository内のタイプにエンティティとリレーションシップがどのようにマップされるかが構成されます。オプションで、この属性とsettingsURL属性のどちらかを指定できますが、両方を指定することはできません。

いいえ。Antタスクにバンドルされた設定XMLにデフォルト設定されます。

settingsURL

設定XMLファイルの場所。BPEL_Harvester_Settings.xsdに準拠している必要があります。このファイルにより、どのファイル・タイプにどのようなハーベスタ・クラスがマップされるか、およびOracle Enterprise Repository内のタイプにエンティティとリレーションシップがどのようにマップされるかが構成されます。オプションで、この属性とsettingsFile属性のどちらかを指定できますが、両方を指定することはできません。

いいえ。Antタスクにバンドルされた設定XMLにデフォルト設定されます。

preview

このオプションにより、ハーベスタをプレビュー・モードに設定します。ハーベスタには、作成または変更するすべてのアセットが表示されますが、トランザクションはコミットされません。有効にするには、値をtrueに設定します。

いいえ。デフォルト値はfalseです。


6.2.4.2 ネストした要素としてのパラメータの指定

fileSet

fileSetは、収集する一連のファイルを選択するために使用されます。1つ以上のfileSetを指定する必要があります。ハーベスタにより、fileSetによって選択されたすべてのファイルが調査されます。これには、.zip形式(.zip、.jarおよび.earファイルなどを含む)が含まれます。例6-1に示すAnt repository.submitタスクでは、fileSetディレクトリ(/tmp/componentsディレクトリ)の下のすべてのファイルおよびディレクトリが調査され、これらがOracle Enterprise Repositoryにインポートされています。

URI

URIは、イントロスペクトするファイルを識別します。1つ以上のURIを指定できます。これには、リモート・ファイルを指す"http:" URL、ローカル・ファイルを指す"file:" URL、またはJavaでサポートされる他の任意のURLを指定できます。これは、単一のファイル、またはzip、jar、earなどを含むzip形式のファイルを指すことができます。これには、エクスポートされたOracle Service Busプロジェクトのjarが含まれる場合があります。Oracle Service Busプロジェクトは、Export|Oracle Service Bus|Configuration JarコマンドをOracle Service Bus Workshopからエクスポートできます。artifactStore属性は、参照するOracle Enterprise Repositoryアーティファクト・ストアの名前です。アーティファクト・ストアは、Oracle Enterprise Repositoryのアセット・エディタで事前に作成する必要があります。指定した場合、URIはアーティファクト・ストアのURLを基準に解決されます。アーティファクト・ストアを基準にURIを指定する場合、URIは.wsdlファイルまたは.zipファイルなどのファイルに解決される必要があります。ディレクトリを指すURIはサポートされません。fileType属性は、収集するファイルのファイル・タイプを示します。指定しない場合、タイプはファイルの拡張子から導出されます。これは、config/pluginsフォルダ内のファイル・タイプの1つと一致する必要があります。デフォルトでは、.bpel.mfl.policy.wsdl.xsd.xquery.xsltがサポートされます。

例6-1 Ant repository.submitタスクを使用した収集対象ファイルの指定

<repository.submit repositoryurl="http://server.example.com:8080/oer"
                   repositoryusername="myuser"
                   registrypassword="*****"
registrationStatus="Registered"
applyRegistrationStatusToExistingAssets="true"
     //To ensure security, the password must be encrypted.
     //The password encryption tool (encrypt.bat/encrypt.sh) allows you to encrypt
     // the passwords that are stored in the Harvester configuration
     // (HarvesterSettings.xml) file.
                   settingsFile="../MyCustomSettings.xml">
  <fileset dir="/tmp/components/">
    <include name="**/*"/>
  </fileset>
<applyCategorization type="Classification" value="Raw"
applyToExistingAssets="false" />
<applyCategorization type="AssetFunction" value="XML Standards"
applyToExistingAssets="true" />
  <uri filetype=".wsdl">http://remote/server/my_generated_wsdl</uri>
</repository.submit>

登録ステータスおよびカテゴリ分け

ハーベスタから作成されるアセットの登録ステータスを指定できます。使用できる値は次のとおりです。

  • 未発行

  • 発行済 - レビュー保留中

  • 発行済 - レビュー中

  • 登録済

デフォルトでは、新しく作成されたアセットに登録ステータスが適用されます。また、同じアーティファクトの以前の収集から作成されるアセットの登録ステータスを指定することもできます。有効にするには、例6-1に示すように、applyRegistrationStatusToExistingAssetstrueに設定します。

収集から作成されるアセットにカテゴリ分けを適用できます。これには、アセット・エディタの「カテゴリ分けの構成」タブに表示される、カテゴリ分けタイプの内部名が判明していることが必要です。必要な値は、Element Nameです。

  1. アセット・エディタを開きます。

  2. 「アクション」→カテゴリ分けの構成を選択します。

  3. カテゴリ分けタイプを選択し、「編集」を選択します。「要素名」フィールドに、値が表示されます。例6-2を参照してください。

図6-2 カテゴリ分けの編集

図6-2については周囲のテキストで説明しています。

「要素名」は、アセット・エディタの「カテゴリ分けの構成」ウィンドウのフィールドを参照しています。このフィールドの値をHarvesterSettings.xmlで使用します。

remoteProject

remoteProjectにより、ハーベスタがファイルからではなくリモート・サーバーからプロジェクトを読み込むよう指定します。uri属性は、リモート・プロジェクトの読込み元の実行中のサーバーを示します。usernameおよびpassword属性は、リモート・サーバーのログイン情報を示します。

serverType属性は、リモート・サーバーのタイプを示し、これには、SOASuite、Oracle Service BusまたはWebLogic Serverなどがあります。projectName要素は、ファイルではなく、収集するリモート・プロジェクトの名前を示します。省略した場合、サーバー上のすべてのプロジェクトが収集されます。Oracle SOA Suiteの場合、これは、コンポジットの名前にリビジョンを付けた名前(たとえば、MyComposite_rev1など)にする必要があります。WLSの場合、これは、WebLogic管理コンソールおよびEnterprise Managerで見られるようなアプリケーション名にする必要があります。

例6-2 ネストした要素としてのパラメータの指定 - remoteProject

<repository.submit repositoryurl="http://server.example.com:8080/oer"
                   repositoryusername="myuser"
                   registrypassword="*****"
     //To ensure security, the password must be encrypted.
     //The password encryption tool (encrypt.bat/encrypt.sh) allows you to encrypt
     // the passwords that are stored in the Harvester configuration
     // (HarvesterSettings.xml) file.
                   settingsFile="../MyCustomSettings.xml">
  <remoteProjects uri="http://mywlsserver:7001" username="admin" password="*****"
 serverType="SOASuite" soaPartition="${partiton}">
     //To ensure security, the password must be encrypted.
     //The password encryption tool (encrypt.bat/encrypt.sh) allows you to encrypt
     // the passwords that are stored in the Harvester configuration
     // (HarvesterSettings.xml) file.
     <projectName>MySOAComposite1_rev1.0</projectName>
     <projectName>MySOAComposite3_rev2.0</projectName>
  </remoteProjects>
</repository.submit>

プロジェクトの作成

収集から作成されたすべてのアセットに対するプロジェクトの作成としてタグ付けされた複数のプロジェクトを指定できます。プロジェクトはOER内にすでに存在する必要があります。

<repository.submit>要素内に、次を追加します。

  • <producingProject name="MyProjectName"/>

  • <producingProject name="MyOtherProjectName"/>

プロジェクトの作成は、同じ方法で、HarvesterSettings.xmlファイル内に設定することもできます。

6.2.4.3 Antからのハーベスタの実行

ハーベスタのAntタスクをインポートするには、Ant XML内に次の行を追加します。

<taskdef file=${harvester.dir}/harvest-tasks.xml/>

ここで、harvester.dir11.1.1.x.x-OER-Harvester.zipを解凍した<harvester home>ディレクトリです。

コマンド行から実行する場合、Antのクラスパスでハーベスタ・ライブラリが使用可能であることを確認してください。ハーベスタには、Antのクラスパスを正しく設定するためのrunantと呼ばれるスクリプトがあります。ハーベスタのAntタスクを使用する場合は、このスクリプトを使用してAntを呼び出す必要があります。次に例を示します。

runant -f mybuild.xml

(ここで、mybuild.xmlは自分のAntのビルドXMLです。)

runantに渡される引数はすべてAntに渡されます。harvest.batまたはharvest.shを実行する前に、必要な環境変数が設定されていることを確認してください。設定する必要がある環境変数のリストは、表6-6を参照してください。

表6-6 コマンド行スクリプト

環境変数 説明

JAVA_HOME

JAVA_HOME環境変数がインストール済のJavaランタイム(JRE)またはSDKを指していることを確認します。Oracle Service Busのイントロスペクションの場合、これはJavaバージョン6以上である必要があります。

ANT_HOME

ANT_HOME環境変数がApache Antバージョン1.6.2以上のインストールを指していることを確認してください。Oracle Service Busのイントロスペクションの場合、Antバージョン1.6.5以上であることを確認してください。

BEA_HOME

Oracle Service Busからプロジェクトを収集する場合、Oracle Service Busサーバーが含まれるインストール・ディレクトリをBEA_HOME環境変数が指していることを確認してください。たとえば、C:\beaです。

JAVA_OPTS

オプションで、JAVA_OPTSパラメータを設定し、別の必要なjavaパラメータを追加します。たとえば、HTTPプロキシ・サーバーを使用する必要がある場合、値を-Dhttp.proxyHost=www-proxy.yourhost.com -Dhttp.nonProxyHosts= "*.yourhost.com |localhost"に設定します。

関連項目: http://java.sun.com/javase/6/docs/technotes/guides/net/proxies.html


6.2.4.4 サード・パーティ・タスクの使用

runantスクリプトは、Antの古いランチャであるorg.apache.tools.ant.Mainを使用します。新しいランチャは、Oracle Service BusのカスタムURIStreamHandlersの使用に影響を及ぼすURIClassLoaderインタフェースを使用します。

古いAntランチャは、ant/libディレクトリでのカスタムAntタスクの自動検出をサポートしていません。<taskdef>を使用してカスタム・タスクを定義する場合、クラスパス属性を指定する必要があります。

たとえば、次の例は、<taskdef>の定義方法として正しくない方法を示しています。

<taskdef id="ant-contrib" resource="net/sf/antcontrib/antcontrib.properties"/>

次の例は、<taskdef>の定義方法として正しい方法を示しています。

<taskdef id="ant-contrib" resource="net/sf/antcontrib/antcontrib.properties" classpath="${ant.home}\lib\ant-contrib.jar"/>

6.2.5 WLSTからのハーベスタの呼出し

WLST (WebLogic Scripting Tool)はコマンド行スクリプト・インタフェースです。システム管理者は、このインタフェースでWebLogic Serverのインスタンスを管理できます。WLSTは、Oracle Service Bus 10gおよびSOA Suite 11gをサポートしています。WLSTの詳細は『Oracle Fusion Middleware WebLogic Scripting Toolコマンド・リファレンス』を参照してください。ハーベスタをWLSTから呼び出すと、デプロイメント時にすべてのデプロイメント情報をOracle Enterprise Repositoryに格納できます。次の手順を実行し、WLSTからハーベスタを呼び出します。

  1. oer.pyファイルをハーベスタのインストール・フォルダから<BEA_HOME>\wlserver_10.3\common\wlst\libディレクトリにコピーします。

  2. コマンド・ウィンドウで、次のコマンドを入力します。

    • WLSTクラスパスを初期化します。<BEA_HOME>\wlserver_10.3\server\bin\setWLSEnv.cmdを実行します。

    • ハーベスタのクラスパスを初期化します。<harvester>フォルダに移動し、<harvester>\setenv.batを実行します。

    • WLSTを呼び出します: java weblogic.WLST<scriptname>

  3. AntからWLSTを呼び出すには、次の手順を実行します。

    • コマンド・プロンプトで、cdコマンドを使用して<harvester>ディレクトリに変更します。

    • runant.bat -f<antscriptname>を入力します。この場合、Antスクリプトにより、Antの<java>タスクを使用してweblogic.WLST Javaクラスが呼び出されます。

    • <java>タスクは、fork = trueに設定する必要があります。

    • <java>タスクでは、環境のCLASSPATHを含める必要があります(runant.batにより、ハーベスタ・クラスを追加するようCLASSPATHが設定されます)。

    • <java>タスクでは、WLSTスクリプトによって参照される任意のライブラリもクラスパスに含める必要があります。

    Antスクリプトの例を次に示します。

    <property environment="env"/> 
    <target name="harvest"> 
    <java classname="weblogic.WLST" fork="true">
    <arg line="${domain.import.script}"/>
    <arg line="${import.config.file}"/>
    <classpath refid="extra.class.path"/> <!--extra jars used by WLST script, e.g.
     OSB jars-->
    <classpath path="${env.CLASSPATH}"/>
    </java>
    </target>
    

    oer.harvest()メソッドは、1つの引数(コマンド行パラメータのディクショナリ)をとります。これらは、ハーベスタのコマンド行から使用可能なパラメータと同じパラメータです。

    コマンド行からのハーベスタの使用の詳細は、6.2.2.2項「コマンド行用の収集対象のアーティファクトの選択」を参照してください。

    次に、その使用方法の例を示します。

    argMap = {}
    argMap['-harvester_home'] = '.'
    argMap['-bea_home'] = 'c:/bea'
    argMap['-remote_url'] = 'http://mywlsserver:7001'
    argMap['-remote_username'] = 'admin'
    argMap['-remote_password'] = '*****'
    //To ensure security, the password must be encrypted.
    //The password encryption tool (encrypt.bat/encrypt.sh) allows you to encrypt
    // the passwords that are stored in the Harvester configuration
    // (HarvesterSettings.xml) file.
    argMap['-remote_server_type] = 'SOASuite'
    argMap['-remote_project] = 'MySOAComposite_rev1.0'
    argMap['-soa_partition'] = 'department1'
    oer.harvest(argMap)
    

    -harvester_home引数は、ハーベスタ・インストールの場所を指す必要があります。-bea_home引数は、Oracle Service Busによる収集の場合に必要です。

6.2.6 ランタイム収集の詳細

アセットが開発からテスト、ステージングおよび本番の各環境に移行するにつれ、これらのアセットをOracle Enterprise Repository内に収集することにより、Oracle Enterprise Repositoryのエンドポイントを最新のものにできます。Oracle Enterprise Repositoryでは、新しいエンドポイントがOracle Enterprise Repository内の既存のアセットに関連付けられます。アセットのライフサイクルの経過に応じてWSDLが変更されると、更新されたWSDLもOracle Enterprise Repository内の既存のアセットに関連付けられます。

この項では、様々なサーバーに関するランタイム収集の詳細を説明します。この項には次のトピックが含まれます:

6.2.6.1 Oracle SOA Suiteサーバーからの収集

Oracle SOA Suiteサーバーから収集する場合、次のWLSセキュリティ・ロールが必要です。

  • 管理者

  • オペレータ

  • モニター

-remote_urlパラメータは、SOAインフラ管理対象サーバーのポートを指す必要があります。Oracle SOA Suiteでのこのデフォルト値は8001です。

SOAインフラ管理対象サーバーは稼働している必要があります。収集の際には、リモート収集の一環としてMDSデータベースへの接続が行われます。MDSデータベースは稼働しており、収集が行われるマシンからアクセスできる必要があります。

SSL/HTTPプロトコルがサポートされます。ハーベスタは、t3プロトコルを介してサーバーのMBeanに接続します。

Deployment URIプロパティ内の-remote_urlの値は、ランタイム・サーバーから収集されたアセットに自動的に保存されます。

Oracle SOA Suiteサーバーからの収集の例は、次のとおりです。

harvest.bat -remote_url mysoasuiteserver:8001 -remote_username weblogic -remote_password <*****> -remote_server_type SOASuite -remote_project MyComposite_rev1.0 -soa_partition default

セキュリティを確実にするために、パスワードを暗号化する必要があります。パスワード暗号化ツール(encrypt.bat/encrypt.sh)を使用すると、ハーベスタ構成ファイル(HarvesterSettings.xml)に格納されているパスワードを暗号化できます。パスワードの暗号化の詳細は、第5章「診断およびパスワードの暗号化」を参照してください。

Oracle SOA Suiteサーバーには、ランタイム中にコンポジットをさらにカテゴリ分けするためのパーティションも実装されています。これにより、ハーベスタ内でコンポジット名とともに使用するパーティションを選択できます。HarvesterSettings.xmlファイル内のパラメータ名は、soaPartitionと呼ばれます。HarvesterSettings.xmlファイルの例を次に示します。

<remoteQuery>
       <serverType>SOASuite</serverType>
       <projectName>MyComposite_rev1.0</projectName>
       <uri>http://remotehost:8001/</uri>
       <credentials>
         <user>weblogic</user>
         <password>password</password>
       </credentials>
       <soaPartition>partition_name</soaPartition>
</remoteQuery>

注意:

パーティションは、バージョン11g R1 PS2以上のSOAサーバーでのみ使用する必要があります。PS2より前のバージョンを使用している場合は、soaPartition要素にコメントを付ける必要があります。

デフォルトでは、"default"に設定されたpartition_nameオプションを使用して収集が行われます。指定されていない場合、パーティションの"default"はSOAデプロイメントによって即時利用可能になります。


クラスタ内のSOA Suiteコンポジットの収集

OHSサーバーは、WebTierラベルの一部としてミドルウェア・ホームにデプロイされており、このミドルウェア・ホーム内で構成されたドメインにも関連付けられています。

通常はOHSサーバーのmod_wl_2x.so HTTPサーバー・モジュールに割り当てられているURIがいくつか存在しますが、その一部を次に示します(OHSのmod_wl_ohs.confファイルから取得され、外部で使用できるよう汎用化するために変更されたものです)。

LoadModule weblogic_module

"/opt/Oracle/Middleware/wlserver_10.3/server/plugin/linux/x86_64/mod_wl_22.so"
<IfModule weblogic_module>
    ConnectTimeoutSecs 10
    ConnectRetrySecs 2
    Debug ALL
    WLLogFile /tmp/weblogic.log
    DebugConfigInfo ON
    WLSocketTimeoutSecs 2
    WLIOTimeoutSecs 300
    Idempotent ON
    FileCaching ON
    KeepAliveSecs 20
    KeepAliveEnabled ON
    DynamicServerList ON
    WLProxySSL OFF
</IfModule>
<Location /soa-infra>
    SetHandler weblogic-handler
    WebLogicCluster slc01ese.example.com:23049,wls02.example.com:15980
</Location>
<Location  ~ "/bea_wls_internal/iiop/Client*">
    SetHandler weblogic-handler
    WebLogicCluster wls01.example.com:23049,wls02.example.com:15980
</Location>
<Location  ~ "/bea_wls_internal/HTTPClnt*">
    SetHandler weblogic-handler
    WebLogicCluster wls01.example.com:23049,wls02.example.com:15980
</Location>
<Location /console>
    SetHandler weblogic-handler
    WebLogicHost wls01.example.com
    WebLogicPort 19617
</Location>
<Location /em>
    SetHandler weblogic-handler
    WebLogicHost wls01.example.com
    WebLogicPort 19617
</Location>
<Location /bea_wls_internal>
    SetHandler weblogic-handler
    WebLogicHost wls01.example.com
    WebLogicPort 19617
</Location>
<Location /jndi>
    SetHandler weblogic-handler
    WebLogicHost wls01.example.com
    WebLogicPort 23049
</Location>
<Location /HTTPClnt>
    SetHandler weblogic-handler
    WebLogicHost wls01.example.com
    WebLogicPort 23049
</Location>

これらの特別なURIパターンを使用すると、JMSおよびJMXリクエストをOHS WebLogicモジュールを経由してルーティングできます。

コードに適用した変更を除いて、これらが、SOAクラスタ・インストールに適用された唯一のカスタマイズです。

6.2.6.2 WebLogic ServerからのWebサービスの収集

WebLogic Serverから収集する場合、WebLogic Serverのセキュリティ・ロールは必要ありません。

-remote_urlパラメータは、WLS管理サーバーのポートを指す必要があります。Weblogicでのこのデフォルト値は7001です。WLS管理サーバーは稼働している必要があります。SSL/HTTPプロトコルがサポートされます。ハーベスタは、t3プロトコルを介してサーバーのMBeanに接続します。

Deployment URIプロパティ内の-remote_urlの値は、ランタイム・サーバーから収集されたアセットに自動的に保存されます。

6.2.6.3 Oracle Service BusからのWebサービスの収集

Oracle Service BusからWebサービスを収集する場合、管理WLSセキュリティ・ロールが必要です。

-remote_urlパラメータは、Oracle Service BusドメインのWLS管理サーバーのポートを指す必要があります。Weblogicでのこのデフォルト値は7001です。WLS管理サーバーは稼働している必要があります。SSL/HTTPプロトコルがサポートされます。ハーベスタは、t3プロトコルを介してサーバーのMBeanに接続します。

Deployment URIプロパティ内の-remote_urlの値は、ランタイム・サーバーから収集されたアセットに自動的に保存されます。

Oracle Service BusからのWebサービスの収集の例は、次のとおりです。

harvest.bat -remote_url myosbserver:7001 -remote_username weblogic -remote_password (******) -remote_server_type OSB -remote_project MyOSBProject

セキュリティを確実にするために、パスワードを暗号化する必要があります。パスワード暗号化ツール(encrypt.bat/encrypt.sh)を使用すると、ハーベスタ構成ファイル(HarvesterSettings.xml)に格納されているパスワードを暗号化できます。パスワードの暗号化の詳細は、第5章「診断およびパスワードの暗号化」を参照してください。

6.2.7 オプションのハーベスタ構成の実行

オプションで、<Harvester Home>ディレクトリのXMLファイルHarvesterSettings.xml内の次の追加構成設定を変更できます。

  • <harvesterDescription>: 実行される収集に関する説明。この情報は、Oracle Enterprise Repositoryで作成されたアセットのハーベスタ・プロパティに格納されます。

  • <harvesterVersion>: 実行される収集のバージョン。この情報は、Oracle Enterprise Repositoryで作成されたアセットのハーベスタ・プロパティに格納されます。

  • <namespace>: 収集中に作成された抽象(非アーティファクト) Oracle Enterprise Repositoryアセットに追加されるネームスペース。ネームスペースは、重複の検出で使用されます。空白のままにすると、Oracle SOA SuiteおよびOracle Service Busプロジェクト(使用可能な場合)の情報に基づいて設定されます。通常、これが最適であるため、オーバーライドする場合は慎重に行ってください。

  • <workDir>: zipおよびjarファイルが解凍される一時ディレクトリ。デフォルトでは、システムの一時ディレクトリが使用されます。

  • <triggerEvent>: ワークフローによって使用されるOracle Enterprise Repositoryイベントの状態。trueの場合、ワークフローによって使用されるOracle Enterprise Repositoryイベントがトリガーされます。

ハーベスタのプロパティの詳細は、B.10項「ハーベスタのプロパティ」を参照してください。

6.2.7.1 Oracle Metadata ServiceのURL

ハーベスタは、OracleのMDS (メタデータ・サービス)からのファイルの読込みをサポートしています。MDSは、SOA Suite 11gでSOA Suiteフレームワーク・スキーマ、共有ポリシー、およびデプロイ済コンポジットなどの共有データを格納するために使用されます。

Oracle MDSファイルは、oramds: URLプロトコルを介して参照されます。ハーベスタには、MDSへの接続を構成するために使用されるadf-config.xmlファイルが含まれます。このファイルは、JDeveloperでフレームワーク・スキーマ用として使用されるローカルMDSストアを指すことができます。また、フレームワーク・スキーマ、共有ポリシー、およびデプロイ済コンポジットにアクセスするためにリモートMDSストアを指すこともできます。ハーベスタに同梱されているadf-config.xmlファイルには、両方の使用事例が示されています。

ローカルMDSの場合、adf-config.xml内のmetadata-pathプロパティを変更し、JDeveloperインストールの場所と一致するよう設定します。リモートMDSの場合、adf-config.xmlで、file store (JDev)とマークされたセクションをコメント化し、「DB store (SOA Suite server)」とマークされたセクションを非コメント化します。また、jdbc-urljdbc-useridおよびjdbc-passwordプロパティも変更し、Oracle SOA SuiteサーバーのMDSデータベースを指すようにします。

次の例に示すように、コマンド行から収集することもできます。

harvest.bat -file oramds:/policies/oracle/wsmtom_policy

Oracle JDeveloper 11gは、MDS内のコンテンツを表示できるブラウザ・ベースのアプリケーションです。JDeveloperで、「ファイル」「新規」をクリックします。新規ギャラリ・ダイアログで、「接続」SOA-MDS接続をクリックし、MDS接続を表示します。

また、HarvesterSettings.xmlまたはハーベスタのAntタスク内の<mdsSettingsFile>要素を介してハーベスタが別のadf-config.xmlファイルを指すようにすることができます。

MDSの構成の詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』のOracle ADF XMLファイルに関する項を参照してください。

6.2.7.2 クラスパスのURL

ハーベスタは、Javaのクラスパスからのファイルの読込みをサポートしています。これらのファイルは、classpath: URLプロトコルを介して参照されます。これらのファイルは、ハーベスタのクラスパス内のjarファイルまたはディレクトリ内にあります。たとえば、classpath:/META-INF/wsdl/ServiceException.wsdlなどです。

6.2.8 ハーベスタのロギングの構成

ハーベスタは、実行された詳細タスクのロギング用としてlog4jを使用し、ログ・ファイルは<Harvester Home>ディレクトリに格納されます。ロギング・オプションを変更するには、<Harvester Home>ディレクトリ内のlog4fl.propertiesファイルを更新します。

6.2.9 ハーベスタでのトランザクション処理

デフォルトでは、ハーベスタは、Oracle Enterprise Repositoryに対するすべての変更を単一のトランザクションで行います。ハーベスタ機能におけるトランザクション操作は、次のルールに基づいています。

  • 11g R1の場合、Oracle Enterprise Repositoryサーバーは一度に1つのトランザクションのみをサポートします。トランザクションを開始できない場合、その旨通知されます。

  • トランザクションには、一連のタイムアウトが関連付けられています。これらにより、タイムアウトを超えた場合にハーベスタの操作が終了します。

    • cmee.extframework.impexp.monitor.rex.maxidleの設定により、トランザクションとクライアントとの接続が失われたときにトランザクションの稼働状態を維持する最大時間を指定します。これにより、クライアント側のハーベスタ・プロセスが中断されたときにトランザクションを取り消すことが可能になります。

    • cmee.extframework.impexp.monitor.maxruntimeの設定により、トランザクション全体に必要な最大時間を指定します。

    1つの操作がcmee.extframework.impexp.monitor.rex.maxidle (maxidle)設定を超えると、これが原因で後続のすべての操作が失敗する可能性があります。この場合、ログ内の最後のエラーには「トランザクションが開始されていないためにトランザクションをロールバックしようとしたときにエラーが発生しました。」と表示されます。これは、文がmaxidleを超えたときにトランザクションが自動的にロールバックされることが原因であり、クライアント・アプリケーションが強制的にロールバックを試行すると対象のトランザクションを使用できなくなり、エラーが検出されます。この結果、ハーベスタの操作によるデータは、Oracle Enterprise Repositoryに追加されなくなります。

6.2.10 拡張構成

この項では、ハーベスタの拡張構成オプションについて説明します。

アダプタおよびアプリケーション

ハーベスタには、サポートされるアダプタ・アセットおよびアプリケーション・アセットを制御するadapters.xmlと呼ばれる構成ファイルが含まれます。構造は次のとおりです。

  • adapter

    <adapter name="AQ Adapter" 
     jcaSpecBinding="oracle.tip.adapter.aq.inbound.AQDequeueActivationSpec"/>
    <adapter name="AQ Adapter"
     jcaSpecBinding="oracle.tip.adapter.aq.outbound.AQEnqueueInteractionSpec"/>
    <adapter name="PeopleSoft Adapter" 
     jcaSpecBinding="com.ibi.afjca.cci.IWAFInteractionSpec"
     jcaCSAdapterName="PeopleSoft"/>
    <adapter name="PeopleSoft Adapter"
     namespace="http://xmlns.oracle.com/Enterprise/"/>
    <adapter name="PeopleSoft Adapter" namespace="http://peoplesoft.com/"/>
    
  • adapterAsset

    <adapterAsset name="AQ Adapter">
    </adapterAsset>
    <adapterAsset name="PeopleSoft Adapter" applicationName="PeopleSoft
     Application">
    </adapterAsset>
    

    adapterAsset要素は、Oracle Enterprise Repository内に存在するアダプタ・アセットまたはアプリケーション・アセット(あるいはその両方)に対応している必要があります。ハーベスタでは、アダプタ・アセットまたはアプリケーション・アセットは作成されません。これらは、Oracle Enterprise Repositoryソリューション・パックを介してインポートされるか、Oracle Enterprise Repository内に手動で作成される必要があります。11.1.1.x.x-OER-Harvester-Solution-Pack.zipには、デフォルトのadapters.xmlファイルで構成されているアダプタ・アセットおよびアプリケーション・アセットがすべて含まれます。各adapter要素は、作成されているアダプタ構成アセットまたはアプリケーション・デプロイメント・アセット(あるいはその両方)を示します。name属性は、対応するadapterAsset要素の名前と一致する必要があります。各adapter要素内には、jcaSpecBindingまたはnamespace属性が存在する必要があります。

  • jcaSpecBinding

    jcaSpecBinding属性は、Oracle SOA Suiteによって作成されたWSDLで見られるように、JCAのinteractionSpecまたはactivationSpecクラスの完全修飾クラス名に対応しています。jcaSpecBindingが存在する場合、アダプタ構成アセットが作成されます。


    注意:

    対応するadapterAsset要素内にapplicationName属性が存在する場合、アプリケーション・デプロイメント・アセットも作成される場合があります。


  • jcaCSAAdapterName

    jcaCSAAdapterName属性はオプションです。これは、アダプタ・タイプを識別する上でJCAのinteractionSpec/activationSpecでは十分でない場合に指定できます。指定した場合、これは、WSDLのjca:addressセクションのcs.AdapterName属性と一致する必要があります。

  • namespace

    namespace属性は、Oracle BSEフレームワークを使用してOracle SOA Suiteによって作成されるWSDLのtargetNamespaceに対応しています。ネームスペースが存在する場合、アダプタ構成アセットは作成されず、アプリケーション・デプロイメントのみが作成されます。

    アダプタまたはアプリケーションで複数のJCAクラスまたはXMLネームスペースが使用可能な場合、複数のadapter要素が1つのadapterAssetに対応している可能性があります。各adapterAsset要素は、作成されるアダプタ・アセットまたはアプリケーション・アセット(あるいはその両方)を示します。name属性は、対応するadapter要素の名前と一致する必要があります。Oracle Enterprise Repositoryでは、adapterAsset要素ごとに1つのアダプタ・アセットまたはアプリケーション・アセット(あるいはその両方)が作成されます。

  • applicationName

    applicationName属性(存在する場合)は、アプリケーション・アセットも作成する必要があることを示します。各プロパティ要素の結果、作成されるアダプタ・アセットのハーベスタ・プロパティ・セクション内に指定したデータが設定されます。

ハーベスタのプロパティの詳細は、B.10項「ハーベスタのプロパティ」を参照してください。

6.3 アーティファクトの収集

この項では、ハーベスタを構成して、統合開発環境で使用する方法について説明します。

この項には次のトピックが含まれます:

6.3.1 アーティファクトの収集

コマンド行またはOracle JDeveloperから、あるいはAntタスクを使用してメタデータをOracle Enterprise Repositoryに発行できます。

ハーベスタにより、アーティファクトがスキャンされ、これらのアーティファクトが収集され、これらの間に存在する依存関係が検出されます。次の項で、アーティファクトについて説明します。

ハーベスタにより、これらのアーティファクトのエンティティがOracle Enterprise Repository内に作成され、これらの間のリレーションシップが作成されます。

Oracle Enterprise Repository内に作成されたアーティファクトは、作成されたアセットのファイル情報に格納されます。ローカルで格納された収集済アーティファクトの場合、物理ファイルはOracle Enterprise Repositoryに格納されます。一方、リモートで格納された収集済アーティファクト(http://)の場合、Oracle Enterprise RepositoryはそのアーティファクトのURLの場所を指します。デフォルトでは、ローカルで格納された収集済アーティファクトはExchange UtilityによってはOSRに公開されません。リモートで格納されたアーティファクトのみが公開されます。

図6-3に、ハーベスタによって作成されるアセット・タイプとこれらのリレーションシップを示し、図6-4に、アセット・モデル図の例を示します。


注意:

リレーションシップ・ロール名は、プライマリ・ロール、セカンダリ・ロールの順にリストされています。

これに続く各図では、プライマリ・ロールが各矢印の始点にあり、セカンダリ・ロールが各矢印の終点にあります。


図6-3 ハーベスタによって作成されるアセット・タイプ

図6-3の説明が続きます
「図6-3 ハーベスタによって作成されるアセット・タイプ」の説明

6.3.1.1 BPEL

BPELアーティファクトをOracle Enterprise Repositoryに発行すると、Oracle Enterprise Repositoryで次のアクションが行われます。

  • ビジネス・プロセス・アセット(タイプ: ビジネス・プロセス:BPEL)がタイプがアーティファクト:BPELのアーティファクト・アセットに直接関連付けられます。

  • BPELアーティファクト・コンテンツが含まれるBPELアーティファクト・アセット(タイプ: アーティファクト:BPEL)が作成されます。

  • "Defined by"リレーションシップを使用してビジネス・プロセスがBPELアーティファクト・アセットに関連付けられます。

  • BPELフロー内のすべてのパートナ・リンクについて、ビジネス・プロセスがインタフェース・アセット(タイプ: インタフェース)にも関連付けられます。

  • BPELアーティファクト・アセットがWSDLアーティファクト・アセットおよびXSLTアーティファクト・アセット(フロー内で変換が実行される場合)に関連付けられます。これらは、ビジネス・プロセスのパートナ・リンクの定義およびエントリ・ポイントが含まれるWSDLです。

図6-4 アセット・モデル

図6-4については周囲のテキストで説明しています。

6.3.1.2 WSDL

WSDLアーティファクトをOracle Enterprise Repositoryに発行すると、Oracle Enterprise Repositoryで次のアクションが行われます。

  • WSDLにサービスが含まれる場合、サービス・アセット(タイプ: サービス)が作成されます。

  • ポート・タイプに対してインタフェース・アセット(タイプ: インタフェース)が作成されます。

  • "Contains interface"リレーションシップを使用してサービスがインタフェース・アセットに関連付けられます。

  • ポート用のエンドポイント・アセットが作成されます。

  • "Deployed to"リレーションシップを使用してサービス・アセットがエンドポイント・アセットに関連付けられます。

  • WSDLアーティファクト・コンテンツが含まれるWSDLアーティファクト・アセット(タイプ: アーティファクト:WSDL)が作成されます。

  • WSDLアーティファクトがWSDLをインポートし、XSDをインポート/インクルードする場合、"References"リレーションシップを使用してこれらのWSDLおよびXSDアーティファクト・アセットに関連付けられます。

6.3.1.3 XSD

XSDアーティファクトをOracle Enterprise Repositoryに発行すると、Oracle Enterprise Repositoryで次のアクションが行われます。

  • XSDアーティファクト・コンテンツが含まれるXSDアーティファクト・アセット(タイプ: アーティファクト:XSD)が作成されます。

  • XSDアーティファクトがXSDをインポート/インクルードする場合、"References"リレーションシップを使用してこれらのXSDアーティファクト・アセットに関連付けられます。

6.3.1.4 XSL

XSLアーティファクトをOracle Enterprise Repositoryに発行すると、Oracle Enterprise Repositoryで次のアクションが行われます。

  • XSLアーティファクト・コンテンツが含まれるXSLアーティファクト・アセット(タイプ"アーティファクト:XSL")が作成されます。

  • XSLアーティファクトが変換のソースおよびターゲットとしてXSDおよびWSDLを参照する場合、"References"リレーションシップを使用してこれらのXSDおよびWSDLアーティファクト・アセットに関連付けられます。

6.3.1.5 Oracle SOA Suiteの収集

この項では、Oracle SOA Suite 11gプロジェクトの収集について説明します。

  • コンポジット: Oracle SOA Suite 11gプロジェクト・フォルダまたはそのcomposite.xmlファイルをイントロスペクションすると、Oracle Enterprise Repository内で次のアクションが行われます。

    • コンポジット・アセットが作成されます。

    • コンポジットによってサービスが公開されることにより、Oracle Enterprise Repository内にコンポジット・サービス・アセットが生成されます。これらは、Sync-ExposesServiceリレーションシップによってコンポジットに関連付けられます。

    • コンポジットによって参照が公開されることにより、Oracle Enterprise Repository内にコンポジット参照アセットが生成されます。これらは、Sync-ExposesReferenceリレーションシップによってコンポジットに関連付けられます。

    • composite.xmlファイルは、Artifact: Compositeタイプのアセットになり、Sync-Definesリレーションシップによってコンポジットに関連付けられます。

  • コンポジット・デプロイメント: Oracle SOA Suite 11gプロジェクト・フォルダまたはそのcomposite.xmlファイルをイントロスペクションすると、Oracle Enterprise Repository内で次のアクションが行われます。

    • コンポジット・デプロイメント・アセットが作成されます。

    • コンポジット・デプロイメントによってサービスが公開されることにより、Oracle Enterprise Repository内にコンポジット・デプロイメント・サービス・アセットが生成されます。これらは、Sync-ExposesServiceリレーションシップによってコンポジット・デプロイメントに関連付けられます。

    • コンポジット・デプロイメントによって参照が公開されることにより、Oracle Enterprise Repository内にコンポジット・デプロイメント参照アセットが生成されます。これらは、Sync-ExposesReferenceリレーションシップによってコンポジット・デプロイメントに関連付けられます。

    • コンポジット・デプロイメントは、Deployment-Deploysリレーションシップによってコンポジットに関連付けられます。

  • コンポーネント・レベルのアーティファクト: 次のコンポジットのコンポーネントを作成し、Sync-Containsリレーションシップによってコンポジットにリンクする必要があります。

    • BPELプロセスの結果、ビジネス・プロセス:BPELアーティファクトが生成されます。

      • これは、Sync-Definesリレーションシップによってアーティファクト:BPELアーティファクトに関連付けられます。これは、6.3.1.1項「BPEL」に示すように、任意の従属アーティファクトに関連付けられます。

    • メディエータにより、サービス・タイプ属性がMEDIATORに設定された状態でサービス・アセットが生成される必要があります。

      • これは、Sync-Definesリレーションシップによってアーティファクト:MPlanアーティファクトに関連付けられます。これは、Artifact-Referencesリレーションシップによって従属アーティファクト:XSLTアーティファクトに関連付けられます。

      img_mediator.gifについては周囲のテキストで説明しています。
    • ヒューマン・タスクにより、ヒューマン・タスク・アセットが生成される必要があります。

      • これは、Sync-Definesリレーションシップによってアーティファクト:タスク・アーティファクトに関連付けられます。これは、Artifact-Referencesリレーションシップによって従属アーティファクト:XSDアーティファクトに関連付けられます。

        img_hutask.gifについては周囲のテキストで説明しています。
    • ビジネス・ルールにより、ビジネス・ルール・アセットが生成される必要があります。

      • これは、Sync-Definesリレーションシップによってアーティファクト:Decsアーティファクトに関連付けられます。これは、Artifact-Referencesリレーションシップによって従属アーティファクト:ルール・アーティファクトに関連付けられます。Artifact:Rulesアーティファクトは、Artifact-Referencesリレーションシップによって従属アーティファクト:XSDアーティファクトに関連付けられます。

        img_busrule.gifについては周囲のテキストで説明しています。
    • Springコンテキスト・コンポーネントにより、Springコンテキスト・アセットが生成される必要があります。

      • これは、Sync-Definesリレーションシップによってアーティファクト:SpringBeansアーティファクトに関連付けられます。これは、Artifact-Referencesリレーションシップによって他のアーティファクト:SpringBeansアーティファクトに関連付けられます。

        img_spring.gifについては周囲のテキストで説明しています。
  • コンポーネント・レベルのリレーションシップ:

    • コンポーネントによって提供されるコンポーネント・サービスにより、インタフェース・アセットが生成されます。これは、BPEL-Entry pointリレーションシップによってコンポーネント・レベルのアセットに関連付けられます(Service-Interfaceリレーションシップによって関連付けられるメディエータは除く)。

      • composite.xml<interface.ws>の場合、サービスはインタフェース・アセットに関連付けられます。composite.xml<interface.java>の場合、サービスはインタフェース・タイプとしてJava属性を持つインタフェース・アセットに関連付けられます。

      • コンポーネント・サービスがコンポジット・レベルに昇格される場合、サービス・アセットは、Composite-Promotesリレーションシップによって対応するコンポジット・サービス・アセットに関連付けられます。

      • そのコンポーネント・サービスを定義しているcomposite.xmlでWebサービスまたはWSIFバインディングが使用されている場合、Endpoint: Web Serviceアセットが作成されます。これにより、バインディング・タイプ属性がWeb ServiceまたはWSIFに設定されます。サービスが昇格される場合、これは、Composite-Promotesリレーションシップによってコンポジット・デプロイメント・サービス・アセットに関連付けられます。

      • そのコンポーネント・サービスを定義しているcomposite.xmlでEJBまたはADFバインディングが使用されている場合、エンドポイント・アセットが作成されます。これにより、バインディング・タイプ属性がADF ServiceまたはEJB Serviceに設定されます。サービスが昇格される場合、これは、Composite-Promotesリレーションシップによってコンポジット・デプロイメント・サービス・アセットに関連付けられます。

      • コンポーネント・サービスにJCAまたはB2Bアダプタが使用される場合、アダプタ構成アセットが作成されます。JCAアダプタの場合、これは、対応するアーティファクト: JCAアセットに関連付けられます。これは、対応するアダプタ・アセットに関連付けられます。サービスが昇格される場合、アダプタ構成は、Composite-Promotesリレーションシップによってコンポジット・デプロイメント・サービス・アセットに関連付けられます。

    • コンポーネントによって使用される非昇格済コンポーネント参照により、インタフェース・アセットが生成されます。いずれのコンポーネント参照にも新しいサービスは作成されません。ただし、対応するサービス・アセットがOracle Enterprise Repositoryまたは現在のイントロスペクション内にすでに存在する場合、これらはコンポーネント参照に関連付けられます。このルールにより、参照する側のプロジェクトと公開する側のプロジェクトの両方のネームスペースで重複するサービス・アセットが作成されることを防止できます。これは、Partner-Link pointリレーションシップによってコンポーネント・レベルのアセットに関連付けられます(Service-Frontsリレーションシップによって関連付けられるメディエータは除く)。

      • 昇格済コンポーネント参照の場合、対応するサービス・アセットがOER内にある場合、サービス・アセットは、Composite-Promotesリレーションシップによって対応するコンポジット参照アセットに関連付けられます。

      • WebサービスまたはWSIFバインディングを使用してデプロイされた昇格済コンポーネント参照の場合、対応するEndpoint: Web ServiceがOER内にある場合、これは、Composite-Promotesリレーションシップによってコンポジット・デプロイメント参照アセットに関連付けられます。

      • ADFまたはEJBバインディングを使用してデプロイされた昇格済コンポーネント参照の対応するエンドポイントがOER内にある場合、これは、Composite-Promotesリレーションシップによってコンポジット・デプロイメント参照アセットに関連付けられます。

      • JCAまたはB2Bアダプタを使用してデプロイされた昇格済コンポーネント参照の場合、対応するアダプタ構成アセットがOER内にある場合、これは、Composite-Promotesリレーションシップによってコンポジット・デプロイメント・サービス・アセットに関連付けられます。

6.3.1.6 JCAアダプタ

JCAアダプタ拡張を使用するOracle SOA SuiteまたはOracle Service BusからWSDLが収集される場合、Oracle Enterprise Repositoryで次のアクションが行われます。

  • ハーベスタは、ハーベスタのadapters.xmlファイルの構成に従い、Oracle Enterprise Repository内でアダプタ・アセットを見つけようとします。

  • 特定のサービスによって使用されるバインディングおよび接続性情報が含まれるアダプタ構成アセットが作成されます。

    • これは、アダプタ・アセットに関連付けられます。

    • これは、アダプタ構成を使用しているサービス・アセットに関連付けられます。

  • ハーベスタは、ハーベスタのadapters.xmlファイルの構成に従い、Oracle Enterprise Repository内でアプリケーション・アセットを見つけようとします。

    • デフォルトでは、アプリケーション・アセットは次のすべてのアダプタに対してサポートされています。

      • Oracle Applications (E-Business Suiteとも呼ぶ)

      • PeopleSoft

      • Siebel

      • SAP

      • JDE One World

  • サービスにエンドポイントが含まれる場合、アプリケーション・デプロイメント・アセットが作成されます。

    • これは、アプリケーション・アセットに関連付けられます。

    • これは、エンドポイント・アセットに関連付けられます。

    img_adap.gifについては周囲のテキストで説明しています。

6.3.1.7 Oracle BSE (WSDL/SOAP)を介したアプリケーション

BSE (Business Service Engine)を使用して外部アプリケーションに接続するBPELプロセスまたはアプリケーションが収集される場合、Oracle Enterprise Repositoryで次のアクションが行われます。

  • ハーベスタは、ハーベスタのadapters.xmlファイルの構成に従い、Oracle Enterprise Repository内でアプリケーション・アセットを見つけようとします。

  • サービスにエンドポイントが含まれる場合、アプリケーション・デプロイメント・アセットが作成されます。

    • これは、アプリケーション・アセットに関連付けられます。

    • これは、エンドポイント・アセットに関連付けられます。

      img_soap.gifについては周囲のテキストで説明しています。

6.3.1.8 プロキシ・サービスまたはビジネス・サービス

プロキシ・サービスまたはビジネス・サービスをOracle Enterprise Repositoryに発行すると、Oracle Enterprise Repositoryで次のアクションが行われます。

  • サービス・タイプがプロキシ・サービスまたはビジネス・サービスであるサービス・アセットが作成されます。

  • Contains interfaceリレーションシップを使用してサービスがインタフェース・アセットに関連付けられます。

  • Oracle Service Bus内でプロキシ・サービスまたはビジネス・サービスのタイプがWeb Serviceである場合

    • ポート・タイプ用にインタフェース・アセットが作成されます。

    • ポート用にエンドポイント・アセットが作成されます。

      • これにより、Oracle Enterprise RepositoryのWeb UIの「概要」セクションにEndpointURIプロパティが表示されます。

    • "Deployed to"リレーションシップを使用してサービス・アセットが"Endpoint"アセットに関連付けられます。

    • WSDLアーティファクト・コンテンツが含まれるWSDLアーティファクト・アセット(タイプ: アーティファクト:WSDL)が作成されます。

  • Oracle Service Bus内でプロキシ・サービスまたはビジネス・サービスのタイプがWebサービスでない場合

    • ポート・タイプ用にインタフェース・アセットが作成されます。

    • ポート用のエンドポイント・アセットが作成されます。

      • これにより、Oracle Enterprise RepositoryのWeb UIのハーベスタ・プロパティ・セクションにEndpointURIプロパティが表示されます。ハーベスタ・プロパティの詳細は、B.10項「ハーベスタのプロパティ」を参照してください。

    • "Deployed to"リレーションシップを使用してサービス・アセットがエンドポイント・アセットに関連付けられます。

    • このサービスに関連付けられるWSDLはありません。このため、RR-XUユーティリティを使用してUDDIと統合できなくなります。また、Oracle Enterprise RepositoryのWeb UIの「使用」|「ダウンロード」機能、またはOracle Eclipse WorkshopのService Consumption Framework機能を使用してWSDLを使用することはできません。

  • WSDLアーティファクトがWSDLをインポートし、XSDをインポート/インクルードする場合、"References"リレーションシップを使用してこれらのWSDLおよびXSDアーティファクト・アセットに関連付けられます。

  • プロキシ・サービスは、"Fronts"リレーションシップを介して、直面するビジネス・サービスまたはプロキシ・サービスに関連付けられます。

  • プロキシ・サービスは、"Invokes"リレーションシップを介して、呼び出す外部サービスおよびフローに関連付けられます。

  • Oracle Service Busでインタフェースを定義するアーティファクト(アーティファクト:WSDLアーティファクト:XSDまたはアーティファクト:MFL)は、"Defined by"リレーションシップを介してインタフェース・アセットに関連付けられます。

  • Oracle Service Busでサービスを実装するために使用されるアーティファクト(アーティファクト:XQueryアーティファクト:XSLTアーティファクト:MFLまたはアーティファクト:WS-Policy)は、"Artifact-References"リレーションシップを介してアーティファクト:Proxyまたはアーティファクト:Bizアセットに関連付けられます。

6.3.1.9 Oracle Service Bus (OSB)プロジェクト

Oracle Service Busプロジェクトは、コマンド行からOracle Enterprise Repositoryに発行できます。プロジェクトは、コマンドExport|Oracle Service Bus: Configuration jarを使用してOracle Service Bus Workshopからエクスポートする必要があります。

ハーベスタにより、プロキシ・サービス、ビジネス・サービスおよびフローが処理されます。また、BPEL、WSDL、XSD、XSLT、XQuery、WS-PolicyおよびMFLなどのアーティファクトも処理され、これらのアーティファクト間に存在する依存関係を検出するためにアーティファクトが収集されます。ハーベスタにより、エンティティがOracle Enterprise Repository内に作成され、これらの間のリレーションシップが作成されます。

img_osb.gifについては周囲のテキストで説明しています。

注意:

収集を行う場合は、収集対象のコンテンツにより適したハーベスタを使用してください。たとえば、Oracle Service Busプロジェクトを収集する場合、Oracle Enterprise Repositoryインストールで提供されているハーベスタではなく、Oracle Service Busハーベスタを使用してください。同様に、AIAを収集する場合は、AIAハーベスタを使用してください。


6.3.1.10 BPMN

BPMNアーティファクトをOracle Enterprise Repositoryに発行すると、Oracle Enterprise Repositoryで次のアクションが行われます。

  • ビジネス・プロセス・アセット(タイプ: ビジネス・プロセス:BPMN)がタイプがアーティファクト:BPMNのアーティファクト・アセットに直接関連付けられます。

  • BPMNアーティファクト・コンテンツが含まれるBPMNアーティファクト・アセット(タイプ: アーティファクト:BPMN)が作成されます。

  • "Defined by"リレーションシップを使用して、ビジネス・プロセスがBPMNアーティファクト・アセットに関連付けられます。

6.3.2 Oracle Business Process Analysisプロジェクトの収集

Oracle Enterprise Repository Harvester 11gは、SOA Oracle Business Process Analysis (BPA)プロジェクトがSOAコンポジットに変換される場合にBPAプロジェクトの収集をサポートします。実行する手順は次のとおりです。


注意:

Oracle JDeveloper 11g Release 1 (11.1.1.2.x)は、BPAサーバーからのBPELプロセスのインポートはサポートしません。インポートするには、11gリリース1 (11.1.1.7) JDeveloperを使用する必要があります。


手順1: BPAプロジェクトのSOAコンポジットへの変換

  1. BPA Architectを使用してBPAプロセスを設計します。

  2. デザイナ・ウィンドウを右クリックし、「SOA」「ビジネス・プロセスをBPELプロセスに変換」を選択します。デザイナ・ウィンドウを右クリックし、「SOA」「ITとブループリントを共有」を選択します。

  3. JDeveloperを開き、BPAサーバー接続を作成します(まだ行われていない場合)。

  4. 新しいアプリケーションを作成し、新しいSOAプロジェクトを作成します。

  5. 「SOA設定の構成」ダイアログで、Oracle BPA Blueprintからのコンポジットを選択し、「終了」をクリックします。

    新しいアプリケーションおよびSOAプロジェクトの作成の詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。

  6. 図6-5に示すように、BPAサーバーを展開し、必要なBPMNプロセスを選択します。「OK」をクリックし、SOAプロジェクトを作成します。BPAサーバーの詳細は、http://www.oracle.com/technology/software/products/bpa/index.htmlにあるBPAドキュメントを参照してください。

    図6-5 「BPAブループリント・コンポジットの作成」ダイアログ

    図6-5の説明が続きます
    「図6-5 「BPAブループリント・コンポジットの作成」ダイアログ」の説明

  7. BPELプロセスを開き、すべてのコンパイル・エラー(存在する場合)を修正します。アプリケーションを閉じます。

手順2: 変換したBPAプロジェクトの収集

  1. Oracle SOA Suiteプロジェクトを収集します。詳細は、6.3.14.9項「SOAプロジェクトの収集」を参照してください。

  2. JDeveloper 11gリリース1 (11.1.2)を開きます。前述のアプリケーションを開き、右クリックし、Oracle Enterprise Repositoryに収集するためのプロジェクトの収集オプションを選択します。

6.3.3 Oracle Business Process Management 11gプロジェクトの収集

Oracle Enterprise Repository Harvester 11gは、Oracle Business Process Management (Oracle BPM)プロジェクトの収集をサポートしています。Oracle SOA 11gの一部として、Oracle JDeveloperは、BPMNプロセスを使用したOracle BPMプロジェクトの設計および開発をサポートしています。BPMNコンポーネントを持つコンポジットとしてプロジェクトを開発してから、BPMプロジェクトをOracle Enterprise Repositoryに収集できます。実行する手順は次のとおりです。

手順1: JDeveloperでのBPMプロジェクトの作成

BPMプロジェクトを作成するには、次の手順を実行します。

  1. JDeveloperの「アプリケーション・ナビゲータ」で、「新規アプリケーション」をクリックします。「汎用アプリケーションの作成 - アプリケーションの名前付け」ページが表示されます。

  2. 「アプリケーション」フィールドに名前を入力し、「次へ」をクリックします。「汎用アプリケーションの作成 - プロジェクトの名前付け」ページが表示されます。

  3. 「プロジェクト名」フィールドにBPMプロジェクトの名前を入力します。

  4. 図6-6に示すように、「プロジェクト・テクノロジ」タブの「選択可能」リストで「BPM」をダブルクリックし、「選択済」リストに移動します。

    図6-6 汎用アプリケーションの作成 - 「プロジェクトの名前付け」ページ

    図6-6については周囲のテキストで説明しています。
  5. 「終了」をクリックします。

手順2: BPMプロセスの設計およびSOAサーバーへのデプロイ

BPMプロセスの設計およびSOAサーバーへのデプロイの詳細は、『Oracle Fusion Middleware Oracle Business Process Managementモデリングおよび実装ガイド』のBPMプロジェクトのBPAプロジェクトからの作成に関する項を参照してください。

手順3: JDeveloperからOracle Enterprise RepositoryへのBPMプロジェクトの収集およびOracle SOA Serverへのデプロイ

  • JDeveloper 11gリリース1 (11.1.2)を開きます。

  • 右クリックし、Oracle Enterprise Repositoryに収集するためのプロジェクトの収集オプションを選択します。

img_bpmn.gifについては周囲のテキストで説明しています。

6.3.4 Oracle Service Bus 11gアセットの収集

Oracle Service Bus 11gアセットの収集の詳細は、『Oracle Fusion Middleware Oracle Service Bus開発者ガイド』を参照してください。

6.3.5 Oracle Service Bus 10gアセットの収集

Oracle Service Bus 10gアセットをOracle Enterprise Repository 11gに収集できます。次の手順は、Workspace StudioおよびOracle Service Bus Eclipseを対象としており、Oracle Service Bus 10.3およびOracle Service Bus 10.3.1に対して機能します。

次の手順は、Oracle Service Bus 10.3.1がBEA_HOMEにインストールされており、Oracle Enterprise RepositoryハーベスタがHARVESTER_HOMEにインストールされていることを前提としています。

  1. com.bea.alsb.harvester.connector_1.0.200.zip (ハーベスタ・プラグイン)をダウンロードし、<BEA_HOME>\osb_10.3\eclipse\pluginsディレクトリに解凍します。

  2. 11.1.1.x.x-OER-Harvester.zipをダウンロードして<dir>ディレクトリに解凍します。HARVESTER_HOME<dir>/harvesterになります。

  3. <BEA_HOME>\workshop_10.3\workshop.iniを編集します。次を追加します。

    -Dharvester.home=HARVESTER_HOME

  • コマンド行から実行するには、Linuxの場合はosb10harvest.sh、Windowsの場合はosb10harvest.batを使用します。

  • Antから実行するには、Linuxの場合はosb10runant.sh、Windowsの場合はosb10runant.batを使用します。

Oracle Service Bus Eclipse からの収集の手順

  1. Oracle Workshop for WebLogicを起動します。

  2. Oracle Service Bus構成jarファイルをインポートします。

  3. Oracle Service Busプロジェクトを右クリックし、「Oracle Enterprise Repositoryに発行」をクリックします。「アセットをOracle Enterprise Repositoryに発行」ダイアログが表示されます。

  4. 接続パラメータを入力して、「発行」をクリックします。

詳細は、6.3.1.9項「Oracle Service Bus (OSB)プロジェクト」を参照してください。

6.3.6 JDeveloperからのSOAプロジェクトの収集

SOAプロジェクトをOracle JDeveloperからOracle Enterprise Repositoryに収集できます。SOAプロジェクトを収集するには、次の手順を実行します。

  1. Oracle JDeveloperを開き、Oracle Enterprise Repository接続を作成します。

    1. リソース・パレット・タブをクリックします。

    2. 「新規」「新規接続」「Oracle Enterprise Repository」をクリックします。「Oracle Enterprise Repository接続の作成」ダイアログが表示されます。

    3. 「IDE接続」を選択します。

    4. 「接続名」フィールドにOracle Enterprise Repository接続の名前を入力します。

    5. リポジトリのURL (たとえば、http://localhost:port/oer)を入力します。

    6. リポジトリ接続用の有効なユーザー名/パスワードを入力し、「接続テスト」をクリックします。「ステータス」ペインに成功ステータスが表示された後、IDE接続タブの下にOracle Enterprise Repository接続が表示されます。

  2. アプリケーション・ナビゲータで、SOAプロジェクト・ノードを右クリックし、プロジェクトの収集を選択します。「SOAプロジェクトの収集」ダイアログが表示されます。

  3. 「リポジトリ接続」リストで、手順1で作成したリポジトリ接続を選択します。

  4. 「登録ステータス」リストで未発行を選択します。

  5. 「ハーベスタの説明」フィールドに収集の説明を入力します。

  6. 「OK」をクリックします。これにより、Antスクリプトが実行され、SOAコンポジットがOracle Enterprise Repositoryに収集されます。

  7. 同様に、XSDまたはWSDLをOracle Enterprise Repositoryに収集することもできます。アプリケーション・ナビゲータで、適切なノードを右クリックし、ファイルの収集を選択します。これにより、Antスクリプトが実行され、スキーマ/WSDLがOracle Enterprise Repositoryに収集されます。

6.3.7 JDeveloperからのデプロイ済コンポジットの収集

デプロイ済SOAコンポジットをOracle JDeveloperからOracle Enterprise Repositoryに収集することもできます。デプロイ済SOAコンポジットをOracle JDeveloperから収集するには、次の手順を実行します。

  1. デプロイ済SOAコンポジットが含まれるJDeveloperを開きます。

  2. アプリケーション・サーバー・ナビゲータで、SOAコンポジット・ノードを右クリックし、Enterprise Repositoryに発行を選択します。「Enterprise Repositoryに発行」ダイアログが表示されます。

  3. 次の詳細を入力します。

    • リポジトリ接続: デプロイ済コンポジットの発行先のリポジトリ接続を選択します。

    • 登録ステータス: リストから適切な登録ステータスを選択します。

    • コンポジット名およびリビジョン: デプロイするコンポジットの名前がこのフィールドに表示されます。

    • パーティション名: デフォルト値が表示されます。

    • リモート・サーバーのURL: リモート・サーバーのURLを入力します。

    • デバッグ情報の表示: デバッグ情報を表示する場合は、このオプションを選択します。

Oracle Enterprise Repositoryのサービス、スキーマ、XSLTおよびイベントを使用することもできます。使用状況追跡を有効にするには、JDeveloperアプリケーションをOracle Enterprise Repositoryプロジェクトに関連付ける必要があります。


注意:

WSDL/XSDなどの個々のアセットを収集する場合は、コマンド行からハーベスタを使用します。


6.3.8 JDeveloperアプリケーションとOracle Enterprise Repositoryプロジェクトとの関連付け

  1. アプリケーション・ナビゲータでアプリケーションの右側に表示されるアプリケーション・メニューをクリックします。

  2. 「アプリケーション・プロパティ」を選択します。「アプリケーションのプロパティ」ダイアログが表示されます。

  3. 左側のペインで「リポジトリ」をクリックします。右側に「リポジトリ」ページが表示されます。

  4. 「リポジトリ接続」リストで、使用状況の追跡に使用するOracle Enterprise Repository接続を選択します。

  5. リポジトリ・プロジェクト・リストで、使用状況の追跡に使用するOracle Enterprise Repositoryプロジェクトを選択します。

  6. 「OK」をクリックします。

6.3.9 JdeveloperからのOracle Enterprise RepositoryのWSDLサービスの使用

  1. JDeveloperで、コンポジット・エディタを開きます。

  2. コンポーネント・パレットから、Webサービス・コンポーネントを「外部参照」スイムレーンにドラッグ・アンド・ドロップします。「Webサービスの作成」ダイアログが表示されます。

  3. 「名前」フィールドに参照名を入力します。

  4. 「WSDL URL」フィールドの一番右に表示される「既存のWSDLの検索」アイコンをクリックします。「SOAリソース・ブラウザ」ダイアログが表示されます。

  5. リストからリソース・パレットを選択します。

  6. IDE接続「Oracle Enterprise Repository」「<Connection Name>」「アセット・タイプ」「サービス」を選択し、呼び出すか使用するサービスを選択します。

    サービスに関連付けられているWSDLまたはUDDIキーが1つしかない場合、同じWSDLまたはUDDIキーを使用して参照を作成します。関連付けられているWSDLまたはUDDIキー(あるいはその両方)が2つ以上ある場合、「WSDLの選択」ダイアログが表示されます。使用するURLまたはUDDIキーの1つを選択する必要があります。

    JDeveloperでUDDIキーを解決するには、参照を作成する前にUDDI接続を作成する必要があります。これを行わないと、UDDIキーを選択できません。


    注意:

    同じ手順を使用して、スキーマ(XSD)、イベント(EDL)、変換(XSLT)を参照します。ただし、サービスではなく各アーティファクトを選択します。


6.3.10 重複アーティファクトの検出

WSDL、BPEL、BPMNおよびXSDなどのファイルに関する情報は、アーティファクトとしてOracle Enterprise Repositoryに格納されます。同じアーティファクトを2回格納するのを防止するため、各アーティファクトを格納するときにハーベスタがソフトウェア・ファイルID (SFID)を計算します。新しいアーティファクトを発行する前に、SFIDをリポジトリ内の既存のSFIDと比較することにより、重複がないかどうかを確認できます。

計算されたSFIDはMD5ハッシュです。SFIDを計算する前に一定レベルの正規化が実行されます。特に、アーティファクト・ファイルがXMLである場合、Apache XMLセキュリティ・ライブラリ内のCanonicalizerクラスを使用して正規化されます。これにより、W3C Canonical XML標準(www.w3.org/TR/xml-c14nを参照)に従って正規化が行われます。これには、テキスト・エンコーディング、改行、空白、コメントおよび属性順序付けの正規化が含まれます。W3C標準に指定されていないいくつかの追加正規化も実行されます。これには、ネームスペースの接頭辞の正規化、WSDL内の要素の順序の正規化、ドキュメント要素の削除、およびインクルード/インポートされたファイルのインライン化が含まれます。

6.3.11 収集されたアーティファクトのダウンロード

ハーベスタにより、収集したアセットからダウンロードされる場合があるアーティファクト・バンドルが作成されます。これらのアセットのアーティファクト・バンドルはzipファイルに格納されます。たとえば、エンドポイントの場合、WSDLファイルおよび関連付けられたXSDファイルは、zipペイロード内の相対的な場所に格納されます。

1つのアーティファクトによって別のアーティファクトがインポートされる(たとえば、WSDLによってXSDがインポートされる)場合、親に対して相対的な子アーティファクトが常に参照されます。たとえば、MyWSDL.wsdlがc:\temp内にあり、インポートされる子XSDがc:\temp\schemas\MyXSD.xsd内にある場合、親MyWSDL.wsdlは相対パス./schemas/MyXSD.xsdを使用して子をインポートします。バンドルがダウンロードされる際、親が子アーティファクトを解決できるように、親に対して相対的なschemasと呼ばれるフォルダに子を作成する必要があります。

アセットの使用/ダウンロードの詳細は、『Oracle Fusion Middleware Oracle Enterprise Repositoryユーザーズ・ガイド』を参照してください。

6.3.12 収集されたアセットの検索

次の2つのいずれかの方法を使用して、収集されたアセットを検索できます。

6.3.12.1 使用方法の使用

使用方法に基づいて、収集されたサービスを検索できます。「基本検索」セクションで、図6-7に示すように、使用方法リストから「WSDLポート」を選択できる場合、検索により、WSDLサマリーを持つサービス、WSDLに定義されているエンドポイント、およびglobalに設定されたスコープが返されます。また、このリストは、「詳細な検索オプション」の下で使用することもできます。

図6-7 「アセット」ペイン - 使用方法

図6-7の説明が続きます
「図6-7 「アセット」ペイン - 使用方法」の説明

6.3.12.2 メタデータの使用

各アセットには、問合せ用として使用できるプロパティがハーベスタによってタグ付けされます。

図6-8に、書込み操作を呼び出すビジネス・プロパティに対する問合せを示します。検索画面を表示するには、Oracle Enterprise Repository Webコンソールのメイン・ページで「詳細な検索オプション」をクリックします。「詳細な検索オプション」ダイアログで、次を実行します。

  • 追加基準によるフィルタ: オプションを選択します。

  • フィールドの選択: リストから「internal.introspector.store」を選択します。

  • XPathの入力: テキスト・フィールドに「/」と入力します。使用可能なフィールドのリストが表示されます。

図6-8 Oracle Enterprise Repositoryでの「詳細な検索オプション」ダイアログの表示

図6-8の説明が続きます
「図6-8 Oracle Enterprise Repositoryでの「詳細な検索オプション」ダイアログの表示」の説明

次の検索基準が使用可能です。

  • ハーベスタの説明

  • ハーベスタ・バージョン

  • ハーベスタのネームスペース

  • 収集者

  • 呼び出されたビジネス・プロセスの操作

6.3.13 ハーベスタ内で作成されたアセットのプレビュー

「プレビュー」機能を使用して、ハーベスタ内で作成されたアセットを表示できます。次のいずれかの方法を使用して「プレビュー」機能を使用できます。

コマンド行の使用

コマンド行またはAntタスクで、"-preview true"を追加すると、ハーベスタが実行され、作成されるすべてのアセットのリストが表示されますが、変更が実際にコミットされることはありません。

Using the HarvesterSettings.xmlファイルの使用

プレビュー・モードは次のようにHarvesterSettings.xmlファイルで設定することもできます。

<introspection preview="true">
       <reader>com.oracle.oer.sync.plugin.reader.file.FileReader</reader>
       <writer>com.oracle.oer.sync.plugin.writer.oer.OERWriter</writer>
</introspection>

6.3.14 ベスト・プラクティス

この項では、ハーベスタに関するベスト・プラクティスについて説明します。内容は次のとおりです。

6.3.14.1 収集用として推奨される権限

レジストラまたはOracle Enterprise Repository内のすべてのアセットを表示する権限を持つユーザーのみがアセットを収集するように権限を設定します。リポジトリ内のすべてのアセットを表示する権限を持たないユーザーは、すでに存在するアセット、および誤って作成された重複アセットを収集する可能性があります。

6.3.14.2 推奨されないネームスペース・パラメータのオーバーライド

ハーベスタには、収集対象のアセットにプロジェクト・ネームスペースを設定する機能が用意されています。ネームスペースが異なるとアセットが異なるため、プロジェクト・ネームスペースは重複するアセットを検出するために使用されます。ほとんどの場合、このパラメータはオーバーライドしないことをお薦めします。

ただし、Oracle SOA SuiteまたはOracle Service Busから収集する場合、これらの製品のプロジェクト名に基づいてプロジェクト・ネームスペースが自動的に設定されますが、これは推奨される動作です。

このことは、複数のソース(JDevおよびランタイム)から同じプロジェクトおよびリビジョンを収集する場合、特に重要です。ネームスペースを変更またはオーバーライドすると、結果としてOER内のアセットが重複します。

6.3.14.3 WSDLファイル内のネームスペース

収集するWSDLファイル内では、一意のインタフェース、サービスおよびエンドポイントに対して一意のネームスペースを使用することをお薦めします。

Oracle Enterprise Repository内の既存のアセットとの相互の関連付けはQNameを介して行われるため、インタフェース・アセット、サービス・アセットまたはエンドポイント・アセットを大幅に変更するが、QNameは変更しない場合、変更したアセットによって既存のアセットが上書きされます。

表6-7に、Oracle Enterprise RepositoryアセットとWSDL構造の相関を示します。

表6-7 Oracle Enterprise RepositoryアセットとWSDL構造の相関

リポジトリ・アセット WSDL構造

サービス

/definition/service/@name

エンドポイント

/definition/service/port/@name

インタフェース

/definition/portType/@name


6.3.14.4 完了した作業の収集

完了した作業または完了が近い作業のみを収集することをお薦めします。開発環境から定期的に収集する場合、古いバージョンのアセットが収集され、Oracle Enterprise Repositoryが乱雑になる可能性があります。

Oracle Enterprise Repositoryは、エンドポイントおよびホストされているWSDLを持つサービスのみをOracle Service Registryに昇格します。また、具体的なWSDLを持つサービスのみをJDeveloperを介して使用できます。エンドポイントおよびWSDLの場所を取得するために実行時環境から収集することをお薦めします。

6.3.14.5 XSDの収集およびメンテナンス・リリース

一部のスキーマ開発パターンには、不具合の修正またはマイナー構造の追加があり、スキーマのネームスペース変更のないメンテナンス・リリースが含まれます。若干変更されたスキーマ・アーティファクトを後で収集する場合、リポジトリ内にかなりの数の新しいアーティファクト・アセットが作成される場合に影響を与える可能性があります。Oracle Enterprise Repositoryでは、アーティファクトのコンテンツのハッシュ (ソフトウェア・ファイルID (SFID))に基づいてアーティファクト・アセットが相互に関連付けられます。SFIDは、すべてのインポートおよびインクルードがインライン化された後に各アーティファクトのコンテンツについて計算されます。したがって、WSDLによってインポートされたXSDが変更されると、新しいXSDアーティファクトと新しいWSDLアーティファクトの両方が生成されます。

このことは、企業全体で幅広く使用されるスキーマを検討する場合に特に重要です。たとえば、他のスキーマ、WSDL、XSLT、BPELなどによって広くインポートされる下位のスキーマ(customer.xsdなど)があるとします。customer.xsdに対する重要な変更を行い、その後に企業のすべてのアーティファクトを再収集する(なんらかの定期的なバッチ収集など)と、customer.xsdを直接または間接的に参照する同様の大量のアーティファクト・アセットがリポジトリ内に作成されます。

6.3.14.6 アセットのライフサイクル全体でのメタデータの収集

ハーベスタはアセット・ライフサイクル内の複数の場所から呼び出すことができ、呼出しごとに異なるソースからアーティファクトおよびメタデータが収集されます。次のリストに、Oracle Enterprise Repositoryを最新の状態に保つためにアセットのライフサイクル中にハーベスタを使用する方法に関する推奨事項を示します。

  1. 設計/開発時

    実装後、アセットをOracle Enterprise Repositoryに公開する必要があります。アセットに関連付けられたポリシーもOracle Enterprise Repositoryに公開されます。Oracle Enterprise Repositoryガバナンス・プロセスは、実装を一般的なコンシューマ・コミュニティで再利用できるようにする前に実装が組織のポリシーに合致していることを確認する方法を提供します。

    推奨方法: ハーベスタをIDE (JDeveloper、Oracle Service Bus Workshop、EclipseまたはVS.NET)から呼び出します。

  2. デプロイメント時

    デプロイメント後すぐに、アセットをOracle Enterprise Repositoryに公開する必要があります。デプロイメント時には、本番エンドポイントが収集され、アセットのメタデータがエンドポイント情報を使用して更新されます。1つの組織に、開発、テスト、ステージングおよび本番環境をサポートするエンドポイントが複数含まれる場合があります。エンドポイントをOracle Enterprise Repositoryに収集すると、ガバナンス・プロセスも必要になる場合があります。たとえば、開発エンドポイントおよびテスト・エンドポイントは使用者コミュニティ全体で使用可能になる場合がありますが、本番エンドポイントはサービス・プロバイダおよびサービス・コンシューマがサービス契約について交渉するまでは提供されない場合があります。

    推奨方法: ハーベスタをデプロイメント・スクリプト(WLST、Antまたはコマンド行)から呼び出します。

    デプロイメントの最後にハーベスタを呼び出します。-remote_server引数を使用して、実行中のサーバーからデプロイ済アーティファクトを収集します。

  3. ランタイム

    プロジェクトがデプロイされて稼働した後、ランタイム・メトリックが収集され、Oracle Enterprise Repositoryアセットに関連付けられます。ランタイム・メトリックの収集用として複数のオプションが用意されています。その1つが、Enterprise Managerからランタイム・メトリックを収集し、Oracle Enterprise Repositoryを更新するEM-Integrationです。詳細は、『Oracle Enterprise Manager Connectors統合ガイド』を参照してください。

    もう1つの方法は、ランタイム・メトリックをUDDIレジストリに公開するサード・パーティのランタイム・モニタリング・ツールに頼る方法です。メトリックは、UDDIレジストリ内に入ったら、Oracle Registry Repository Exchange Utilityを使用してOracle Enterprise Repositoryに伝播し戻すことができます。Amberpoint統合の詳細は、『Oracle Fusion Middleware Oracle Enterprise Repository統合ガイド』の第5章「Amberpointとの統合」を参照してください。

6.3.14.7 WSDLアーティファクトのダウンロード

Oracle Enterprise RepositoryでWSDLアーティファクトを使用する場合、WSDLファイルをダウンロードできます。多くの場合、このファイルはリモートの場所にあります。また、このファイルのURLは?wsdlで終わる場合があります。これらの場合、WSDLを保存するときに、デフォルトではブラウザ上でファイルの拡張子が.xmlになる可能性があります。その場合は、.xml.wsdlに置き換える必要があります。WSDLファイルは、HTTP/HTTPSまたはFTPサーバー上でホストできます。

6.3.14.8 リタイアしたエンドポイントの収集

エンドポイントが変更された(リタイアしたか別の場所に移動された)場合、エンドポイントをOracle Enterprise Repositoryからリタイアし、Oracle Service Registryのエンドポイントを削除することをお薦めします。次に、新しいエンドポイントを使用して同じWSDLサービスを再収集します。


注意:

Exchange Utilityパブリッシャを再実行しても、リタイアしたエンドポイントはOracle Service Registryから削除されません。


6.3.14.9 SOAプロジェクトの収集

SOAライフサイクルのベスト・プラクティスとして、すべてのSOAプロジェクトをOracle Enterprise Repositoryに収集し、SOAサーバーにデプロイし、Exchange Utilityを実行してOracle Service Registryに公開してから、公開したアセットをOracle Enterprise RepositoryまたはOracle Service Registryから使用することをお薦めします。

6.3.14.10 Oracle JDeveloper 11gからの収集

Oracle JDeveloper 11gから収集する場合、ネームスペースの変更はお薦めしません。

また、2つの異なるステータス(登録済と発行済など)を使用してJDeveloper 11gから同じコンポジットを収集しないことをお薦めします。

6.3.14.11 ハーベスタ・フォルダ内のファイルの収集

解凍されていないハーベスタ・フォルダ(11.1.1.x.x-OER-Harvester.zip)内にあるファイルを収集しないことをお薦めします。これは現在サポートされていません。

6.3.14.12 同じコンピュータでのハーベスタおよびExchange Utilityの実行

Oracle Service Registryにサービスを公開する場合、Exchange Utilityとハーベスタを同じコンピュータ上で実行し、これらが同じURLに解決されるようにすることをお薦めします。また、WSDL内のアクセス・ポイントが完全な形式ではない異なるコンピュータ上でこれらを実行することもできますが、両方のコンピュータ上でこれらが同じURLに解決されることを確認する必要があります。ハーベスタとExchange Utilityでアクセス・ポイントが異なるURLに解決される場合、サービスが失敗し、エラーが発行されます。

6.3.14.13 コンポジット・サービスWSDLの収集

公開されたコンポジット・サービスのWSDLはそれ自体で個別に収集されないようにすることをお薦めします。コンポジット・プロジェクト全体として収集し、完全で正しいSOAアセット・モデルをOracle Enterprise Repository内で取得することを常にお薦めします。

6.3.15 既知の問題

この項では、ハーベスタの既知の問題について説明します。

6.3.15.1 システム内にアセット・タイプが必要

ハーベスタの機能を使用する前提条件として、システム内にアセット・タイプが存在する必要があります。必要なアセット・タイプは、11.1.1.x.x-OER-Harvester-Solution-Pack.zipでインストールされます。

6.3.15.2 アセット・タイプの2つのバージョン

Oracle Enterprise Repository内の既存のアセット・タイプ名の一部が、11.1.1.x.x-OER-Harvester-Solution-Pack.zipでインストールされるアセット・タイプの名前と同じである場合、ハーベスタのアセット・タイプ名にはバージョン番号が付けられます。これは、ハーベスタのアセット・タイプの機能には影響せず、ハーベスタはこれらのアセット・タイプをそのUUIDに基づいて参照します。

6.3.15.3 収集したアセット内でハーベスタ固有のメタデータ・エントリは削除しない

プロセスの収集時にアセットが作成される場合、メタデータ・エントリ・タイプがinternal.inspector.storeおよびinternal.harvester.manifest.storeであるアセットにメタデータ・エントリがアタッチされます。これらのメタデータ・エントリは変更または削除しないでください。そうすると、システムの動作が予測できなくなります。

これらのメタデータ・エントリはOracle Enterprise Repositoryユーザー・インタフェースを使用して削除できないことに注意してください。

6.3.15.4 サポートされるリモート・サーバーのタイプ

現在、ハーベスタは、WebLogic 10.x上で動作しているリモートのOracle SOA Suite、Oracle Service BusおよびWebLogic Serverプロジェクトへの接続のみをサポートしています。

6.3.15.5 不正な暗号化パスワードの使用

不正な暗号化パスワードでHarvesterSettings.xmlファイルを構成した場合、次のような、長いスタック・トレースが表示されます。

log4j:WARN No appenders could be found for logger
(org.apache.axis.i18n.ProjectResourceBundle).
log4j:WARN Please initialize the log4j system properly.
@ com.oracle.oer.sync.framework.MetadataIntrospectionException:
@ com.oracle.oer.sync.framework.MetadataIntrospectionException: Unable to read
plugin file:
C:\Drive-E\XU-harvest-tools\dec16\OER-Harvester\.\plugins\biz.introspector
        at
@ com.oracle.oer.sync.framework.MetadataManager.init(MetadataManager.java:308)
@         at com.oracle.oer.sync.framework.Introspector.<init>
Introspector.java:188)
        at
@ com.oracle.oer.sync.framework.Introspector.main(Introspector.java:395)
@ Caused by: com.oracle.oer.sync.framework.MetadataIntrospectionException:
Unable
to read plugin file:
C:\Drive-E\XU-harvest-tools\dec16\OER-Harvester\.\plugins\biz.introspector
        at
@ com.oracle.oer.sync.framework.impl.DefaultPluginManager.processIntrospector(De
faultPluginManager.java:127)
        at
@ com.oracle.oer.sync.framework.impl.DefaultPluginManager.<init>(DefaultPluginMa
nager.java:73)
        at
@ com.oracle.oer.sync.framework.MetadataManager.init(MetadataManager.java:306)
        ... 2 more
Caused by: java.lang.IllegalArgumentException: The char '0x12' in
'java.lang.Ill
egalArgumentException: The char '0x12' in 'E/?&#8597;?&#8597;H?rd' is not a
valid XML character.' is not a valid XML character.
        at
@ org.apache.axis.components.encoding.AbstractXMLEncoder.encode(Abstrac
tXMLEncoder.java:110)
        at org.apache.axis.utils.XMLUtils.xmlEncodeString(XMLUtils.java:131)
        at org.apache.axis.AxisFault.dumpToString(AxisFault.java:366)
        at org.apache.axis.AxisFault.printStackTrace(AxisFault.java:796)
        at
com.oer.log4j.spi.ThrowableInformation.getThrowableStrRep(Throw
ableInformation.java:42)
        at
com.oer.log4j.spi.LoggingEvent.getThrowableStrRep(LoggingEvent.java:217)
        at
com.oer.log4j.WriterAppender.subAppend(WriterAppender.java:298)
        at
com.oer.log4j.RollingFileAppender.subAppend(RollingFileAppender.java:294
)
        at com.oer.log4j.WriterAppender.append(WriterAppender.java:157)
        at
com.oer.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
        at
com.oer.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(Appen
derAttachableImpl.java:57)
        at com.oer.log4j.Category.callAppenders(Category.java:255)
        at com.oer.log4j.Category.forcedLog(Category.java:445)
        at com.oer.log4j.Category.log(Category.java:882)
        at
@ com.oracle.oer.sync.framework.logger.DefaultMetadataLogger.error(DefaultMetada
taLogger.java:98)
        at
@ com.oracle.oer.sync.plugin.writer.oer.OERConnectionCache.getAuthToken(OERCon
nectionCache.java:138)
        at
@ com.oracle.oer.sync.plugin.writer.oer.OERAssetQueries.getToken(OERAssetQueri
es.java:82)
        at
@ com.oracle.oer.sync.plugin.writer.oer.OERAssetQueries.assetTypeQueryByUUID(AL
ERAssetQueries.java:159)
        at
@ com.oracle.oer.sync.framework.MetadataManager.putAssetType(MetadataManager.jav
a:204)
        at
@ com.oracle.oer.sync.framework.impl.DefaultPluginManager.processIntrospector(De
faultPluginManager.java:104)
        ... 4 more

6.3.15.6 リポジトリ内のビュー・オプション

Oracle JDeveloper 11g以降、リポジトリ内のビュー・オプションをクリックすると、JDeveloper内でアセットの詳細が開きますが、これは読取り専用であり、このページ内のリンクは機能しません。

回避策として、Oracle Enterprise Repositoryコンソールにログインし、詳細に関するリンクをクリックする必要があります。