1. サポートツールについて

iPLAssでは以下のツールを提供しています。

2. テナント管理ツール

iPLAssを動かすために必要なテナントの作成はTenantManagerを利用します。

2.1. TenantManager

テナントマネージャーは、テナントの新規作成、削除、一覧表示の機能を持っています。

Swingで作成されたGUI版と、バッチ・シェルで作成されたCUI版があります。 GUI版では上の3つの機能全てを提供しています。 CUI版では新規作成、削除機能のみを提供しています。 AWS環境などへtelnet接続して利用する場合は、CUI版を利用してください。

環境設定

どちらの形式もバッチを実行して起動します。 バッチを実行するにはバッチの共通設定を参照して環境を設定してください。

2.2. TenantManager(GUI版)

GUI版を起動する場合は、 tenant_gui.bat (シェル版はありません)から実行します。

(例)GUIモードで起動した場合

画面が起動すると登録されているテナントの一覧が表示されます。 Partition List ボタンは、MySQLの場合のみ表示されます。

tenant TenantManager GUI
テナントの作成

Create Default Tenant ボタンをクリックして新規作成ダイアログを表示します。

設定可能な項目は以下の通りです。

変数 設定値

name

テナント名を指定します。

AdminUserId

管理者ユーザIDを指定します。

AdminUserPassword

管理者ユーザパスワードを指定します。

url

テナントを識別するURLを指定します。通常「/{name}」を設定します。 ここで設定する値は一意である必要があります。

displayName

テナント表示名を指定します。

TopUrl

テナントのTOP画面のURLを指定します。 初期設定されている「/gem/」は、標準の画面セット用のURLです。

UseLanguages

利用可能言語を指定します。 複数指定する場合はカンマ区切りで指定してください。 先頭をテナントのデフォルト言語に設定します。 未指定の場合は多言語利用をしない設定で作成します。

create blank Tenant

テナント情報と管理者ユーザのみ作成するブランクテナントの作成を指定します。 デフォルトは未チェックです。 別環境から全てのメタデータを移行し、同様の環境(テスト環境など)を作成する場合などに指定します。

MySQL SubPartition Use

サブパーティションの利用有無を指定します。 デフォルトでチェックされています。 MySQLの場合のみ表示されます。

テナントの削除

一覧から削除したいテナントを選択し、 Remove Tenant ボタンをクリックします。

設定可能な項目は以下の通りです。

変数 設定値

MySQL Drop Partition

パーティションを削除するかを指定します。デフォルトでチェックされています。MySQLの場合のみ表示されます。 Partitionを削除する場合、テーブルをロックします。オンライン時などは注意してください。

MySQLパーティション管理

MySQLの場合、内部で利用しているデータベーステーブルに対して、テナントIDごとにパーティションを作成します。 通常、テナントを新規で作成する際にパーティションを作成します。 ただしパーティションの作成処理はテーブルロックを伴うため、複数のテナントを運用している環境などでは、 パーティション作成処理中に他のテナントに対しても影響が発生します。 これを回避するために、データベースの初期構築時やAPサーバがオフラインのとき、 ユーザアクセスが少ない時間帯に前もってパーティションを作成できるようにする機能が Partition List です。

Partition List ボタンをクリックすると、テーブルに対してすでに作成されているパーティション情報を表示します。 Max Tenant Id には、すでに作成済みのパーティション最大のテナントIDが表示されます。 Tenant List ボタンをクリックすることでテナントの一覧画面に戻ります。

パーティションを作成する場合、 Create Partition ボタンをクリックします。

Max Tenant ID に作成する最大のテナントID(数値)を指定して、 Create ボタンをクリックすると、すでに登録済みのパーティションから1ずつ増やしたパーティションを作成します。

例えば 10 を入力した場合、すでに 6 まで作成されていれば、 7、8、9、10 用のパーティションが作成されます。 この実行の間、テーブルロックが発生します。

変数 設定値

Max Tenant ID

作成するパーティションの最大のIDを指定します。

SubPartition Use

パーティションを複数のサブパーティションに分割する場合にチェックします。

2.3. TenantManager(CUI版)

テナント作成

CUI版のテナント作成バッチを起動する場合は、 tenant_create.bat(sh) から実行します。 環境情報が表示された状態で止まるので、何かKEYを入力してください。

ここからテナント作成に必要な情報をウィザード形式で入力します。 表示されるメッセージに従って設定値を入力してください。

  • -show と入力すると、登録されているテナントの一覧を出力します。

  • -env と入力すると、実行している環境が出力されます。

全て設定が終わると、実行前に確認メッセージが表示されます。 yesでテナントの作成を開始します。

正常に作成されると SUCCESS が出力されます。 何かキーを入力して終了します。

テナント削除

CUI版のテナント削除バッチを起動する場合は、 tenant_delete.bat(sh) から実行します。 環境情報が表示された状態で止まるので、なにかKEYを入力してください。

ここからテナント削除に必要な情報をウィザード形式で入力します。 表示されるメッセージに従って設定値を入力してください。

テナント作成同様、 -show-env が利用できます。

全て設定が終わると、実行前に確認メッセージが表示されます。 yesでテナントの削除を開始します。

正常に削除されると SUCCESS が出力されます。 何かキーを入力して終了します。

MySQLパーティション作成

CUI版のMySQL用パーティション作成バッチを起動する場合は、 mysql_partition.bat(sh) から実行します。 環境情報が表示された状態で止まるので、なにかKEYを入力してください。

ここからパーティション作成に必要な情報をウィザード形式で入力します。 表示されるメッセージに従って設定値を入力してください。

テナント作成同様、 -show-env が利用できます。

全て設定が終わると、実行前に確認メッセージが表示されます。 yesでパーティション作成を開始します。

正常に作成されると SUCCESS が出力されます。 何かキーを入力して終了します。

2.4. iPLAssのデータ移行

各環境間でテナントに対するデータを移行する場合、iPLAssではメタデータとエンティティデータが対象になります。 メタデータ、エンティティデータそれぞれに移行ツールを提供しています。

ツールは、AdminConsoleのToolsバッチやシェルの形式で提供していますので、 利用場面に応じて選択してください。

メタデータの移行

メタデータの移行には、AdminConsoleのMetaDataExplorerを利用します。 MetaDataExplorerの詳細についてはMetaDataExplorerを参照してください。
メタデータのエクスポート、インポートについては、バッチも提供しています。

エンティティデータの移行

エンティティデータの移行には、AdminConsoleのEntityExplorerを利用します。 エンティティデータに含まれるバイナリファイルも一緒に移行したい場合は、Packaging機能を利用してください。 EntityExplorerの詳細についてはEntityExplorerを参照してください。

メタデータとエンティティデータを一緒に移行

メタデータとエンティティデータを一緒に移行する場合は、AdminConsoleのPackagingを利用します。 Packagingの詳細についてはPackagingを参照してください。
Pacakageのエクスポート、インポートについては、バッチも提供しています。

2.5. サービス閉塞機能

メタデータの更新作業の際などに、テナントで提供しているサービス(画面やWebAPI)を一時的に利用不可にできる機能です。 サービスは以下の単位で利用不可できます。

  • 画面機能の利用停止
    Action単位で利用不可にできます。

  • WebApiに対する利用停止
    WebApi単位で利用不可にできます。

  • Entityに対する更新処理の停止(データリードオンリー)
    Entity単位で利用不可にできます。

それぞれの利用停止範囲は、ログインユーザ情報やアクセスパス(対象Action、対象WebApi、対象Entity)を参照して、GroovyScriptで制御できます。

tenant TenantMaintenance UnderMaintenance
(例)画面利用停止時の表示画面

設定方法

利用可否設定の確認・編集は、AdminConsoleのTenant設定から行います。

tenant TenantMaintenance StatusCheck

