3.2.3 リポジトリをインポートする
リポジトリのインポートでは,エクスポートでZIPファイルにしたリポジトリを読み込むことができます。インポートできる定義は,リポジトリに格納されたサービス定義やシステム構成定義です。
リポジトリのインポート方法には,エクスポートされたZIPファイル内の定義情報をすべてインポートする方法と,サービス定義情報の一部だけをインポートする方法があります。二つのインポート方法の使い分けについて次の図に例示します。
図3-1 二つのインポート方法の使い分け(例)
![[図データ]](figure/zc030100.gif)
図3-1の例に示すように,複数の開発環境で同時にHCSCコンポーネントを開発する場合,それぞれの開発環境のリポジトリをエクスポートして,マスタのリポジトリに必要な定義情報だけをインポートします。運用環境でエクスポートされたリポジトリの情報を開発環境のリポジトリ(マスタ)にインポートする場合,すべての情報をインポートします。
- 注意
- リポジトリをインポートする場合,アダプタ定義やビジネスプロセス定義などのすべてのエディタを閉じてください。また,HCSCTEプロジェクトのlibディレクトリやsrcディレクトリにアクセスしないようにしてください。エラーが発生した場合,次の点を確認してください。
- HCSCTEプロジェクトのsrcディレクトリ以下のファイルを開いたエディタ(外部エディタを含む)を閉じているか
- HCSCTEプロジェクトのlibディレクトリ以下のライブラリを利用したプログラムを実行していないか
二つのインポート方法の詳細を次に説明します。
- <この項の構成>
- (1) リポジトリのすべての定義情報をインポートする
- (2) リポジトリのサービス定義情報の一部だけをインポートする
(1) リポジトリのすべての定義情報をインポートする
(a) インポート手順
リポジトリ中のサービス定義情報,システム構成定義情報を一括してインポートする手順を次に示します。
- Eclipseのメニューから,[HCSC-Definer]-[定義情報管理]-[全定義情報インポート]を選択します。
インポートを確認するダイアログが表示されます。
- [はい]ボタンをクリックします。
[リポジトリインポート]ダイアログが表示されます。
![[図データ]](figure/zs030600.gif)
- インポートしたい定義のチェックボックスにチェックします。
初めてインポートする場合は,[サービス定義]と[システム構成定義]の両方にチェックしてください。
- [OK]ボタンをクリックします。
[リポジトリインポート]ダイアログが表示されます。
- 読み込むZIPファイルを指定します。
- [開く]ボタンをクリックします。
- [OK]ボタンをクリックします。
「3.2.1(1) リポジトリの指定」で指定したディレクトリにリポジトリが読み込まれます。
(b) 注意事項
- 旧バージョンのリポジトリをインポートすると,リポジトリ情報が今バージョンに引き継がれます。
- Java呼出アクティビティで利用するユーザ定義Javaクラス,またはユーザ定義Javaクラスの前提ライブラリをインポートした場合,HCSCTEプロジェクトをビルドしてください。
- サービス定義,システム構成定義のどちらか片方だけをインポートする場合,ZIPファイル中のインポート対象の定義情報と現在のリポジトリ内の情報(サービス定義またはシステム構成定義)の整合性が保たれている必要があります。不整合がある場合はエラーとなり,サービス定義やシステム構成定義をリポジトリにインポートできません。
リポジトリのインポートで整合性をチェックしている内容を次に示します。
- サービス定義だけをインポートする場合
- リポジトリ内の公開済みサービス定義と,対応するZIPファイル中のサービス定義について,整合性をチェックした場合に,エラーになる条件を次に示します。
表3-1 リポジトリのインポートの整合性チェックでエラーになる条件(サービス定義だけをインポートする場合1)
項番 | エラーになる条件 |
---|
1 | サービスIDが一致しない |
2 | サービス名が一致しない※1 |
3 | 種別(サービスアダプタまたはビジネスプロセス)が一致しない※1 |
4 | ビジネスプロセスのバージョンが一致しない※1,2 |
5 | ビジネスプロセスに定義されているユーザ定義受付の数が一致しない※1 |
6 | ビジネスプロセスに定義されているユーザ定義受付の受付IDが一致しない※1 |
7 | ビジネスプロセスに定義されているユーザ定義受付の受付名が一致しない※1 |
8 | ZIPファイル中のサービス定義がパッケージングされていない※1,2 |
注※1 サービスIDが一致するサービス定義同士をチェックします。
注※2 旧バージョンで作成したリポジトリの場合はチェックしません。
- また,リポジトリ内の公開済みサービス定義と,サービスIDが一致するZIPファイル中のサービス定義について,整合性をチェックした場合に,エラーになる条件を次に示します。なお,リポジトリ内のシステム構成定義で定義されているサーバ構成によって,エラーになる条件が異なります。
表3-2 リポジトリのインポートの整合性チェックでエラーになる条件(サービス定義だけをインポートする場合2)
項番 | リポジトリ内の情報 | エラーになる条件 (サービスIDが一致するZIPファイル中のサービス定義) |
---|
システム構成定義で定義されているサーバ構成 | 公開済みのサービス定義(サービスの種別) |
---|
データベースの使用有無 | Cosminexus RMの使用有無 |
---|
1 | 使用する | 使用する | すべて | - |
2 | 使用しない | 使用しない | ビジネスプロセス | ステータスの永続化にyesが設定されている |
3 | - Webサービス
- SessionBean
- カスタムアダプタ
| サービスの種別にMDB_WSRまたはMDB_DBQが設定されている |
4 | 使用する | 使用しない | ビジネスプロセス | ステータスの永続化にyesが設定されている |
5 | - Webサービス
- SessionBean
- カスタムアダプタ
| サービスの種別にMDB_WSRまたはMDB_DBQが設定されている |
- (凡例)
- -:エラーになる条件はありません。
-
- エラーが発生した場合の対処方法
- 現状のリポジトリ内のサービスをすべて非公開にして,再度サービス定義だけインポートをしてください。
- システム構成定義だけをインポートする場合
- ZIPファイル中の公開済みサービス定義と,リポジトリ内のサービス定義について,整合性をチェックした場合に,エラーになる条件を次に示します。
表3-3 リポジトリのインポートの整合性チェックでエラーになる条件(システム構成定義だけをインポートする場合1)
項番 | エラーになる条件 |
---|
1 | サービスIDが一致しない |
2 | サービス名が一致しない※1 |
3 | 種別(サービスアダプタまたはビジネスプロセス)が一致しない※1 |
4 | ビジネスプロセスのバージョンが一致しない※1,2 |
5 | ビジネスプロセスに定義されているユーザ定義受付の数が一致しない※1 |
6 | ビジネスプロセスに定義されているユーザ定義受付の受付IDが一致しない※1 |
7 | ビジネスプロセスに定義されているユーザ定義受付の受付名が一致しない※1 |
8 | ZIPファイル中のサービス定義がパッケージングされていない※1,2 |
注※1 サービスIDが一致するサービス定義同士をチェックします。
注※2 旧バージョンで作成したリポジトリの場合はチェックしません。
- また,ZIPファイル中の公開済みサービス定義と,サービスIDが一致するリポジトリ内のサービス定義について,整合性をチェックした場合に,エラーになる条件を次に示します。なお,ZIPファイル中のシステム構成定義で定義されているサーバ構成によって,エラーになる条件が異なります。
表3-4 リポジトリのインポートの整合性チェックでエラーになる条件(システム構成定義だけをインポートする場合2)
項番 | ZIPファイル中の情報 | エラーになる条件 (サービスIDが一致するZIPファイル中のサービス定義) |
---|
システム構成定義で定義されているサーバ構成 | 公開済みのサービス定義(サービスの種別) |
---|
データベースの使用有無 | Cosminexus RMの使用有無 |
---|
1 | 使用する | 使用する | すべて | - |
2 | 使用しない | 使用しない | ビジネスプロセス | ステータスの永続化にyesが設定されている |
3 | - Webサービス
- SessionBean
- カスタムアダプタ
| サービスの種別にMDB_WSRまたはMDB_DBQが設定されている |
4 | 使用する | 使用しない | ビジネスプロセス | ステータスの永続化にyesが設定されている |
5 | - Webサービス
- SessionBean
- カスタムアダプタ
| サービスの種別にMDB_WSRまたはMDB_DBQが設定されている |
- (凡例)
- -:エラーになる条件はありません。
-
- エラーが発生した場合の対処方法
- 次の手順を実行して,対処してください。
- 1. 現状のリポジトリをエクスポート(rep.zip)して退避します。
- 2. インポートしようとしたアーカイブファイルから,サービス定義とシステム構成定義の両方をインポートします。
- 3. 手順2でインポートしたサービス定義をすべて非公開にします。
- 4. 手順1で退避しておいたrep.zipから,サービス定義だけをインポートします。
(2) リポジトリのサービス定義情報の一部だけをインポートする
サービス定義情報の一部だけをインポートする場合,インポートの対象として選択できるのは次の情報です。
- HCSCコンポーネント(サービスアダプタ,ビジネスプロセス)に関する定義
- ユーザ定義Javaクラスのソースファイル
- ユーザ定義Javaクラスの前提ライブラリファイル
インポートの対象は複数選択できます。インポート対象として選択したビジネスプロセスから呼び出されるサービスアダプタおよびビジネスプロセスは,必要に応じて同時にインポートされます。また,インポート対象のビジネスプロセスに関連するユーザ定義受付も同時にインポートされます。
(a) インポート手順
リポジトリの一部の情報だけをインポートする手順を次に示します。
- Eclipseのメニューから,[HCSC-Definer]-[定義情報管理]-[サービスインポート]を選択します。
アーカイブファイル(ZIPファイル)を選択するダイアログが表示されます。
- インポートする情報を含むアーカイブファイルを選択して,[開く]ボタンをクリックします。
[サービスインポート]ダイアログ(サービスの選択)が表示されます。
![[図データ]](figure/zs030700.gif)
- インポートするサービスのチェックボックスにチェックします。
- [OK]ボタンをクリックします。
- インポート必須サービスがある場合
- [サービスインポート]ダイアログ(インポート必須サービスの確認)が表示されます。手順5.に進んでください。
![[図データ]](figure/zs030800.gif)
- インポート必須サービスがない場合
- ユーザ定義Javaクラスの有無がチェックされます。
- ユーザ定義Javaクラスがある場合,[サービスインポート]ダイアログ(ユーザ定義Javaクラスの選択)が表示されます。手順6.に進んでください([サービスインポート]ダイアログ(ユーザ定義Javaクラスの選択)は手順5.の画面図を参照)。
- ユーザ定義Javaクラスがない場合,「3.2.1(1) リポジトリの指定」で指定したディレクトリに,選択したリポジトリの内容が読み込まれます。
- 表示されたインポート必須サービスを確認して,[OK]ボタンをクリックします。
ユーザ定義Javaクラスの有無がチェックされます。
ユーザ定義Javaクラスがある場合,[サービスインポート]ダイアログ(ユーザ定義Javaクラスの選択)が表示されます。
ユーザ定義Javaクラスがない場合,「3.2.1(1) リポジトリの指定」で指定したディレクトリに,選択したリポジトリの内容が読み込まれます。
![[図データ]](figure/zs030900.gif)
- インポートするユーザ定義Javaクラス,およびその前提ライブラリファイルのチェックボックスにチェックします。
- [OK]ボタンをクリックします。
「3.2.1(1) リポジトリの指定」で指定したディレクトリに,選択したリポジトリの内容が読み込まれます。
- ポイント
- 同じ名称のHCSCコンポーネントがリポジトリで公開されている場合など,インポートの対象として選択できない場合,[サービスインポート]ダイアログ(サービスの選択)中のサービスの表示は非活性になります。[備考]の内容を参考に,原因を取り除いてから再度インポートしてください。
- インポートしたHCSCコンポーネント(サービスアダプタ,ビジネスプロセス)は,必ずパッケージングしてください。パッケージングの方法については,「9.2 パッケージング」を参照してください。
- Java呼出アクティビティで利用するユーザ定義Javaクラス,またはユーザ定義Javaクラスの前提ライブラリをインポートした場合,HCSCTEプロジェクトをビルドしてください。
(b) 注意事項
- リポジトリ中で同じ名称のHCSCコンポーネントが公開済みの場合,インポートできません。インポートする前に非公開にしてください。
- リポジトリのサービス定義情報の一部だけをインポートする場合,システム構成定義情報はインポートされません。すでに公開しているHCSCコンポーネントをインポートすると,インポートしたHCSCコンポーネントは非公開になります。
- インポート先のリポジトリに,インポート対象のHCSCコンポーネントと同じ名称のHCSCコンポーネントがある場合,内容がすべて上書きされます。サービスID,フォーマットID,ユーザ定義受付IDはすべて更新されます。
- バージョンアップしたビジネスプロセスをインポートした場合,インポートしたビジネスプロセスのバージョンは「1」になります。
- 古いバージョンで作成したリポジトリから,サービス定義情報の一部だけをインポートすることはできません。次の手順でリポジトリを移行し,サービス定義情報の一部をインポートしてください。
1. 現在のリポジトリをアーカイブファイルにエクスポートします。
2. 旧バージョンのアーカイブファイルから,すべての定義情報をインポートします。
3. 手順2でインポートした定義情報を別のアーカイブファイルにエクスポートします。
4. 手順1でエクスポートしたアーカイブファイルから,すべての定義情報をインポートします。
5. 手順3でエクスポートしたアーカイブファイルから,サービス定義情報の一部をインポートします。