Serviceタグは、server.xmlファイルのトップレベル要素です。
serverタグ配下に1つ以上のConnectorタグで宣言したHttp通信などの定義及び単一のEngine要素を1つのグループとして管理するタグです。
Serviceタグを複数定義する場合には、同列の階層として定義する事やネストさせてサブグループ化もできます。
表記説明:必須可否欄 〇:必須 -:任意
属性 | 必須可否 | 未指定時の デフォルト値 |
初期設定値 | 説明 |
---|---|---|---|---|
className | - | org.apache.catalina.core. StandardService |
未指定 | 使用する実装のJavaクラス名。このクラスは、org.apache.catalina.Serviceインタフェースを実装する必要があります。 クラス名が指定されていない場合は、標準実装(StandardService)が使用されます。 |
name | 〇 | ※.NULL | Catalina | このサービスの表示名。標準のCatalinaコンポーネントを使用する場合、ログメッセージに含まれます。 特定のサーバーに関連付けられている各サービスの名前は一意でなければなりません。 |
Serviceタグは複数定義したり、階層化して複数のバーチャルホスト、それに対するWebアプリケーションをグループ化できます。
例えばIT生涯学習Techがgakumon.techとgakumon.lifeという2つのサービスを1つのTomcatで管理する場合には、以下の図のようになります。
2017年時点で多くのserver.xmlの設定では、デフォルトの"Catalina"サービス1つだけ定義されるケースが多いです。
背景には、サーバー筐体の安価化及び高性能化やサーバーの仮想技術の進化によりTomcatサーバーを多く立てられるようになったからです。