ナビゲーションをスキップ

Application Integration Design Console の使い方

  前 次 vertical dots separating previous/next from contents/index/pdf 目次  

アプリケーション ビューのインポートとエクスポート

この節では、次のトピックについて説明します。

 


インポート/エクスポート ユーティリティ

WebLogic Integration には、アプリケーション ビューに使用する簡単なインポート/エクスポート ユーティリティが用意されています。このユーティリティはコマンド ラインから実行でき、アプリケーション ビューのインポート/エクスポート API と共にコードに組み込むことができます。ユーティリティの出力は、アプリケーション ビューが所有するすべての情報が保持されている JAR ファイルに格納されます。アプリケーション ビューで使用された情報のうち、そのアプリケーション ビューが所有していないものは、手動でインポートまたはエクスポートする必要があります。

インポート/エクスポート ユーティリティを使用すると、アプリケーション統合メタデータ オブジェクトをファイル リポジトリからエクスポートしたり、それらのオブジェクトをファイル リポジトリにインポートし直すことができます。このユーティリティでインポートまたはエクスポートできるオブジェクトは次のとおりです。

あるユーティリティの呼び出しでエクスポートされたオブジェクトはすべて、1 つの JAR アーカイブに格納されます。以前にエクスポートされた JAR をインポートすると、その JAR ファイル内のオブジェクトもすべてインポートされます。また、インポートと同時に、既存のエクスポート済みの JAR にオブジェクトを追加して、アプリケーション ビューと接続ファクトリをデプロイすることもできます。

 


インポート/エクスポート ユーティリティを使用したアプリケーション ビューの移行

WebLogic Integration 7.0 環境から WebLogic Integration 8.1 環境にアプリケーション ビューを移行するには、インポート/エクスポート ユーティリティを使用します。このユーティリティでは、移行中にアプリケーション ビューから ACL が削除され、接続ファクトリの使用がリソース アダプタの使用に変換されます。移行されたアプリケーション ビューは、ファイルベースのリポジトリにロードされます。

注意 : アプリケーション ビューを移行するには、事前に WebLogic Workshop にプロジェクトを定義する必要があります。このプロジェクトによって、リポジトリの場所が決まります。

 


インポート/エクスポート メソッドとコマンド ライン

ユーティリティは API としても、コマンドライン ツールとしても使用できます。いずれの場合も、サーバが実行されている必要があります。ユーティリティの実行に使用するスクリプトは、次の場所に保存されています。

WLI_HOME/bin/aiimportexport (cmd または sh)

以下の節では、インポート/エクスポート ユーティリティのコマンドライン パラメータとメソッドについて説明します。

コマンドラインからのインポート/エクスポート ユーティリティの起動

インポート/エクスポート ユーティリティのコマンドライン構文は、次のようになります。

aiimportexport <appname> <root_dir> <file>
[-codepage=Cp<codepage_number>] [-dump=< <namespace> | <'Root'> >]
[-append] [-overwrite] [-publish]
< [-export [object_name]*] | [-import [edit-on-import_filename]
[-eventProps=<connection_factory_name>,<properties_file_name>]*] >

次の表は、インポート/エクスポート ユーティリティのコマンドライン パラメータを示しています。

パラメータ

説明

appname

情報のインポート先またはエクスポート元となる J2EE アプリケーションの名前

root_dir

対象アプリケーションにおける AI リポジトリのルート ディレクトリ

file

エクスポート時に作成される JAR ファイル、またはリポジトリにインポートされる JAR ファイル

-codepage

コンソールに書き込む際に使用されるコードページを設定する。これによって、文字が正しく表示されるようにする。デフォルト値は、米国で使用されている Cp437。他に設定できる値は次のとおり。

Cp850 Multilingual (Latin I)
Cp852 Slavic (Latin II)
Cp855 Cyrillic (Russian)
Cp857 Turkish
Cp860 Portuguese
Cp861 Icelandic
Cp863 Canadian-French
Cp865 Nordic
Cp866 Russian
Cp869 Modern Greek
MS932 Japanese

指定した値は、コンソールのコードページと一致していなければならない。Windows システムの場合、コンソールのコードページは chcp コマンドを使って確認できる。

-dump

指定したネームスペースと、その中にネストされている他のネームスペースの両方にあるすべてのオブジェクトのリストを出力する。フォルダ構造全体のオブジェクトのリストを出力場合は、Root を指定する。

-append

エクスポートした項目でファイルを上書きするのではなく、file で指定されたファイルに項目を追加する。このオプションは、-export を指定した場合のみ使用される。

-overwrite

リポジトリにすでに存在する項目、およびインポートされるアーカイブに存在する項目を上書きする。このオプションは、-import を指定した場合のみ使用される。

-publish

任意のアプリケーション ビューをインポート後にパブリッシュする。このオプションは、-import を指定した場合のみ使用される。

-export