テナント情報の右上に現在のステータスが表示されます。 また編集ボタンから設定を変更できます。

設定画面は、上部の「ステータスの設定」と下部の「利用可否条件の設定」に分かれます。

  • ステータスの設定
    テナント自体のサービス利用可否を設定します。

  • 利用可否条件の設定
    ステータスが利用不可状態の場合にActionやWebApi、Entity等へのアクセス可否を判定するためのスクリプトを設定します。

まず利用不可にしたい条件をあらかじめ作成しておいて、実際に利用不可にしたいタイミングでステータスを更新することで、利用可否条件が有効になります。 「ステータスの設定」と「利用可否条件の設定」で保存タイミング(Saveボタン)が異なります。

ステータスの設定

ステータスは次の3つから選択します。

ステータス 内容

Available

テナントの全ての機能が利用可能な状態です。

UnAvailable

テナントの画面、WebAPIを利用不可にします。 対象の画面(Action)やWebApiは指定されている条件により制御します。

なお、この状態でも管理者ユーザ(user.isAdmin() == true)は全ての機能が利用可能になります。

DataReadOnly

Entityの更新処理(InsertやUpdate、Delete、UpdateAllなど)ができない状態です。 参照のみ可能です。 対象のEntityは指定されている条件により制御します。

なお、この状態でも管理者ユーザ(user.isAdmin() == true)は更新可能になります。

利用可否条件の設定

複数の条件パターンを登録しておいて、そのどれを利用するかを指定する構成になっています。

有効にする条件の指定

予め作成しておいた条件パターンから、有効にする条件を選択します。 未指定の場合、以下の動作となります。

ステータス 内容

UnAvailable

全ての画面(Action)やWebApiが利用不可になります。

DataReadOnly

全てのEntityの更新処理(InsertやUpdate、Delete、UpdateAllなど)ができない状態になります。

  • 条件パターン
    現在定義している条件パターンが表示されます。 条件パターンをダブルクリックすると右の条件に内容を表示します。

  • 条件
    条件として以下の項目を設定できます。

設定項目 設定値

Name

条件名です。

Action Filter Script

Actionに対する利用可否をGroovyScript形式で定義します。 未指定の場合、全てが利用不可となります。 対象のAction名がバインドされるので、それをもとにtrue(利用可)/false(利用不可)を返すように定義します。 利用可能なバインド変数は、編集ダイアログの「Notes」を参照してください。

/* samples/ec01/配下を利用不可に設定 */
if (path.startsWith("samples/ec01/")) {
    return false;
}
return true;

Action Unavailable Customize Message

Actionが利用不可の場合にメンテナンスエラー画面に表示するメッセージをGroovyTemplate形式(HTMLタグ可)でカスタマイズできます。 未指定の場合、標準のメッセージが表示されます。 もしメンテナンスエラー画面(Template)自体を変えたい場合は、テナントの「エラー画面Template制御Script」で制御します。

発生する例外は org.iplass.mtp.tenant.available.UnavailableException です。

詳細は エラー画面Template制御Scriptの設定 を参照してください。

WebApi Filter Script

WebApiに対する利用可否をGroovyScript形式で定義します。 未指定の場合、全てが利用不可となります。 対象のWebApi名がバインドされるので、それをもとにtrue(利用可)/false(利用不可)を返すように定義します。 利用可能なバインド変数は、編集ダイアログの「Notes」を参照してください。

/* WebApiは利用可能 */
return true;

WebApi Unavailable Exception Customize Message

WebApiが利用不可の場合にレスポンスのJSONオブジェクトに設定するエラーメッセージをGroovyTemplate形式でカスタマイズできます。 なお、WebApiが利用不可の場合はHTTPステータスコードは503を返します。

Read Only Entity Filter Script

Entityに対する更新可否をGroovyScript形式で定義します。 未指定の場合、全てが更新不可となります。 対象のEntity名がバインドされるので、それをもとにtrue(ReadOnly=更新不可)/false(更新可)を返すように定義します。 利用可能なバインド変数は、編集ダイアログの「Notes」を参照してください。

/* samples.ec01配下を更新不可に設定 */
if (entityName.startsWith("samples.ec01.")) {
    return true;    //trueがReadOnlyなので注意
}
return false;

Entity Read Only Customize Message

Entityが更新不可の場合に発生する EntityReadOnlyException に対してメッセージをGroovyTemplate形式で指定できます。

汎用画面の場合、 ApplicationException が発生すると画面上(登録ボタン上部)にエラーメッセージを表示するようになっており、 設定したメッセージはここに表示されます。 汎用画面以外の場合はそれぞれのテンプレート内で制御するか、テナントの「エラー画面Template制御Script」で呼び出すテンプレート自体を制御します。

発生する例外は org.iplass.mtp.entity.available.EntityReadOnlyException です。

詳細は エラー画面Template制御Scriptの設定 を参照してください。

3. AdminConsoleのツール

AdminConsoleには開発をサポートするための各種ツールが付属しています。

3.1. EQLWorksheet

EQLWorksheetではEQLを実行し、結果を一覧で表示できます。 Functionや条件文、関数やバインド変数(Notes参照)の利用もできます。 また、EQLWorksheetでは更新や削除はできません。 AdminConsole上で更新や削除を行う場合は、EntityExplorerを利用してください。

EQL実行

EQLを作成し、 Execute ボタンをクリック(もしくはF8押下)することで、実行結果とメッセージログを確認する事ができます。 また、 Select Entity ボタンをクリックすることで、選択したEntityに対するSelect用EQLを自動生成できます。 尚、EQLの文法については画面上のNotes、およびEQL Referenceを参考にして下さい。

CSV出力

EQLが入力された状態で Export CSV ボタンをクリックすると、EQLの実行結果をCSVで出力できます。

3.2. EntityExplorer

EntityExplorerではEntityデータの確認、操作、メンテナンスを行うことができます。 Entityに対するツール機能は、このEntityExplorerに集約されています。

Entity List

Entity定義の一覧表示、各Entityに対するデータ検索を実行することができます。

定義のエクスポート

出力したいEntity定義にチェックを入れ ConfigExport をクリックする事で、Entityメタデータの定義を保存します。

  • CSV形式
    Entityのプロパティ定義またはView定義を一覧形式で出力します。

  • XML形式
    Entity定義、View定義、MenuItem定義、EntityWebApi定義をXML形式で出力します。

Entityデータ操作

Entity ListからEntityの行をダブルクリックする事で、そのEntityのデータを操作する画面を表示します。 Entityのメタデータメニュー上で「データを参照する」を実行した場合も、この画面が表示されます。

データの検索

Where条件、OrderBy条件を指定した検索やデータ件数取得ができます。 Select句はEntityに定義されているプロパティで固定となります。 Select句も含めカスタマイズしたい場合は、EQLWorksheetを利用してください。

データのエクスポート、インポート

指定されたWhere条件、OrderBy条件をもとにCSVファイルとしてエクスポートすることが可能です。 エクスポートされたCSVファイルをインポートすることもできます。

CSVファイルの編集

EntityデータのCSVファイルに対して、ヘッダ行の先頭に"_useCtrl"を追加することで、CSVファイル内の各レコードに対して「追加、更新、削除」を指定できます。 各レコードの先頭に以下のコードを指定します。

  • I
    インサート

  • U
    アップデート

  • D
    削除

  • M
    マージ(インサートorアップデート)

一括更新、一括削除

画面上からEntityに対して一括更新(UpdateAll)、一括削除(DeleteAll)を実行することができます。 一括削除時に「Event Listener」の実行を選択した場合は、内部的に1件ずつ削除を実行します。

Entity Crawl

全文検索 機能で必要となるIndexの作成処理(クローリング)を実行します。 全文検索機能を有効にしている場合にのみ表示されます。

