クイック スタート

どんなアプリケーションでも、最初に説明を読みとおすことから始めるのは一番良い方法です。 しかし、「初めての新しいことに、すぐに触れてみたい」という欲求もあるでしょうから、 まず Wrapper で何ができるのかを感覚で得るには、サラリとこのページに目を通すべきです。

実行に移す前に、最低でも『インテグレーション方法の概要』を熟読する必要があります。 そこでは4つのインテグレーション(統合化)方法をご案内しています。 まずはその概要から、一番ニーズにマッチするインテグレーション方法を1つを選んでください。 その後、各インテグレーション方法の詳細ページへと読み進めてください。

【Wrapper の強力な機能を使いこなす】 Java Service Wrapper は、多様な機能をパッケージにして提供しています。 使いこなしていく中で、いずれかの時点で、 全てのコンフィギュレーションプロパティを読むことをお勧めします。 Java Service Wrapper の強力な威力を発揮できる機能に触れることができます。

【ヘルプ】 万一、問題に遭遇したり、何か質問があるなど、ヘルプを受けたいときのおススメの方法は、 Wrapper-User メーリングリスト へメッセージを投稿することです。

Wrapper の主な機能

Java Service Wrapper とは、多くの Java アプリケーションによくある多様な問題を 解決したいという希望を叶えるために登場したアプリケーションです。 Wrapper の主な特徴と機能は以下のとおりです:

Java アプリケーションを Windows サービスとして/UNIX デーモンとして動かす

Java Service Wrapper を使うと、Java アプリケーションを Windows サービスとしてインストールができ、 同様に、Wrapper に同梱して提供しているスクリプトを使うと、UNIX システム上のデーモンプロセスとして、 Java アプリケーションを簡単にインストールすることができます。

Wrapper は、Windows の環境下で、デスクトップと相互に影響するサービスを走らせる機能、 サービスの依存性、ユーザーのログアウトを正しく取り扱います。

詳細については下記ページをご覧ください。

Java アプリケーションの信頼性

Java の拡張した利用により、皆さんのアプリケーションは、様々な重要な役割を担うサービスを提供するために書かれています。 それらのサービスは、ハイレベルの信頼性を提供できることが不可欠です。 理想の世界では、100%のバグなしのソフトウェアだけがリリースされればと願うものです。 しかしながら、これまでの過去の履歴を見ても、そうでもないようです。 ほとんど全てのアプリケーションは、ある時点では品質の問題、別の時点では動作状況の問題など悩まされ、 アプリケーションが、ハングアップしたり、クラッシュしたり、メモリ不足になったり、あらゆる問題を抱えています。 可能な限り、重要なサービスを停止させることなく、問題は素早く改善されるべきでしょう。 しかしながら、問題の解決に驚くほど高額なコストがかかったり、 短時間での問題解決は不可能であったりすることも多々あります。

Wrapper は、JVM プロセスをモニタリング(監視)し、 もし JVM がクラッシュしたり、ハングアップした時には、自動的に再起動させます。 この処理は、Wrapper が「問題がある」と判断した場合に実行され、所要時間はほんの数秒です。 さらに、JVM のコンソール出力をモニタリング(監視)して、 ある一連の文字列に反応して、JVM を再起動したりシャットダウンするように、Wrapper の設定を変更することもできます。

Java Service Wrapper が高機能と言えども、これだけで全ての問題を取り除くことはできないでしょうが、 問題が発生した場合でも、あなたがオフィスに入ってログをチェックするまで、少なくとも、 Wrapper が代わりに、物事を動かし走らせてくれることを知っていれば、十分に安眠を得られることでしょう。 緊急の呼び出し電話にサヨナラを言いましょう!

難しいスクリプト設定が不要、すぐに使える簡単な手法を標準採用!

一度コンフィギュレーションを設定すれば、どこでも動く。 Java は『Write Once, Run Everywhere(一度プログラムを書けば、どこでも実行できる)』プログラミング言語として、 市場に出回っています。 アプリケーションの多方面から見ると、これは確かに真実なのですが、 ディべロッパー(開発者)は、しばしば苦悩に立たされ、クラスパスの構築を駆使したり、 アプリケーションを起動するのに必要なシステム情報を収集したり、 プラットフォーム特有に合わせた複雑なスクリプトを書かなければならない現実があります。

Java Service Wrapper は、幅広い多種多様のプラットフォーム用のスクリプトをパッケージにして提供することで、 ディべロッパー(開発者)を苦悩から解き放つお手伝いをします。 そのスクリプトを使えば、ほぼどんな Java アプリケーションでも Wrapper でコントロールし、起動させることができます。

Wrapper は、全ての JVM コンフィギュレーションを プラットフォームに依存しない独立型のコンフィギュレーションファイル 「wrapper.conf」(設定ファイル)へ移管します。 詳しくは、『インテグレーション方法の概要』にある事例をご覧ください。

要求に応じる「オンデマンド再起動」

Java Service Wrapper は、Java アプリケーションへ JVM を 再起動するようにリクエストを出す手法を提供しています。 これは多くのケースで便利で、 アプリケーションがコンフィギュレーションファイル(設定ファイル)を変更した後、再起動が必要かもしれません、 あるいは、メモリやリソース漏れなどの類の問題を回避するために、単にアプリケーションの再起動が必要かもしれません。