エクスポート操作、および file にエクスポートするオブジェクト (ネームスペースとアプリケーション ビュー) の名前を指定する。ネームスペース内のオブジェクトを指定する場合は、区切り記号にドット (.) 使用する (たとえば、mynamespc.myappview)。

オブジェクト名にはワイルドカードを使用できる。フォルダ構造全体をエクスポートするには、オブジェクト名のリストに Root を追加する。

-import

file 内のオブジェクトをリポジトリにインポートするように指定する。edit-on-import_filename を指定すると、オブジェクトはファイル内の指示に従って編集される。編集は、オブジェクトがリポジトリに追加される前、および要求に応じてデプロイメントの前に実行される。

-eventProps

このオプションは、WebLogic Integration 7.0 以前のエクスポート JAR をインポートする場合のみ使用される。このオプションは、指定された接続ファクトリ名と、その接続ファクトリに生成されるアダプタ インスタンスでのイベントの生成に必要なプロパティが設定されたプロパティ ファイルとのマッピングを定義する。必要に応じて、複数の -eventProps 引数を使用できる。これらのプロパティは、WebLogic Integration 7.0 の EventRouter WAR ファイルの web.xml 内に指定されている。

-eventProps 引数のプロパティ ファイルを作成する場合は、アダプタの EventRouter WAR ファイルの web.xml 内にある init-param 要素から、プロパティ名とプロパティ値のペアを抽出する必要がある。web.xml ファイルの次のプロパティは無視することができ、-eventProps プロパティ ファイルからも除外できる。

eventGeneratorClassName

RootLogContext

AdditionalLogContext

LogConfigFile

LogLevel

MessageBundleBase

LanguageCode

CountryCode

プロパティ ファイルを接続ファクトリの指定された名前にマッピングする -eventProps 引数が検出されない場合は、接続ファクトリをインポートしたときに、生成されたアダプタ インスタンスの着信メッセージング機能が無効になる。アダプタ インスタンスのイベント プロパティを後から指定するには、Application Integration Design Console の [Edit Adapter Instance] ページを使用する。


 

インポート時の編集

インポート時編集ファイル (edit-on-import_filename) を指定すると、インポートするオブジェクトのテキストに対して編集コマンドを実行できます。実行された編集は、オブジェクトをリポジトリに格納する前、またはデプロイする前に完了します。また、このメソッドは、「オブジェクトをインポートする」で説明する方法で使用することもできます。

指定するドキュメントは、次の DTD に準拠している必要があります。

<!ELEMENT ApplicationView (replace*)>
<!ATTLIST ApplicationView name NMTOKEN #REQUIRED
                          newName NMTOKEN #IMPLIED>
<!ELEMENT ConnectionFactory (replace*)>
<!ATTLIST ConnectionFactory name NMTOKEN #REQUIRED
                            newName NMTOKEN #IMPLIED>
<!ELEMENT Schema (replace*)>
<!ATTLIST Schema name NMTOKEN #REQUIRED
                 newName NMTOKEN #IMPLIED>
<!ELEMENT replace EMPTY>
<!ATTLIST replace xpath CDATA #REQUIRED
                  old CDATA #REQUIRED
                  new CDATA #REQUIRED

インポート時編集ドキュメントには、編集するオブジェクトごとに <ELEMENT> タグで区切られたセクションが存在します。編集できるオブジェクトは ApplicationView と Schema です。各セクションでは、名前でオブジェクトを識別し、置換する要素を指定します。任意で、各セクションに、オブジェクトに新しい名前を割り当てるときに使用できる newName 属性を指定することもできます。

replace 要素は、次のアイテムを指定します。

インポート時編集ドキュメントの例

次のインポート時編集記述子のドキュメントは、DBMS.DBMS1 という名前のアプリケーション ビューを編集して、DBMS.DBMS1a という名前に変更する方法を示しています。この XML ドキュメントでは、アプリケーション ビューに対して 3 つの置換、接続ファクトリに対して 1 つの置換を設定しています。

<?xml version="1.0"?>
<!DOCTYPE edit SYSTEM "ImportExportEditOnImport.dtd">
<edit>
   <ApplicationView name="DBMS.DBMS1" newName="DBMS.DBMS1a">
      <replace xpath="/applicationView/@connectionFactory"
         old=""
         new="com.bea.wlai.connectionFactories.DBMS.
              DBMS1a_connectionFactoryInstance"/>
      <replace xpath="/applicationView/@connectionFactoryName"
         old=""
         new="DBMS.DBMS1a_connectionFactory"/>
      <replace        xpath="/applicationView/service[@name='Service1']/
       interactionSpecProperty[@name='sql']"
         old="CAJUN."
         new="PBPUBLIC."/>
   </ApplicationView>
   <ConnectionFactory name="DBMS.DBMS1_connectionFactory"
    newName="DBMS.DBMS1a_connectionFactory">
      <replace xpath="/connection-factory-dd/jndi-name"
         old=""
         new="com.bea.wlai.connectionFactories.DBMS.
              DBMS1a_connectionFactoryInstance"/>
   </ConnectionFactory>