一覧にはEntity定義で全文検索対象として保存されているEntityが表示されます。

クローリング

クローリング方法として、選択したEntityのみを対象に実行する方法と、全Entityをクローリングする2種類を提供しています。

  • 個別選択
    任意のEntityのみを対象としてクローリングしたい場合はリストのEntityにチェックをいれ、 Start Crawl ボタンをクリックして下さい。

  • 全実行
    クローリング対象Entityを全てクローリングしたい場合は Re Crawl All Entity ボタンをクリックして下さい。 この場合、チェックをいれていないEntityも全てが対象となります。

Entity Defrag

Entity定義の変更などにより、不要となった(参照されない)データ、バイナリファイルを削除します。 この実行によりデータベースの検索対象レコード件数が減るので、レスポンスが向上する場合があります。

対象のEntityを選択し、 Execute を実行してください。デフラグ処理はサーバ側で非同期に実行されます。

Audit Log

Entityの操作履歴(参照、追加・更新・削除)を検索、メンテナンス(削除)することができます。

検索処理

いくつかの条件で絞込みを行うことができます。

  • 対象のEntity、Property

  • 操作日時、操作内容

  • 操作したユーザ

検索した結果はCSVとしてエクスポートすることができます。

メンテナンス

不要になった操作履歴を削除することができます。検索処理と同様に条件を指定して絞り込みできます。

3.3. MetaDataExplorer

MetaDataExplorerでは、メタデータの確認、操作、メンテナンスを行うことができます。 メタデータに対するツール機能は、このMetaDataExplorerに集約されています。

検索処理

いくつかの条件で絞込みを行うことができます。

  • 更新日時

  • Tagの作成日時

一覧項目

一覧には、登録されているメタデータがパス(各メタデータ固有のパス+名前)ツリーで表示されます。

項目 内容

Path

メタデータのフルパス(各メタデータ固有のパス+名前)。 ツリー構造で表示します。

ID

メタデータ固有の一意な識別子。

Update Date

メタデータの最終更新日時。

SharedType

登録されているリポジトリの場所。

Shared

共有テナントまたはResouce(XML)、Annotationで定義されたメタデータ

Shared Overwrite

Sharedとして定義されたメタデータを自Tenant内で上書きしたもの。Localの状態。

Local

自Tenant内で定義されたメタデータ。

Sharable

このテナントが共有テナントとして動作する場合に、共有を許可するかの設定値。

Overwritable

このテナントが共有テナントとして動作する場合に、上書を許可するかの設定値。

Repository

メタデータの定義形式。

XML

XML形式

Annotation

Annotation形式

Rdb

Rdb形式

一覧上のメタデータをダブルクリックすることでメタデータの編集画面を表示します。

データのエクスポート、インポート

指定されたメタデータをXMLファイルとしてエクスポートすることが可能です。 エクスポートされたXMLファイルをインポートすることもできます。

またメタデータの名前の一覧をCSVファイルとして出力することも出来ます。

※インポートについて

インポートファイルをアップロード後、XMLファイルの解析が終わるとインポート可能なメタデータがツリー表示されます。 既存のメタデータと取り込むメタデータの状態によってはエラーや警告が表示されることがあります。 その際は一度両メタデータを確認し、インポートしても問題ないか確認してください。
またテナント情報がXMLに含まれる場合、更新対象の項目を選択するダイアログを表示します。 インポートする項目を選択ししてください。

Tag機能

ローカルのメタデータ(Rdb)をタグとして保存したり、そのタグからメタデータを復元する機能です。 メタデータを復元する際は、純粋な復元ではなく再インポートとなります。

Status Check機能

登録されているメタデータの整合性をチェックします。 MetaDataSettings メニュー上部からも同様のステータスチェックが実行可能です。

Execute をクリックするとステータスチェックが始ります。 エラーが発生した場合は、画面上にエラーが表示されます。 一覧を選択すると、「エラーメッセージ」にエラー内容が表示されます。 一覧をダブルクリックすると、エラーが発生しているメタデータの編集画面を表示します。

3.4. Packaging

PackagingはメタデータとEntityデータをまとめて、1つのPackage(Zipファイル)として管理する機能です。 作成したPackageはエクスポート、インポートが可能で、テナント間のデータ移行をサポートします。

パッケージの作成

Create を実行すると、Packageの作成画面を表示します。

Packageに含めるメタデータ、Entityデータを選択します。 ダイアログ上下のボタンで画面を切り替えることができます。 最後に Execute Pack でNameを指定して、 Create Package を実行します。

対象となるEntityデータの件数が多い場合は非同期で実行してください。 非同期で実行した場合、進捗状況は一覧画面で確認します。

同期で実行した場合、Packageの作成が完了すると、ダウンロード用のボタンが表示されます。

また非同期で実行した場合や同期で実行した場合でも、 1度作成したPackageは一覧上からダウンロードしたり、インポートすることが可能です。

インポート

別の環境などで作成したPackageを取り込むには、 Upload ボタンを実行します。 アップロード完了後、Packageのインポート画面を表示します。 また既にアップロード済みのPackageや自身で作成したPackageは一覧をダブルクリックすることでインポート画面を表示します。

Entityデータを取り込む場合は、オプションを設定します。

項目 設定内容

既存データを全て削除する

対象となるEntityデータを一度全て削除します。データが削除されたタイミングで1度コミットされます。

Listener処理を実行する

データを更新する際に、EventListenerを実行します。mtpパッケージ配下をインポートする場合は必ず実行してください。

Validation処理を実行する

データを更新する際に、Validationを実行します。更新不可項目を更新する場合は実行できません。

更新不可項目を更新する

更新不可に設定されているプロパティもCSVの内容で強制的に更新します。

変更が無い場合も強制的に更新する(force Update)

エラーデータはスキップしてインポートを続ける

データにエラーが発生した場合も、続けて後続のデータの取り込みを続けます。

Entity定義に存在しないプロパティデータは無視する

旧データの取り込み時など、既に存在しないプロパティは無視して取り込みます。

OID Prefix(英数字)

別サーバや別テナントのデータをインポートする場合に、OIDの衝突を避けるために指定します。 別環境などから取り込む際は必ず指定してください。また、参照関係のあるEntityデータを分割してインポートする場合、同じPrefixを指定してください。

コミット単位

大量データを登録する際は、必ず分割してコミットしてください。

File Locale

出力されているEntityデータはロケールやタイムゾーンに依存した形式となっています。ロケールやタイムゾーンが異なる環境間でインポートする場合は、作成元の値を指定してください。

File Timezone

Import をクリックするとインポートを開始します。 インポート対象にテナント情報が含まれる場合、MetaDataExplorerと同様に項目の選択ダイアログが表示されます。

3.5. PermissionExplorer

PermissionExplorerはセキュリティに関連する定義を一括で設定する機能です。 汎用画面の権限情報で各権限を個別に設定することも出来ますが、PermissionExplorerを利用することで、ロール×権限の表形式で一括管理できます。

Role

Roleエンティティを管理します。 入力内容はロールを参照してください。

Entity Permission

表側にEntity定義、表頭にロールが表示されます。 権限を削除する場合は右クリックのメニューから行います。 入力内容はEntity権限を参照してください。

権限が設定されたセルは緑色、編集したセルはオレンジ、削除したセルは赤の背景色になります。 また、許可/不許可の設定により以下の表示になります。

C|R|U|D

参照(R)、追加(C)、更新(U)、削除(D)の内、許可した操作の頭文字を表示。 条件を指定した場合、「R(*)」のように表示される

All not allowed

参照、追加、更新、削除全てが不許可。

空欄

権限が未設定。

Action Permission

表側にAction定義がツリー構造で、表頭にロールが表示されます。 Action権限ではフォルダ階層に権限を設定することで、その階層から下のAction定義に対する権限をまとめて設定できます。 入力内容はAction権限を参照してください。

