wrapper.event.<event_name>.command.argv.<n> プロパティ群

対応バージョン :3.3.0
対応エディション :プロフェッショナル版スタンダード版 (未対応)コミュニティー版 (未対応)
対応プラットフォーム :WindowsMac OSXLinuxIBM AIXFreeBSDHP-UXSolarisIBM z/Linux

このプロパティには、ある特定のイベントに反応して実行するコマンドの引数を指定します。

他のイベントコマンドのプロパティと同じように、それぞれ以下のように定義することができます。

  • 全てのイベント共通設定:[wrapper.event.default.command.argv.<n>]プロパティ
  • 特定のイベント用の設定:[wrapper.event.<event_name>.command.argv.<n>]プロパティ

プロパティ名の「<event_name>」コンポーネント部には、 「default」(デフォルト)のキーワード、あるいは、 「イベントの種類の1つ」を設定します。 プロパティ名の「<n>」コンポーネント部には、 「1」からカウントアップしていく整数値のナンバリング数値を入れて指定します。 [wrapper.ignore_sequence_gaps] プロパティで、シーケンス内でギャップ(途切れ)検索を「許可する/許可しない」を任意に設定にすることができます。

注意

default」(デフォルト)のキーワードの利用は、Wrapper バージョン 3.5.5 で追加されました。


event.default.command:

コマンドの個別エレメントにデフォルト値「default」を指定することはできません。 まず Wrapper は「wrapper.event.<event_name>.command.argv.1」を探します。 もし見つかった場合、その「<event_name>」(イベント名)を含むコマンドエレメントだけを探します。 もし見つからない場合、「wrapper.event.default.command.argv.1」プロパティを探します。 見つけると、「default」イベントプロパティを使用してコマンドの残りの部分を検索します。

default イベントコマンド」を定義することは、(ユーザー定義イベントを含む) Wrapper イベントごとに毎回、そのコマンドを実行することになりますので注意してください。

設定例:
wrapper.event.jvm_prelaunch.command.argv.1=/usr/bin/mycleanup
wrapper.event.jvm_prelaunch.command.argv.2=/tmp/myapp-tmp

さらに設定例や様々なイベントプロパティを一緒に使用する方法については、 イベントコマンド(イベントに応じたコマンド実行)を参照してください。


イベントハンドラー変数の利用:

Wrapper が子プロセスを実行するためのコマンドラインを生成している時、 イベントハンドラー変数は、その値で置き換えます。

設定例:
wrapper.event.jvm_prelaunch.command.argv.1=/usr/bin/mycleanup
wrapper.event.jvm_prelaunch.command.argv.2=/tmp/myapp-tmp-%WRAPPER_EVENT_JVM_PID%

問題が発生した場合:

イベントコマンドの設定を試しているときに問題を見つけたら、 デバッグを有効にすると、何が起きているか正確に把握できるため、とても便利です。

設定例:
wrapper.event.default.command.loglevel=INFO

引用符

Wrapper 3.6.0 以上のバージョン

Wrapper ver. 3.6.0 以降、特殊文字の扱いが変更され、すべてのプラットフォーム間で一貫性が確保されるようになりました。 ほとんどの場合、Java アプリケーションが受け取ることを意図したとおりにパラメーター値を記述できます。

ただし、先頭または末尾のスペースは例外です。これらのスペースは通常、プロパティ値から削除されます。 これらのスペースを保持するには、値を引用符で囲む必要があります。 対応する「quotable」プロパティが「TRUE」に設定されている場合、これらの引用符は削除されます。 値に引用符自体を保持するには、「\」文字でエスケープします。バックスラッシュも二重にする必要があります(「\\」)。 その他の文字はエスケープできません。

引用符を削除する場合、次の変更のみが適用されます。

  • \\」は、「\」になります
  • \"」は、「"」になります
  • "」は、「」になります
設定例:
wrapper.event.jvm_prelaunch.command.argv.1=/usr/bin/mycleanup
wrapper.event.jvm_prelaunch.command.argv.2="Argument with trailing spaces  "
wrapper.event.jvm_prelaunch.command.argv.2.quotable=TRUE

Wrapper 3.6.0 未満のバージョン

Wrapper の古いバージョンでは、引用符の扱い方がプラットフォームによって異なります。 Windows では、Java プロセスはコマンドラインを使用して作成されますが、スペースを含む引数は引用符で囲む必要があります。 プロセスの起動時に、コマンドラインから引用符は自動的に削除されます。 一方、Linux では配列が使用され、引数は直接渡されます。

Windows の挙動をシミュレートし、プラットフォーム間で同じ設定を使用するには、 特定のパラメーターに引用符削除フラグを設定することができます(stripquotes プロパティ = TRUE)。 このフラグは Unix でのみ使用され、パラメーターを JVM に渡す前に引用符を削除することを指定します。

引用符を取り除くときは、以下の置き換えが行われます。 その他の文字は変更されません。

  • \\」は、「\」になります
  • \"」は、「 "」になります
  • "」は、「」になります

参照: イベントコマンド(イベントに応じたコマンド)

Java Service Wrapper では、必要なコンフィギュレーション設定を含んだ完全なパッケージを提供しており、 それを活用することで、皆様の求めるニーズに合った動作を実現させることができます。 上記の例の他に、工夫次第で様々なことが実現可能となりますので、それぞれ個別にプロパティページをご覧ください。