JVM 再起動には、 [WrapperManager.restart()] を呼び出すことで、JVM 内部から引き起こすことができます。 さらに詳しくは、『JavaDocs』セクションの [WrapperManager.restart()]をご覧ください。

再起動のキッカケを引き起こすための、もっと受動的な手法もいくつかあります。 Wrapper は、あるテキストを検知するたびに、いつでもシャットダウンや再起動を引き起こす コンソール出力のモニタリング(監視)機能を備えています。

他の JVM インスタンスの再起動、あるいは、 通常は JVM によって戻される終了コードに依存するシャットダウン、 どちらでも Wrapper を設定することができます。

柔軟なコンフィギュレーション

Java Service Wrapper は、 JVM 設定に必要な多様なコンフィギュレーションプロパティを提供しており、 可能な限りコマンドラインから設定することができます。 また、Wrapper コンフィギュレーションファイル 「wrapper.conf」(設定ファイル)は、 さらに、Wrapper をどのようにサービスとしてインストールするか、あるいは、 状況を把握するためにログ化してみる、 などの物事の設定を可能にする多くのプロパティを提供しています。

さらに詳しくは、『コンフィギュレーションプロパティ』をご覧いただき、 どんな事が可能なのか確認してください。 なお、コンフィギュレーションファイル 「wrapper.conf」 (設定ファイル)の操作に飛び込む前に、 必ず、『インテグレーション方法の概要』を熟読してください。

アプリケーションインストール作業の手間を簡素化

Wrapper の標準スクリプトやコンフィギュレーションファイル 「wrapper.conf」 (設定ファイル)内で 相対パスを利用することで、複雑なインストール作業を必要とせず、 ユーザーが選択したディレクトリーの中にアーカイブファイルを単純に解凍すればいい程度の作業で、 アプリケーションを配置することが大抵可能です。

ログ化

Java Service Wrapper は、いかなる外部の最高のログ化ツールの代替えになることはありません、 あるいは、そうするべきでないでしょう。 しかしながら、JVM コンソールへ stdout(データ標準出力)と stderr(標準エラー出力)の取り扱いを設定できる 多くのプロパティを提供しています。 この出力は、コンソール、ファイル、イベントログ(Windows)、 「syslog」(UNIX)などの、いかなる組み合わせでもログ化することができます。

JVM コンソールへの出力をログ化することは、 アプリケーションの問題を追究するには極めて重要であるはず。 Windows サービスとして、あるいは、UNIX デーモンとして、 JVM が動作しているとき、 通常、Wrapper が動作していない状態では、そのコンソール出力は失われるでしょう。 Wrapper は確実に全てのコンソール出力をログ化していきます。

Java ベースのログ化ツールは、JVM 内部から生成された出力をログ化するだけの機能です。 もし、JVM がクラッシュしたり、スレッドダンプのようなローレベルのメッセージを表示出力したりする場合、 通常はログ化できる道はありません。 Wrapper は、JVM プロセスからの全てのコンソール出力をログ化するため、JVM がクラッシュした場合でも JVM を再起動してログ記録を残していくことができます。

さらに詳しくは、『ログ化のコンフィギュレーション』をご覧ください。

サポートされている JVM(Java バーチャルマシン)

Java Service Wrapper は、Oracle、OpenJDK、IBM、Blackdown、BEA WebLogic JRockit などの JVM と共に 何も問題なく、動作することが報告されています。 もし他の JVM をテストする機会があれば、その動作を確認して、その結果を是非、当社までお知らせください。

Java Service Wrapper バージョン 3.4.x 以上では、Java バージョン 1.4.x 以上をサポートしています。 (Wrapper バージョン 3.4.x 以上では、もはや Java バージョン 1.2.x をサポートしていません。)

注意

Java 1.2.x バージョン上で、Wrapper の利用は可能ですが、 シャットダウンフック非対応のため、一部の機能が無効になります。 シャットダウンフックは、Java 1.3.0 リリースで実装されるようになりました。

注意

スレッドのデッドロックチェックは、Java バージョン 1.5 以上の利用していることが必要です。 それより古い JVM ではチェックを無視し、チェック機能は動作しません。

Java Service Wrapper は Java 21 との互換性テスト済みで、適用しています。

サポートされているプラットフォーム

Java Service Wrapper のバイナリ配布は下記のプラットフォームリスト向けに提供されており、 ダウンロードページで入手可能です。

動作が確認されている OS とバージョンだけをリストアップしてあります。 もし、他の OS や他のバージョン上で動かして「成功した/失敗した」の結果がありましたら、 ぜひお知らせください。リストに追加します。

UNIX 互換のプラットフォーム上のソースから、Wrapper をビルドすることは、極めて簡単なはずです。 お知らせいただければ、このリストを更新していきますので、ぜひご協力ください。

Wrapper バージョン別:

プラットフォームの Wrapper 対応状況を記録していきます。 新しいバージョンの各リリースごとに、Wrapper がサポートするプラットフォームリストに新しい情報を追加していきます。 サポートされたプラットフォーム、制限事項などのリスト を参照ください。