権限が設定されたセルは緑色、編集したセルはオレンジ、削除したセルは赤の背景色になります。

WebAPI Permission

表側にWebAPI定義がツリー構造で、表頭にロールが表示されます。 WebAPI権限ではフォルダ階層に権限を設定することで、その階層から下のWebAPI定義に対する権限をまとめて設定できます。 入力内容はWebAPI権限を参照してください。

権限が設定されたセルは緑色、編集したセルはオレンジ、削除したセルは赤の背景色になります。

Workflow Permission

表側にWorkflow定義、表頭にロールが表示されます。 入力内容はWorkflow権限を参照してください。

権限が設定されたセルは緑色、編集したセルはオレンジ、削除したセルは赤の背景色になります。

UserTask Permission

表側にWorkflow定義とUserTaskActivity、表頭にロールが表示されます。 入力内容はUserTask権限を参照してください。

権限が設定されたセルは緑色、編集したセルはオレンジ、削除したセルは赤の背景色になります。

Cube Permission

表側にCube定義、表頭にロールが表示されます。 入力内容はCube権限を参照してください。

権限が設定されたセルは緑色、編集したセルはオレンジ、削除したセルは赤の背景色になります。

3.6. AuthUserExplorer

BuiltinAuthUserExplorerは標準の認証機能に対するユーザをメンテナンスするための機能です。

Userエンティティに対する条件指定とロック状態やパスワード有効期限などのアカウント状態に対する条件指定が可能です。

アカウント状態による検索
  • locked user
    ロックユーザで検索する。 ロックの条件は認証ポリシーと認証ポリシーのアカウントロック回数<エラー回数となる。

  • remaining days to expire password
    パスワードの有効残日数で検索する。 最終パスワード変更日と認証ポリシーのパスワード最大有効期限に対してチェックを行う。

  • last login date
    最終ログイン日時で検索する。

Userのプロパティによる検索

Userエンティティの属性(アカウントID、名前(カナも可)、メール、有効期間残日数(EndDate))やEQLのWhere句を直接指定できます。

ログインエラー回数のリセット

選択したユーザのエラー回数をリセットします。 ログイン時のパスワードエラーが規定回数を超えた場合、アカウントロックとなりログインができなくなります。 エラー回数のリセットを行うことで、再度ログインができるようになります。

なお、エラー回数については、正しいパスワードによるログインを行うか、管理者ユーザ等でユーザのパスワードリセットを行うことでもリセットできます。

3.7. QueueExplorer

QueueExplorerは非同期Commandやスケジュールタスク等の非同期タスクをメンテナンスするための機能です。 キュー毎に積まれているタスクの一覧表示や、過去の実行履歴、未完了のタスクのキャンセルといった操作ができます。

なお、非同期CommandやスケジュールタスクはRdbQueueServiceの「useQueue」をtrueにしないと実行できません。 QueueExplorerについても非同期タスクが実行できない状態では動作しません。

項目 内容

Task ID

Task実行にあたり割り振られたTaskIDです。

Grouping Key

実行対象TaskにGrouping Keyを割り当てていた場合に表示されます。

Status

対象TaskのStatusです。以下のいずれかのStatusが表示されます。

SUBMITTED

登録済。まだタスクは開始されていない。

EXECUTING

タスク実行中。

ABORTED

タスクは中断。

RETURNED

タスク実行完了し、結果が取得されるのを待っている。

COMPLETED

タスク実行完了(結果取得も完了)。

UNKNOWN

不明

Retry Count

何らかの理由でTaskが再実行された場合の実行回数が表示されます。

Exception Handling Mode

実行対象Taskに設定したException Handling Modeが表示されます。

Restart

処理をロールバックした後に再実行します。

Abort

処理を中断します。

Abort Log Fatal

処理を中断し、FATALとしてログ出力します。

キャンセル

一覧で選択したTaskをキャンセルすることができます。 完了しているタスクは選択できません。

削除

一覧で選択したTask情報を削除します。 削除したタスク情報は参照したり、元に戻すことができません。

履歴表示

実行履歴として過去に実行されたTaskを表示します。 背景色が濃い青で表示されます。

3.8. LangExplorer

各Metaデータの多言語情報の確認、更新を行うことが可能です。 テナントの多言語設定で多言語を利用する設定をしている場合は利用可能言語全てを登録する必要があります。 例えば、利用可能言語として日本語、英語を設定しており、各多言語設定で英語のみ登録していた場合、汎用画面にてユーザが日本語を選択すると空表示となります。

多言語編集機能

一覧上のメタデータをダブルクリックすることで画面下部に多言語として編集可能な項目が表示されます。 表をダブルクリックすると行単位で編集状態になります。 編集後に Save ボタンをクリックすることで保存されます。

エクスポート、インポート

編集エリアに表示しているメタデータの多言語情報をCSVファイルとしてエクスポート、インポートすることも可能です。 メタデータ単位でエクスポート、インポートしたい場合は、画面下部の ExportImport ボタンを実行します。

複数のメタデータをまとめてエクスポート、インポートしたい場合は、画面上部のメタデータを選択後、 ExportCSVImportCSV を利用してください。

3.9. LogExplorer

LogExplorerは、テナントのログファイルをダウンロードする機能です。 出力可能なフォルダやファイル名パターンは、service-configのAdminConsoleServiceで指定します。

4. バッチツール

4.1. 共通設定

事前準備

Gradleの`copyRuntimeLibs`タスクを実行してツールの実行に必要なライブラリを「lib」ディレクトリにコピーします。

gradlew copyRuntimeLibs
環境変数定義

ツールの実行に必要となる共通環境変数を設定します。 環境変数は tools_env.bat (Linuxの場合は「tools_env.sh」)に対して設定します。

設定する環境変数は以下のものです。

変数 設定値

SERVICE_CONFIG_NAME

各アプリのservice-configファイル名を指定します。ファイルはクラスパス上に格納されている必要があります。

tools-service-config.xml

MTP_RESOURCE_PATH

リソースファイル(service-config.xmlなど)が格納されているパスを指定します。

.\..\src\main\resources

MTP_LIB_PATH

ライブラリ(jarなど)が格納されているパスを指定します。

.\..\WebContent\WEB-INF\lib

MTP_SOURCE_CLASS_PATH

ソースビルドクラス(ソースのコンパイル先クラス)が格納されているパスを指定します。 開発時にローカルのプロジェクトを参照することを想定しています。

.\..\build\classes

LANG

言語を指定します。system を指定した場合、JVMのLocaleの値を利用します。 ただし、「ja」「en」以外の場合は、「en」を言語として利用します。

system
ja
en

tools_env.bat には予め変数が定義されているので、値を設定してください。

MySQLを利用する際の注意点

MySQL環境に対してテナントを作成する場合、テナントごとにPartitionを作成するDDLが実行されます。 そのため「SERVICE_CONFIG_NAME」で指定した「xxx-service-config.xml」内のDB接続ユーザに対して、「ALTER TABLE」権限が必要となります。 権限を持ったユーザが、アプリケーションからの接続に利用するユーザと異なる場合は、ツールを実行する前に service-config.xml 内の接続ユーザを変更してください。

4.2. Packaging

Packageはテナントに登録されているメタデータやEntityデータをzip形式でまとめたものです。 Package機能を利用して、テナントのメタデータやEntityデータを更新したり、別のテナントに移行することができます。

AdminConsole上にも同様の機能があります。 このバッチは、AdminConsole上のPackagingと連携しています。

バッチ形式では、EntityExplorerに該当する機能は提供していません。 Entityデータをエクスポート、インポートする場合はPackage機能を利用します。

Export