</edit>

最初の置換は、アプリケーション ビュー記述子の connectionFactory 属性を編集して、その中のテキストを新しい値に変更します。ここでは、古い値として空の文字列を指定しているので、ノード内のすべてのテキストが一致することに注意してください。

2 つ目の置換は、アプリケーション ビュー記述子の connectionFactoryName 属性を編集して、その中のテキストを新しい値に変更します。

3 つ目の置換は、Service1 というサービスのサービス記述子を編集して、sql という interactionSpecProperty 要素について、CAJUN. をすべて PBPUBLIC. に置換します。

4 つ目の置換は、接続ファクトリ記述子の jndi-name 属性を編集して、その中のテキストを新しい値に変更します。

インポート/エクスポート API の使用

以下の節では、インポート/エクスポート API に含まれるメソッドについて説明します。インポート/エクスポート API のクラス名は、com.bea.wlai.client.ImportExport です。

サーバのインスタンスに接続する

connect(<multiple signatures>)

connect() メソッドは、サーバ インスタンスとの接続方法を確立します。接続を開始する場所に応じて、connect() に適切な引数を指定する必要があります。

接続を開始する場所

指定する引数

同一サーバ内

引数は不要

リモート クライアントから (InitialContext なし)

URL (文字列として)、ユーザ名、パスワード

リモート クライアントから (InitialContext あり)

InitialContext


 

ネームスペース内のオブジェクトを印刷する

dumpNamespace(String namespaceName)

dumpNamespace() メソッドは、指定されたネームスペース名を表す文字列を取り、そのネームスペースとその中に埋め込まれたネームスペースに含まれるすべてのオブジェクトを印刷します。

オブジェクトをエクスポートする

exportNamespaceObjects(Set objectNames, boolean append, List errors)

exportNamespaceObjects() メソッドは、オブジェクト名 (文字列による修飾名) のリストを取り、それらを指定の出力ファイル (「インポートおよびエクスポート用ファイルを指定する」を参照) にエクスポートします。エクスポート用に一覧されたすべてのオブジェクトは依存関係が検査されます。アプリケーション ビューで使用されたオブジェクトのうち、そのアプリケーション ビューで所有されていないものも、エクスポートされます。

アプリケーション ビューをエクスポートすると、ConnectionFactory と、そのアプリケーション ビューが依存するすべての Schema オブジェクトもエクスポートされます。ネームスペースをエクスポートした場合は、そのネームスペース内のオブジェクト (ネストされているネームスペースも含む) もすべてエクスポートされます。

エクスポートしたファイルを既存のアーカイブに追加する場合、ファイルを上書きする場合、またはファイルを作成する場合は、append を true に設定します。

エクスポート中に発生した致命的でないエラーは、指定した errors List オブジェクトに Exception オブジェクトとして格納されます。

オブジェクトをインポートする

importNamespaceObjects(boolean overwrite, boolean deploy, List errors)

importNamespaceObjects() メソッドは、指定した入力ファイル (「インポートおよびエクスポート用ファイルを指定する」を参照) 内のすべてのエントリを取って、リポジトリにインポートします。リポジトリ内の既存のメタデータを上書きするには、overwrite を true に設定します。インポート時に接続ファクトリとアプリケーション ビューをデプロイするには、deploy を true に設定します。

インポート中に発生した致命的でないエラーは、指定した errors List オブジェクトに Exception オブジェクトとして格納されます。

オブジェクトをインポートおよび編集する

importNamespaceObjects(IDocument editOnImportDoc boolean overwrite, 
boolean deploy, List errors)

importNamespaceObjects() メソッドにインポート時編集ドキュメントを指定すると、インポートするオブジェクトのテキストに対して編集コマンドを実行できます。実行された編集は、オブジェクトをリポジトリに格納する前、またはデプロイする前に完了します。また、このメソッドは、「オブジェクトをインポートする」で説明する方法で使用することもできます。

editOnImportDoc 引数に指定するドキュメントは、「インポート時の編集」で示した DTD に準拠している必要があります。

インポートおよびエクスポート用ファイルを指定する

setFile(File filename)

setFile() メソッドは、エクスポート先またはインポート元として使用されるファイルを指定します。

メッセージの出力先を選択する

setPrintWriter(PrintWriter out)

setPrintWriter() メソッドは、メッセージ (ステータス、診断、エラー メッセージなど) が生成された場合に使用される PrintWriter オブジェクトを指定します。

メッセージを出力するかどうかを選択する

setQuiet(boolean quiet)

setQuiet() メソッドは、進捗状況または情報的なメッセージを出力するかどうかを指定します。メッセージを出力するには、quietfalse に設定します。メッセージの出力を無効にするには、quiettrue に設定します。

 

ページの先頭 前 次