Packageを作成する機能です。 実行形式としてウィザード形式とサイレント形式をサポートします。

バッチファイル
pack_export.bat(sh)

batファイル内に以下の変数が定義されています。必要に応じて修正してください。

変数 設定値

EXEC_MODE

WIZARD

ウィザード形式で実行します。

SILENT

サイレント形式で実行します。

TENANT_ID

テナントIDを指定します。-1の場合、ウィザードまたは設定ファイルで指定します。

PACK_CONFIG

サイレント形式の場合に、設定ファイルのパスを指定します。

ウィザード形式

ウィザード形式の場合、実行に必要な情報を質問形式で設定していきます。

質問 設定値

テナント名を入力してください。

エクスポートするテナントの名前を入力してください。

-show と入力すると、登録されているテナントの一覧を出力します。

出力先ディレクトリを入力してください。

Packageファイルの出力ディレクトリを指定します。 存在しない場合は作成を試みます。

Package名を入力してください。

作成するPackageの名前を入力します。

メタデータ設定

メタデータをExportする場合に表示されます。

質問 設定値

メタデータをExportしますか?

メタデータをエクスポートする場合は yes としてください。 後続の質問が続きます。

Localのメタデータのみを対象にしますか?

エクスポートするメタデータをLocalのみに限定するかを指定します。

全てのメタデータパスをExportしますか?

全てのメタデータを含める場合は yes としてください。 Localでかつ全てを選択した場合は、Localのメタデータを全てエクスポートします。

TenantメタデータをExportに含めますか?

全てをExportするで yes を選択した場合にのみ表示されます。 現状、インポート時に別名、別IDのテナントデータはエラーとしてはじかれます。

Export対象のメタデータパスを指定してください。

全てをExportするで no を選択した場合にのみ表示されます。 個別にパスを指定します。 *の利用、複数指定(カンマ区切り)が可能です。
action/mtp/*,/entity/Sample01,/entity/samples/*

対象メタデータはn件です。リストを表示しますか?

リストを表示するとした場合は、対象となるメタデータの一覧が表示されます。 続けて「処理を続けてよろしいですか?」と聞かれるので、問題なければ処理を続行します。

Entity設定

EntityデータをExportする場合に表示されます。

質問 設定値

EntityデータをExportしますか?

Entityデータをエクスポートする場合は yes としてください。 後続の質問が続きます。

全てのEntityデータをExportしますか?

全てのEntityデータを含める場合は yes としてください。

User EntityデータをExportに含めますか?

全てをExportするで yes を選択した場合にのみ表示されます。 なお、User Entityをインポートしても認証情報はインポートすることができません。 インポートしたUserでログインを行いたい場合は別途T_ACCOUNTテーブルをインポートしてください。

Export対象のEntity名を指定してください。

全てをExportするで no を選択した場合にのみ表示されます。 個別にEntity名を指定します。 *の利用、複数指定(カンマ区切り)が可能です。
mtp.*,samples.Sample01,sample2.sub.*

対象Entityデータはn件です。リストを表示しますか?

リストを表示するとした場合は、対象となるEntityの一覧が表示されます。 続けて「処理を続けてよろしいですか?」と聞かれるので、問題なければ処理を続行します。

被参照プロパティをExportに含めますか?

被参照プロパティをエクスポートする場合に yes を指定します。 インポート時は被参照プロパティは利用しないため(登録対象外)、除外したほうがエクスポートが高速になります。

全て設定が終わると、実行前に確認メッセージが表示されます。 yes でエクスポートを開始します。

正常に作成されると SUCCESS が出力されます。 何かキーを入力して終了します。

エクスポートされたPackageはテナント上にも登録されます。 AdminConsoleのPackage機能で参照することができます。(Typeが Offline として表示されます)

サイレント形式

サイレント形式の場合、実行に必要な情報は設定ファイルで指定します。

設定ファイルは、 conf/pack-exp-config.properties として配布しています。 必要に応じて編集してください。

もし設定ファイルのパスやファイル名を変更した場合は、パッチの PACK_CONFIG を変更してください。

テナントの指定については、バッチ引数でも設定ファイルでも指定することができます。 バッチ引数での指定を優先します。

Import

Packageをインポートする機能です。 実行形式としてウィザード形式とサイレント形式をサポートします。

バッチファイル
pack_import.bat(sh)

batファイル内に以下の変数が定義されています。必要に応じて修正してください。

変数 設定値

EXEC_MODE

WIZARD

ウィザード形式で実行します。

SILENT

サイレント形式で実行します。

TENANT_ID

テナントIDを指定します。-1の場合、ウィザードまたは設定ファイルで指定します。

FILE

インポートファイルを指定します。`empty`の場合、ウィザードまたは設定ファイルで指定します。

PACK_CONFIG

サイレント形式の場合に、設定ファイルのパスを指定します。

ウィザード形式

ウィザード形式の場合、実行に必要な情報を質問形式で設定していきます。

質問 設定値

テナント名を入力してください。

インポートするテナントの名前を入力してください。

Importファイルパスを入力してください。

インポート対象のファイルパスを指定します。

メタデータ設定

インポートファイルにメタデータが存在する場合に表示されます。

質問 設定値

対象メタデータはn件です。リストを表示しますか?

リストを表示するとした場合は、含まれるメタデータの一覧が表示されます。 続けて「処理を続けてよろしいですか?」と聞かれるので、問題なければ処理を続行します。

Entity設定

インポートファイルにEntityデータが存在する場合に表示されます。

質問 設定値

対象Entityデータはn件です。リストを表示しますか?

リストを表示するとした場合は、含まれるEntityの一覧が表示されます。 続けて「処理を続けてよろしいですか?」と聞かれるので、問題なければ処理を続行します。

既存データを全て削除しますか?

すでに登録されているEntityデータを削除するかを指定します。

エラーデータはスキップしてImportを続けますか?

インポートデータにエラーが含まれている場合、そのデータをスキップして次のデータの取り込み処理を継続するかを指定します。

存在しないプロパティは無視してImportを続けますか?

インポートデータにEntity上存在しないプロパティが含まれている場合、そのプロパティを無視して取込み処理を行うかを指定します。

Listener処理を実行しますか?

データ登録時にListenerを実行するかを指定します。

更新不可項目を更新しますか?

Entity更新不可プロパティについて、update時にCSVデータに設定されている値で更新するかを指定します。 これを有効にした場合、Validationは実行できません。

Validation処理を実行しますか?

データ登録時にValidationを実行するかを指定します。

コミット単位を入力してください。

データをコミットする単位を指定します。 大量データを登録する際は、必ず分割してコミットしてください。

OID Prefixを入力してください。

必要に応じてOIDの先頭に付加する文字(英数字のみ)を入力します。 別サーバや別テナントのデータをインポートする場合は、必ず指定してください(自動採番時の重複エラーが発生します)

全て設定が終わると、実行前に確認メッセージが表示されます。 yes でインポートを開始します。

正常に作成されると SUCCESS が出力されます。 何かキーを入力して終了します。

インポートされたPackageはテナント上に登録されます。 AdminConsoleのPackage機能で参照することができます。(Typeが Offline として表示されます)

サイレント形式

サイレント形式の場合、実行に必要な情報は設定ファイルで指定します。

設定ファイルは、 conf/pack-imp-config.properties として配布しています。 必要に応じて編集してください。

もし設定ファイルのパスやファイル名を変更した場合は、パッチの PACK_CONFIG を変更してください。

テナントとインポートファイルの指定については、バッチ引数でも設定ファイルでも指定することができます。 バッチ引数での指定を優先します。

4.3. Cleaner

Temporary Lob Cleaner

利用されていないLOBデータを削除します。 ユーザがファイルアップロード後にEntity自体の登録をやめたものや、LobデータをもつEntity定義が削除されたものなどが対象になります。

バッチファイル
clean_temp_lob.bat(sh)

batファイル内に以下の変数が定義されています。 必要に応じて修正してください。

変数 設定値

TENANT_ID

テナントIDを指定します。-1の場合、全テナントが対象になります。

Temporary User Cleaner

有効期限切れのテンポラリーユーザ情報を削除します。 UserEntityの有効終了日が現在日付より小さい場合且つ、テンポラリーフラグがtrueのユーザが対象になります。

バッチファイル
clean_temp_user.bat(sh)

batファイル内に以下の変数が定義されています。 必要に応じて修正してください。

変数 設定値

TENANT_ID

テナントIDを指定します。-1の場合、全テナントが対象になります。

Invalid MetaData Cleaner

無効な(削除された)メタデータをDB上から物理削除します。 Entityの場合、Entityデータ自体も全て物理削除されます。

バッチファイル
clean_invalid_meta.bat(sh)

batファイル内に以下の変数が定義されています。 必要に応じて修正してください。

変数 設定値

TENANT_ID

テナントIDを指定します。-1の場合、全テナントが対象になります。

Async Task Cleaner

Status.RETURNEDのままのタスクを履歴へ移動し、古い履歴は削除します。

バッチファイル
clean_async_task.bat(sh)

batファイル内に以下の変数が定義されています。 必要に応じて修正してください。

変数 設定値

TENANT_ID

テナントIDを指定します。-1の場合、全テナントが対象になります。

日付の指定について

移動、削除対象の日付の指定はservice-configに設定します。 下記設定を追加し、①及び②の箇所を指定したい日付に変更して下さい。

<!-- AsyncTask queue and counter setting -->
<service>
  <interface>org.iplass.mtp.impl.async.rdb.RdbQueueService</interface>
  <!-- if use async rdb service set to true -->
  <property name="useQueue" value="true" />
  <property name="historyHoldDay" value="3" /> (1)
  <property name="queue" class="org.iplass.mtp.impl.async.rdb.QueueConfig">
    <property name="id" value="0" />
    <property name="name" value="default" />
    <property name="resultRemainingTime" value="172800000" /> (2)
    <property name="worker" class="org.iplass.mtp.impl.async.rdb.WorkerConfig">
      <property name="pollingInterval" value="60000" />
    </property>
  </property>
</service>
1 履歴削除対象となる日付を指定します。書式は日数です。 左記設定の場合、更新日付が3日より古い履歴が削除対象となります。
2 履歴移動対象となる日付を指定します。書式はlong値です。 左記設定の場合、更新日付が2日以前のタスクが移動対象となります。

Auth Provider Cleaner

認証プロバイダが一時的に生成したデータのクリーンナップ処理を行います。 具体的には、RememberMe機能を有効化している場合に、期限切れのトークンを削除する処理が実行されます。

バッチファイル
clean_auth_provider.bat(sh)

batファイル内に以下の変数が定義されています。 必要に応じて修正してください。

変数 設定値

TENANT_ID

テナントIDを指定します。-1の場合、全テナントが対象になります。

Rb Cleaner

ごみ箱内のデータを削除します。

service-configのEntityHandlerServiceで「purgeTargetDate」に日数を指定してください。 実行時から指定した日数より前にごみ箱へ削除されたデータを物理削除します。

バッチファイル
clean_rb.bat(sh)

batファイル内に以下の変数が定義されています。 必要に応じて修正してください。

変数 設定値

TENANT_ID

テナントIDを指定します。-1の場合、全テナントが対象になります。

Rdb Cache Cleaner

CacheServiceの各キャッシュに「RdbCacheStoreFactory」を指定した場合に、有効期間が過ぎたキャッシュをクリアします。

バッチファイル
clean_rdb_cache.bat(sh)

全てのテナントのキャッシュが削除対象となります。 また、指定可能なパラメータはありません。

Storage Space Cleaner

StorageSpaceから指定されたEntityのEntityデータを削除します。

バッチファイル
clean_storage_space.bat(sh)

実行すると、削除に必要な情報をウィザード形式で入力します。

以下の質問に回答してください。

質問 設定値

テナントIDを入力してください。

削除するEntityデータのテナントIDを指定します。

Entity名を入力してください。

削除するEntityデータのEntity名を指定します。

StorageSpace名を入力してください。

Entityデータを削除するStorageSpace名を指定します。

全て設定が終わると、削除処理を行います。

正常に削除されると SUCCESS が出力されます。 何かキーを入力して終了します。

4.4. Entity

Entity Crawl

全文検索用のインデックスを作成します。 新しく追加されたデータをインデックスに含める場合は、インデックスの再作成が必要になります。

バッチファイル
crawl_entity.bat(sh)

batファイル内に以下の変数が定義されています。 必要に応じて修正してください。

変数 設定値

CRAWL_MODE

CRAWL

インデックスを作成します。

RECRAWL

全てのインデックスを削除し、再作成します。

TENANT_ID

テナントIDを指定します。-1の場合、全テナントが対象になります。

Custom Storage Space

iPLAssではAdminConsoleなどを利用して動的にEntityの定義を変更できます。 Entity定義を元に作成されるEntityのデータは、service-configに定義されたStorageSpaceに格納されます。

このバッチは、service-configに定義されたStorageSpaceの情報を元に、データベース上にテーブルをCreateするためのDDLを生成するものです。

Storage Spaceの詳細についてはStorageSpaceを参照してください。

Storage Spaceの設定

バッチを起動する前に、service-configに「Storage Space」の定義を追加します。 「tools-service-config.xml」の以下の箇所を参考に、作成する「Storage Space」の定義を追加してください。

<!-- Entity Store Settings -->
<service>
  <interface>org.iplass.mtp.impl.datastore.StoreService</interface>

  <!--
    カスタムのStorageSpaceを利用する場合、下記のコメントアウトをはずしてプロパティを変更してください。

    If you want to use a custom StorageSpace,
    please change the property and remove the comment out the following.
  -->

  <!--
    <property name="dataStore" class="org.iplass.mtp.impl.datastore.grdb.GRdbDataStore">
      <property name="storageSpace" additional="true">
        <property name="storageSpaceName" value="XXXXX" />
        <property name="tableNamePostfix" value="XXXXX" />
        <property name="varcharColumns" value="128" />
        <property name="decimalColumns" value="32" />
        <property name="timestampColumns" value="32" />
        <property name="doubleColumns" value="32" />
        <property name="indexedVarcharColumns" value="8" />
        <property name="indexedDecimalColumns" value="4" />
        <property name="indexedTimestampColumns" value="4" />
        <property name="indexedDoubleColumns" value="4" />
        <property name="uniqueIndexedVarcharColumns" value="2" />
        <property name="uniqueIndexedDecimalColumns" value="2" />
        <property name="uniqueIndexedTimestampColumns" value="2" />
        <property name="uniqueIndexedDoubleColumns" value="2" />
        <property name="customPartition" value="false" />
      </property>
    </property>
  -->
</service>
設定項目 設定値

storageSpaceName

Entity定義で選択する際に表示されるStorage Space名を指定します。 標準で「default」、「mtp」、「user」が定義されているので、それ以外の名前を指定してください。

tableNamePostfix

StorageSpace用のデータベーステーブルに付加する接尾語を指定します。 英数字のみ利用してください。 標準で「MTP」、「USER」が定義されているので、それ以外の名前を指定してください。

varcharColumns

文字列型のプロパティを格納するための列数を指定します。 標準では、「Oracle:128、MySQL:64」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

decimalColumns

Decimal型のプロパティを格納するための列数を指定します。 標準では、「Oracle:32、MySQL:32」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

timestampColumns

Timestamp型のプロパティを格納するための列数を指定します。 標準では、「Oracle:32、MySQL:32」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

doubleColumns

浮動小数点型のプロパティを格納するための列数を指定します。 標準では、「Oracle:32、MySQL:16」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

indexedVarcharColumns

Index指定された文字列型のプロパティを格納するための列数を指定します。 標準では、「Oracle:8、MySQL:5」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

indexedDecimalColumns

Index指定されたDecimal型のプロパティを格納するための列数を指定します。 標準では、「Oracle:4、MySQL:4」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

indexedTimestampColumns

Index指定されたTimestamp型のプロパティを格納するための列数を指定します。 標準では、「Oracle:4、MySQL:4」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

indexedDoubleColumns

Index指定された浮動小数点型のプロパティを格納するための列数を指定します。 標準では、「Oracle:4、MySQL:4」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

uniqueIndexedVarcharColumns

Unique Index指定された文字列型のプロパティを格納するための列数を指定します。 標準では、「Oracle:2、MySQL:2」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

uniqueIndexedDecimalColumns

Unique Index指定されたDecimal型のプロパティを格納するための列数を指定します。 標準では、「Oracle:2、MySQL:2」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

uniqueIndexedTimestampColumns

Unique Index指定されたTimestamp型のプロパティを格納するための列数を指定します。 標準では、「Oracle:2、MySQL:2」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

uniqueIndexedDoubleColumns

Unique Index指定された浮動小数点型のプロパティを格納するための列数を指定します。 標準では、「Oracle:2、MySQL:2」が設定されています。 Entityのプロパティ型と列の型の対応についてはこちらを参照してください。

customPartition

Partitionを利用する場合に標準のPartitionと異なるPartitionを利用するかを指定します。 標準のPartitionとは、以下の命名規則に則って作成されたテナント単位のPartitionです。

obj_store${tableNamePostfix}_テナントID

MySQLの場合、自動でPartitionが生成できないので、テナント作成用ToolであるTenantManagerでテナントを作成・削除する際にPartitionの作成・削除を行います。 その際、この設定がtrueのStorageSpaceについてはPartitionに対する処理を行いません。

また本ツールで作成されるDDLでも、この設定がtrueのStorageSpaceについてはPartitionに関する指定を出力しません。

storageSpaceは複数定義することが可能です。 複数定義したい場合は、以下のように定義してください。

<property name="dataStore" class="org.iplass.mtp.impl.datastore.grdb.GRdbDataStore">
  <property name="storageSpace" additional="true">
    <property name="storageSpaceName" value="sp1" />
    <property name="tableNamePostfix" value="SP1" />
    ・・・・・
  </property>
  <property name="storageSpace" additional="true">
    <property name="storageSpaceName" value="sp2" />
    <property name="tableNamePostfix" value="SP2" />
    ・・・・・
  </property>
  <property name="storageSpace" additional="true">
    <property name="storageSpaceName" value="sp3" />
    <property name="tableNamePostfix" value="SP3" />
    ・・・・・
  </property>
</property>
Entityのプロパティ型と列の型の対応について

StrageSpaceで設定する列の型は、以下のようにEntityの型に対応しています。

列の型 対象となるEntityプロパティの型

Varchar

AutoNumber、Boolean、Select、String、LongText、Binary

Timestamp

Date、Datetime、Time

Decimal

Decimal、Integer

Double

Float

バッチ実行

「tools-service-config.xml」を保存したらバッチを起動します。

storage_space_ddl.bat(sh)

ここからDDL生成に必要な情報をウィザード形式で入力します。

以下の質問に回答してください。

質問 設定値

Templateが格納されているディレクトリを入力してください。

DDL生成用のTemplateファイル(gtl)が格納されているディレクトリを指定します。 Templateはバッチファイルと同様に、「server-setup-kit」に含まれます。 初期値は、バッチファイルからの相対パスに対して、service-configで指定されたRDBの種類で出力されます。 Templateを別ディレクトリに格納している場合は、ここでディレクトリを指定してください。

出力先ディレクトリを入力してください。

DDLファイルを出力するためのディレクトリを指定します。 存在しない場合は作成を試みます。

対象のStorageSpace名を入力してください。

対象とするStorageSpace名を指定します。 未指定の場合、標準で提供される mtpuser を含む全てを対象にします。 複数指定する場合はカンマで区切ってください。

(例)sp1、sp2、sp3を対象にする場合

sp1,sp2,sp3

パーティションを作成しますか?

標準のパーティション定義を利用してパーティションを作成する場合は yes とします。 ここで no とした場合、パーティションに関するDDLを出力しません。 また yes とした場合でも、StorageSpace定義でcustomPartitionがtrueの場合はパーティションに関するDDLを出力しません。 OracleのStandard Editionを利用するなど、パーティションが利用できない場合は no としてください。

全て設定が終わると、生成を開始します。

正常に作成されると SUCCESS が出力されます。 何かキーを入力して終了します。

出力先で指定したディレクトリにsqlファイルが出力されます。

生成されたStorageSpace用DDL定義に対して、カラムマッピング機能用の列を追加したり、データベースのIndexを変更するなどを行う場合は、 出力された「obj_store.sql」、「obj_store_rb.sql」に対して変更を行ってください。 他のsqlファイルは、ほとんどの場合変更する必要はありません

Storage Space Migration

EntityのStorageSpaceを変更しEntityデータを変更したStorageSpaceへ移動します。

バッチファイル
storage_space_migrate.bat(sh)

実行すると、移行に必要な情報をウィザード形式で入力します。

以下の質問に回答してください。

質問 設定値

テナントIDを入力してください。

移行するEntityのテナントIDを指定します。

Entity名を入力してください。

移行するEntity名を指定します。

移行先のStorageSpace名を入力してください。

移行先のStorageSpace名を指定します。

移行元のStorageSpaceをクリーンアップしますか?

移行元StorageSpaceのEntityデータを削除する場合は yes とします。 ここで no とした場合、移行元のEntityデータは削除されず残ることになります。 移行元のEntityデータを残したまま、移行元のStorageSpaceへ再度移行した場合はEntityデータが重複して登録されることになります。 特別な理由がない限り yes を指定し移行元のEntityデータを削除してください。 もし移行後、移行元のEntityデータを残した状態で再度移行元のStorageSpaceへ移行する場合は、 Storage Space Cleanerにより移行元のEntityデータを削除してください。

全て設定が終わると、移行処理を行います。

正常に移行されると SUCCESS が出力されます。 何かキーを入力して終了します。

4.5. MetaData

Export

メタデータ定義をXMLファイルとしてエクスポートする機能です。 実行形式としてウィザード形式とサイレント形式をサポートします。

バッチファイル
meta_export.bat(sh)

batファイル内に以下の変数が定義されています。必要に応じて修正してください。

変数 設定値

EXEC_MODE

WIZARD

ウィザード形式で実行します。

SILENT

サイレント形式で実行します。

TENANT_ID

テナントIDを指定します。-1の場合、ウィザードまたは設定ファイルで指定します。

META_CONFIG

サイレント形式の場合に、設定ファイルのパスを指定します。

ウィザード形式

ウィザード形式の場合、実行に必要な情報を質問形式で設定していきます。

質問 設定値

テナント名を入力してください。

エクスポートするテナントの名前を入力してください。

-show と入力すると、登録されているテナントの一覧を出力します。

出力先ディレクトリを入力してください。

ファイルの出力ディレクトリを指定します。 存在しない場合は作成を試みます。

ファイル名を入力してください。

作成するファイル名を入力します。

Localのメタデータのみを対象にしますか?

エクスポートするメタデータをLocalのみに限定するかを指定します。

全てのメタデータパスをExportしますか?

全てのメタデータを含める場合は yes としてください。 Localでかつ全てを選択した場合は、Localのメタデータを全てエクスポートします。

TenantメタデータをExportに含めますか?

全てをExportするで yes を選択した場合にのみ表示されます。 現状、インポート時に別名、別IDのテナントデータはエラーとしてはじかれます。

Export対象のメタデータパスを指定してください。

全てをExportするで no を選択した場合にのみ表示されます。 個別にパスを指定します。 *の利用、複数指定(カンマ区切り)が可能です。
action/mtp/*,/entity/Sample01,/entity/samples/*

対象メタデータはn件です。リストを表示しますか?

リストを表示するとした場合は、対象となるメタデータの一覧が表示されます。 続けて「処理を続けてよろしいですか?」と聞かれるので、問題なければ処理を続行します。

全て設定が終わると、実行前に確認メッセージが表示されます。 yes でエクスポートを開始します。

正常に作成されると SUCCESS が出力されます。 何かキーを入力して終了します。

サイレント形式

サイレント形式の場合、実行に必要な情報は設定ファイルで指定します。

設定ファイルは、 conf/meta-exp-config.properties として配布しています。 必要に応じて編集してください。

もし設定ファイルのパスやファイル名を変更した場合は、パッチの META_CONFIG を変更してください。

テナントの指定については、バッチ引数でも設定ファイルでも指定することができます。 バッチ引数での指定を優先します。

Import

メタデータのXMLファイルをインポートする機能です。 実行形式としてウィザード形式とサイレント形式をサポートします。

バッチファイル
meta_import.bat(sh)

batファイル内に以下の変数が定義されています。必要に応じて修正してください。

変数 設定値

EXEC_MODE

WIZARD

ウィザード形式で実行します。

SILENT

サイレント形式で実行します。

TENANT_ID

テナントIDを指定します。-1の場合、ウィザードまたは設定ファイルで指定します。

FILE

インポートファイルを指定します。`empty`の場合、ウィザードまたは設定ファイルで指定します。

META_CONFIG

サイレント形式の場合に、設定ファイルのパスを指定します。

ウィザード形式

ウィザード形式の場合、実行に必要な情報を質問形式で設定していきます。

質問 設定値

テナント名を入力してください。

インポートするテナントの名前を入力してください。

Importファイルパスを入力してください。

インポート対象のファイルパスを指定します。

対象メタデータはn件です。リストを表示しますか?

リストを表示するとした場合は、含まれるメタデータの一覧が表示されます。 続けて「処理を続けてよろしいですか?」と聞かれるので、問題なければ処理を続行します。

全て設定が終わると、実行前に確認メッセージが表示されます。 yes でインポートを開始します。

正常に作成されると SUCCESS が出力されます。 何かキーを入力して終了します。

サイレント形式

サイレント形式の場合、実行に必要な情報は設定ファイルで指定します。

設定ファイルは、 conf/meta-imp-config.properties として配布しています。 必要に応じて編集してください。

もし設定ファイルのパスやファイル名を変更した場合は、パッチの META_CONFIG を変更してください。

テナントとインポートファイルの指定については、バッチ引数でも設定ファイルでも指定することができます。 バッチ引数での指定を優先します。

名前一覧Export

AdminConsoleやPackageバッチなどでエクスポートしたメタデータ定義XMLファイルに含まれるメタデータ名をCSV形式で出力します。

バッチファイル
meta_namelist.bat(sh)

実行すると、Exportに必要な情報をウィザード形式で入力します。

以下の質問に回答してください。

質問 設定値

メタデータのファイルパスを入力してください。

対象のメタデータXMLファイルのパスを指定します。 メタデータXMLファイルまたはPackageで出力したzipファイルを指定してください。

出力先ディレクトリを入力してください。

出力先のディレクトリを指定します。 存在しない場合は作成を試みます。

出力ファイル名を入力してください。

出力する一覧のファイル名を指定します。

全て設定が終わると、出力処理を行います。

正常に作成されると SUCCESS が出力されます。 何かキーを入力して終了します。

4.6. 設定ファイル暗号化

Encoder

service-configに設定する文字列の暗号化を行います。

バッチファイル
crypt_encode.bat(sh)

batファイル内に以下の変数が定義されています。 必要に応じて修正してください。

変数 設定値

CRYPT_CONFIG_FILE

/crypt.properties(デフォルト)

暗号化プロパティファイル(crypt.properties)をクラスパスのルートに配置してください。 ファイル名や配置場所が異なる場合は、この設定を修正してください。

暗号化は暗号化プロパティファイルの設定に基づいて行われます。 プロパティファイルについては難読化を参照してください。 なお、パスフレーズのみファイルからではなく、コンソールで入力した文字列を利用します。

FILE_MODE

-file

暗号化を行う文字列をテキストファイルにて指定する場合はこの変数の設定のコメントアウトを外し有効にしてください。 デフォルトでは無効となってます。

FILE_MODE OFF

変数「FILE_MODE」の設定が無効の状態で実行すると、コンソールから入力された文字列を暗号化します。 暗号化はウィザード形式にて行われます。

以下の質問に回答してください。

質問 設定値

enter passphrase

暗号化の鍵生成用のパスフレーズを入力します。

enter same passphrase again

先に入力したパスフレーズと同じものを入力します。 異なる場合は暗号化を終了します。

enter plain text

暗号化を行う文字列を入力します。

暗号化する文字列を入力後、「encrypted text」の表示とともに暗号化された文字列が表示されます。 暗号化された文字列の表示後、再度「enter plain text」と表示され暗号化する文字列の入力待ちとなり続けて暗号化を行うことができます。 暗号化を終了する場合は暗号化する文字列に何も入力せずにエンターキーを押下してください。

FILE_MODE ON

変数「FILE_MODE」の設定を有効にして実行すると、テキストファイルにて暗号化する文字列を指定して暗号化を行います。 暗号化はウィザード形式にて行われます。

以下の質問に回答してください。

質問 設定値

enter passphrase

暗号化の鍵生成用のパスフレーズを入力します。

enter same passphrase again

先に入力したパスフレーズと同じものを入力します。 異なる場合は暗号化を終了します。

enter file path of plain text

暗号化を行うテキストファイルのパスを指定します。 無効なパスが指定された場合は暗号化を終了します。

暗号化する文字列を入力後、「encrypted text」の表示とともに暗号化された文字列が表示されます。 暗号化された文字列の表示後、再度「enter file path of plain text」と表示され暗号化するテキストファイルの入力待ちとなり続けて暗号化を行うことができます。 暗号化を終了する場合はCTRL+Cを押下してバッチを終了してください。

4.7. LobStore Migration

File to RDB

LobStoreのデータをファイルシステムからRDBへ移行します。

バッチファイル
lobstore_file2rdb.bat(sh)

batファイル内に以下の変数が定義されています。 必要に応じて修正してください。

変数 設定値

TENANT_ID

テナントIDを指定します。-1の場合、全テナントが対象になります。

ROOT_DIR

LobStoreのファイルパスを指定します。デフォルトは「D:\tmp\fileLobStore」です。

MIGRATE_TARGET

移行対象のデータを指定します。

ALL

Binary型及びLongText型のLobデータ

BINARY

Binary型のLobデータ

LONGTEXT

LongText型のLobデータ

RDB to File

LobStoreのデータをRDBからファイルシステムへ移行します。

バッチファイル
lobstore_rdb2file.bat(sh)

batファイル内に以下の変数が定義されています。 必要に応じて修正してください。

変数 設定値

TENANT_ID

テナントIDを指定します。-1の場合、全テナントが対象になります。

ROOT_DIR

LobStoreのファイルパスを指定します。デフォルトは「D:\tmp\fileLobStore」です。

MIGRATE_TARGET

移行対象のデータを指定します。

ALL

Binary型及びLongText型のLobデータ

BINARY

Binary型のLobデータ

LONGTEXT

LongText型のLobデータ

開発・運用サポート